mat-spinner circle,mat-progress-spinner circle{stroke:var(--primary-500)!important}.dark-theme mat-spinner circle,.dark-theme mat-progress-spinner circle{stroke:var(--primary-400)!important}:root{--primary-50: #e3f2fd;--primary-100: #bbdefb;--primary-200: #90caf9;--primary-300: #64b5f6;--primary-400: #42a5f5;--primary-500: #1976d2;--primary-600: #1565c0;--primary-700: #0d47a1;--primary-800: #0a3d91;--primary-900: #072f6e;--secondary-50: #e8f5e9;--secondary-100: #c8e6c9;--secondary-200: #a5d6a7;--secondary-300: #81c784;--secondary-400: #66bb6a;--secondary-500: #43a047;--secondary-600: #388e3c;--secondary-700: #2e7d32;--secondary-800: #256c28;--secondary-900: #1b5e20;--success-color: #4caf50;--error-color: #f44336;--warning-color: #ff9800;--info-color: #2196f3;--background-color: #e8eaf6;--surface-color: #ffffff;--surface-hover: #f5f5f5;--surface-disabled: #e0e0e0;--surface-secondary: #f8f9fa;--text-primary: rgba(0, 0, 0, .87);--text-secondary: rgba(0, 0, 0, .6);--text-disabled: rgba(0, 0, 0, .38);--text-hint: rgba(0, 0, 0, .38);--border-color: rgba(0, 0, 0, .12);--divider-color: rgba(0, 0, 0, .12);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .18);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--font-family: "Roboto", "Helvetica Neue", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 700;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out;--breakpoint-xs: 360px;--breakpoint-sm: 600px;--breakpoint-md: 960px;--breakpoint-lg: 1280px;--breakpoint-xl: 1920px;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070}.dark-theme{--background-color: #0a0e27;--surface-color: #1e1e1e;--surface-hover: #2a2a2a;--surface-disabled: #3a3a3a;--surface-secondary: #151515;--text-primary: rgba(255, 255, 255, .87);--text-secondary: rgba(255, 255, 255, .6);--text-disabled: rgba(255, 255, 255, .38);--text-hint: rgba(255, 255, 255, .38);--border-color: rgba(255, 255, 255, .12);--divider-color: rgba(255, 255, 255, .12);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .5);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .6)}html,body{height:100%;margin:0;font-family:var(--font-family);background-color:var(--background-color);color:var(--text-primary);transition:background-color var(--transition-normal),color var(--transition-normal)}body{margin:0;font-family:var(--font-family)}.p-xs{padding:var(--spacing-xs)!important}.p-sm{padding:var(--spacing-sm)!important}.p-md{padding:var(--spacing-md)!important}.p-lg{padding:var(--spacing-lg)!important}.p-xl{padding:var(--spacing-xl)!important}.m-xs{margin:var(--spacing-xs)!important}.m-sm{margin:var(--spacing-sm)!important}.m-md{margin:var(--spacing-md)!important}.m-lg{margin:var(--spacing-lg)!important}.m-xl{margin:var(--spacing-xl)!important}.text-primary{color:var(--text-primary)!important}.text-secondary{color:var(--text-secondary)!important}.text-disabled{color:var(--text-disabled)!important}.text-xs{font-size:var(--font-size-xs)!important}.text-sm{font-size:var(--font-size-sm)!important}.text-md{font-size:var(--font-size-md)!important}.text-lg{font-size:var(--font-size-lg)!important}.text-xl{font-size:var(--font-size-xl)!important}.font-light{font-weight:var(--font-weight-light)!important}.font-normal{font-weight:var(--font-weight-normal)!important}.font-medium{font-weight:var(--font-weight-medium)!important}.font-bold{font-weight:var(--font-weight-bold)!important}.bg-primary{background-color:var(--primary-500)!important}.bg-secondary{background-color:var(--secondary-500)!important}.bg-surface{background-color:var(--surface-color)!important}.rounded-sm{border-radius:var(--radius-sm)!important}.rounded-md{border-radius:var(--radius-md)!important}.rounded-lg{border-radius:var(--radius-lg)!important}.rounded-full{border-radius:var(--radius-full)!important}.shadow-sm{box-shadow:var(--shadow-sm)!important}.shadow-md{box-shadow:var(--shadow-md)!important}.shadow-lg{box-shadow:var(--shadow-lg)!important}.shadow-xl{box-shadow:var(--shadow-xl)!important}.custom-snackbar-position{margin-top:80px!important}@media(max-width:768px){.custom-snackbar-position{margin-top:70px!important}}.snackbar-success{background-color:var(--success-color)!important;color:#fff!important}.snackbar-success .mat-mdc-button{color:#fff!important}.snackbar-error{background-color:var(--error-color)!important;color:#fff!important}.snackbar-error .mat-mdc-button{color:#fff!important}.snackbar-warning{background-color:var(--warning-color)!important;color:#fff!important}.snackbar-warning .mat-mdc-button{color:#fff!important}.snackbar-info{background-color:var(--info-color)!important;color:#fff!important}.snackbar-info .mat-mdc-button{color:#fff!important}.mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-text-field-wrapper{border-radius:var(--radius-lg)!important}.mat-mdc-form-field.mat-form-field-appearance-outline .mat-mdc-input-element{padding-left:var(--spacing-sm)!important;padding-right:var(--spacing-sm)!important}.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-mdc-text-field-wrapper{background-color:var(--surface-hover)!important}.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline{border:2px dashed var(--border-color)!important;border-radius:var(--radius-lg)!important}.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline .mdc-notched-outline__trailing{border:none!important}.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-mdc-input-element{color:var(--text-secondary)!important;cursor:not-allowed!important}.mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-mdc-floating-label{color:var(--text-secondary)!important}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled) .mdc-notched-outline .mdc-notched-outline__trailing{border-width:2px!important;border-color:var(--border-color)!important;transition:all var(--transition-normal)!important}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled):hover:not(.mat-focused):not(.mat-form-field-invalid) .mdc-notched-outline{filter:drop-shadow(0 0 6px rgba(66,165,245,.4))}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled):hover:not(.mat-focused):not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled):hover:not(.mat-focused):not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled):hover:not(.mat-focused):not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--primary-400)!important}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-focused:not(.mat-form-field-invalid) .mdc-notched-outline{filter:drop-shadow(0 0 10px rgba(25,118,210,.6))}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-focused:not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-focused:not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-focused:not(.mat-form-field-invalid) .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--primary-500)!important;border-width:2px!important}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-form-field-invalid .mdc-notched-outline{filter:drop-shadow(0 0 6px rgba(244,67,54,.4))}.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-form-field-invalid .mdc-notched-outline .mdc-notched-outline__leading,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-form-field-invalid .mdc-notched-outline .mdc-notched-outline__notch,.mat-mdc-form-field.mat-form-field-appearance-outline:not(.mat-form-field-disabled).mat-form-field-invalid .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--error-color)!important}.btn-success{background-color:var(--success-color)!important;color:#fff!important}.btn-success:hover:not([disabled]){background-color:var(--secondary-600)!important;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-success:active:not([disabled]){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-danger{background-color:var(--error-color)!important;color:#fff!important}.btn-danger:hover:not([disabled]){background-color:#d32f2f!important;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-danger:active:not([disabled]){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-info{background-color:var(--info-color)!important;color:#fff!important}.btn-info:hover:not([disabled]){background-color:#1976d2!important;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-info:active:not([disabled]){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-warning{background-color:var(--warning-color)!important;color:#fff!important}.btn-warning:hover:not([disabled]){background-color:#f57c00!important;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-warning:active:not([disabled]){transform:translateY(0);box-shadow:var(--shadow-sm)}.mat-mdc-button,.mat-mdc-raised-button,.mat-mdc-unelevated-button,.mat-mdc-outlined-button{border-radius:var(--radius-md)!important;font-weight:var(--font-weight-medium)!important;transition:all var(--transition-normal)!important;text-transform:none!important;letter-spacing:.5px}.mat-mdc-button .mat-icon,.mat-mdc-raised-button .mat-icon,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-outlined-button .mat-icon{transition:transform var(--transition-fast)}.mat-mdc-button:hover:not([disabled]) .mat-icon,.mat-mdc-raised-button:hover:not([disabled]) .mat-icon,.mat-mdc-unelevated-button:hover:not([disabled]) .mat-icon,.mat-mdc-outlined-button:hover:not([disabled]) .mat-icon{transform:scale(1.1)}.mat-mdc-select-panel{background-color:var(--surface-color)!important;box-shadow:var(--shadow-xl)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;max-height:400px!important}.mat-mdc-select-panel .mat-mdc-option{background-color:transparent!important;color:var(--text-primary)!important;padding:var(--spacing-md) var(--spacing-lg)!important;min-height:48px!important;transition:background-color var(--transition-fast)!important}.mat-mdc-select-panel .mat-mdc-option:hover{background-color:var(--surface-hover)!important}.mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-active,.mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected{background-color:var(--primary-50)!important}.dark-theme .mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-active,.dark-theme .mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected{background-color:#1976d226!important}.mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-active:hover,.mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected:hover{background-color:var(--primary-100)!important}.dark-theme .mat-mdc-select-panel .mat-mdc-option.mat-mdc-option-active:hover,.dark-theme .mat-mdc-select-panel .mat-mdc-option.mdc-list-item--selected:hover{background-color:#1976d240!important}.mat-datepicker-content{background-color:var(--surface-color)!important;box-shadow:var(--shadow-xl)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important}.mat-datepicker-content .mat-calendar{background-color:var(--surface-color)!important}.mat-datepicker-content .mat-calendar .mat-calendar-header{background-color:var(--surface-color)!important;padding:var(--spacing-xs) var(--spacing-sm)!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-label,.mat-datepicker-content .mat-calendar .mat-calendar-period-button{color:var(--text-primary)!important}.mat-datepicker-content .mat-calendar .mat-calendar-table-header th{color:var(--text-secondary)!important;font-weight:var(--font-weight-medium)!important;padding-bottom:var(--spacing-xs)!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-cell-content{color:var(--text-primary)!important;border-radius:var(--radius-sm)!important;transition:all var(--transition-fast)!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover .mat-calendar-body-cell-content{background-color:var(--surface-hover)!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-selected{background-color:var(--primary-500)!important;color:#fff!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:var(--primary-500)!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-disabled{opacity:.4!important}.mat-datepicker-content .mat-calendar .mat-calendar-body-disabled .mat-calendar-body-cell-content{color:var(--text-disabled)!important;text-decoration:line-through!important;background-color:transparent!important;cursor:not-allowed!important}.mat-mdc-menu-panel{background-color:var(--surface-color)!important;box-shadow:var(--shadow-xl)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important;min-width:200px!important}.mat-mdc-menu-panel .mat-mdc-menu-content{background-color:var(--surface-color)!important;padding:var(--spacing-xs) 0!important}.mat-mdc-menu-panel .mat-mdc-menu-item{color:var(--text-primary)!important;min-height:48px!important;padding:0 var(--spacing-lg)!important;transition:background-color var(--transition-fast)!important}.mat-mdc-menu-panel .mat-mdc-menu-item .mat-icon{color:var(--text-secondary)!important;margin-right:var(--spacing-sm)!important;transition:color var(--transition-fast)!important}.mat-mdc-menu-panel .mat-mdc-menu-item:hover{background-color:var(--surface-hover)!important}.mat-mdc-menu-panel .mat-mdc-menu-item:hover .mat-icon{color:var(--primary-500)!important}.mat-mdc-menu-panel .mat-mdc-menu-item:active{background-color:var(--primary-50)!important}.dark-theme .mat-mdc-menu-panel .mat-mdc-menu-item:active{background-color:#1976d226!important}.mat-mdc-autocomplete-panel{background-color:var(--surface-color)!important;box-shadow:var(--shadow-xl)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-md)!important}.mat-mdc-autocomplete-panel .mat-mdc-option{background-color:transparent!important;color:var(--text-primary)!important;padding:var(--spacing-md) var(--spacing-lg)!important;transition:background-color var(--transition-fast)!important}.mat-mdc-autocomplete-panel .mat-mdc-option:hover{background-color:var(--surface-hover)!important}.mat-mdc-autocomplete-panel .mat-mdc-option.mat-mdc-option-active{background-color:var(--primary-50)!important}.dark-theme .mat-mdc-autocomplete-panel .mat-mdc-option.mat-mdc-option-active{background-color:#1976d226!important}.mat-mdc-dialog-container{background-color:var(--surface-color)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-xl)!important;border-radius:var(--radius-lg)!important}.cdk-overlay-backdrop{background-color:#00000052!important}.dark-theme .cdk-overlay-backdrop{background-color:#0009!important}
