html{height:100%;--mat-sys-background: light-dark(#fff8f8, #171213);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#faeeef, #352f30);--mat-sys-inverse-primary: light-dark(#ffb1c5, #ba005c);--mat-sys-inverse-surface: light-dark(#352f30, #ece0e1);--mat-sys-on-background: light-dark(#201a1b, #ece0e1);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #65002f);--mat-sys-on-primary-container: light-dark(#8f0045, #ffd9e1);--mat-sys-on-primary-fixed: light-dark(#3f001b, #3f001b);--mat-sys-on-primary-fixed-variant: light-dark(#8f0045, #8f0045);--mat-sys-on-secondary: light-dark(#ffffff, #422930);--mat-sys-on-secondary-container: light-dark(#5b3f46, #ffd9e1);--mat-sys-on-secondary-fixed: light-dark(#2b151b, #2b151b);--mat-sys-on-secondary-fixed-variant: light-dark(#5b3f46, #5b3f46);--mat-sys-on-surface: light-dark(#201a1b, #ece0e1);--mat-sys-on-surface-variant: light-dark(#514346, #f3dde1);--mat-sys-on-tertiary: light-dark(#ffffff, #690100);--mat-sys-on-tertiary-container: light-dark(#930100, #ffdad4);--mat-sys-on-tertiary-fixed: light-dark(#410000, #410000);--mat-sys-on-tertiary-fixed-variant: light-dark(#930100, #930100);--mat-sys-outline: light-dark(#847376, #9e8c90);--mat-sys-outline-variant: light-dark(#d6c2c5, #514346);--mat-sys-primary: light-dark(#ba005c, #ffb1c5);--mat-sys-primary-container: light-dark(#ffd9e1, #8f0045);--mat-sys-primary-fixed: light-dark(#ffd9e1, #ffd9e1);--mat-sys-primary-fixed-dim: light-dark(#ffb1c5, #ffb1c5);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#74565d, #e3bdc5);--mat-sys-secondary-container: light-dark(#ffd9e1, #5b3f46);--mat-sys-secondary-fixed: light-dark(#ffd9e1, #ffd9e1);--mat-sys-secondary-fixed-dim: light-dark(#e3bdc5, #e3bdc5);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fff8f8, #171213);--mat-sys-surface-bright: light-dark(#fff8f8, #3e3738);--mat-sys-surface-container: light-dark(#f7ebec, #241e1f);--mat-sys-surface-container-high: light-dark(#f1e5e6, #2f2829);--mat-sys-surface-container-highest: light-dark(#ece0e1, #3a3334);--mat-sys-surface-container-low: light-dark(#fdf1f2, #201a1b);--mat-sys-surface-container-lowest: light-dark(#ffffff, #120d0e);--mat-sys-surface-dim: light-dark(#e3d7d8, #171213);--mat-sys-surface-tint: light-dark(#ba005c, #ffb1c5);--mat-sys-surface-variant: light-dark(#f3dde1, #514346);--mat-sys-tertiary: light-dark(#c00100, #ffb4a8);--mat-sys-tertiary-container: light-dark(#ffdad4, #930100);--mat-sys-tertiary-fixed: light-dark(#ffdad4, #ffdad4);--mat-sys-tertiary-fixed-dim: light-dark(#ffb4a8, #ffb4a8);--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{color-scheme:light;background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface);font:var(--mat-sys-body-medium);margin:0;height:100%}:root{--safe-top: env(safe-area-inset-top, 0);--safe-bottom: env(safe-area-inset-bottom, 0);--safe-left: env(safe-area-inset-left, 0);--safe-right: env(safe-area-inset-right, 0);--primary-color: #2196F3;--primary-dark: #1565C0;--primary-light: #BBDEFB;--secondary-color: #FF9800;--secondary-dark: #E65100;--secondary-light: #FFE0B2;--success-color: #4CAF50;--danger-color: #F44336;--warning-color: #FFC107;--info-color: #00BCD4;--bg-primary: #F5F5F5;--bg-secondary: #FFFFFF;--bg-tertiary: #FAFAFA;--text-primary: #212121;--text-secondary: #666666;--text-light: #999999;--border-color: #E0E0E0;--shadow-light: rgba(0, 0, 0, .08);--shadow-medium: rgba(0, 0, 0, .12);--shadow-dark: rgba(0, 0, 0, .16);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-xxl: 32px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--border-radius-full: 50%;--font-xs: 12px;--font-sm: 14px;--font-base: 16px;--font-lg: 18px;--font-xl: 20px;--font-xxl: 24px;--font-xxxl: 32px;--font-xxxxl: 48px;--shadow-sm: 0 1px 3px var(--shadow-light);--shadow-md: 0 2px 8px var(--shadow-medium);--shadow-lg: 0 4px 12px var(--shadow-dark);--shadow-xl: 0 8px 24px var(--shadow-dark);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out;--breakpoint-xs: 320px;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-xxl: 1400px;--is-mobile: 1;--is-desktop: 0}@media(min-width:768px){:root{--is-mobile: 0;--is-desktop: 1}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-base);line-height:1.5;overflow-x:hidden;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--border-radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}input,select,textarea,button{font-family:inherit;font-size:inherit}input,select,textarea{padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-md);transition:all var(--transition-fast);background:var(--bg-secondary);color:var(--text-primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2196f31a}input::placeholder{color:var(--text-light)}button{cursor:pointer;border:none;font-weight:500;transition:all var(--transition-fast);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}button:disabled{opacity:.6;cursor:not-allowed}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}.btn{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);font-weight:500;cursor:pointer;border:none;transition:all var(--transition-fast);font-size:var(--font-sm)}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{background:var(--secondary-color);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--secondary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){background:#388e3c;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover:not(:disabled){background:#c62828;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-warning{background:var(--warning-color);color:var(--text-primary)}.btn-warning:hover:not(:disabled){background:#ffa000;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-info{background:var(--info-color);color:#fff}.btn-info:hover:not(:disabled){background:#0097a7;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover:not(:disabled){background:var(--primary-color);color:#fff}.btn-small{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-xs)}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--bg-secondary);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{font-size:var(--font-lg);font-weight:600;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-color);color:var(--text-primary)}.card-body{font-size:var(--font-sm);color:var(--text-secondary)}.card-footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color);display:flex;gap:var(--spacing-md);justify-content:flex-end}.table{width:100%;border-collapse:collapse;font-size:var(--font-sm);background:var(--bg-secondary)}.table thead{background:var(--text-primary);color:#fff;position:sticky;top:0;z-index:10}.table th{padding:var(--spacing-md);text-align:left;font-weight:600;border-bottom:2px solid var(--border-color)}.table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-secondary)}.table tbody tr{transition:background-color var(--transition-fast)}.table tbody tr:hover{background:var(--bg-tertiary)}.table tbody tr:nth-child(2n){background:#00000005}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-full);font-size:var(--font-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:#2196f326;color:var(--primary-dark)}.badge-success{background:#4caf5026;color:#2e7d32}.badge-danger{background:#f4433626;color:#c62828}.badge-warning{background:#ffc10726;color:#f57c00}.badge-info{background:#00bcd426;color:#0097a7}.badge-secondary{background:#ff980026;color:var(--secondary-dark)}.form-group{margin-bottom:var(--spacing-lg);display:flex;flex-direction:column}.form-group label{margin-bottom:var(--spacing-sm);font-weight:500;color:var(--text-primary);font-size:var(--font-sm)}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-md);font-size:var(--font-sm);background:var(--bg-secondary);color:var(--text-primary);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2196f31a}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media(max-width:576px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-center{display:flex;justify-content:center;align-items:center}.flex-col{flex-direction:column}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.p-xxl{padding:var(--spacing-xxl)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.m-xxl{margin:var(--spacing-xxl)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-light{color:var(--text-light)}.text-success{color:var(--success-color)}.text-danger{color:var(--danger-color)}.text-warning{color:var(--warning-color)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-normal{font-weight:400}.text-sm{font-size:var(--font-sm)}.text-base{font-size:var(--font-base)}.text-lg{font-size:var(--font-lg)}.text-xl{font-size:var(--font-xl)}.hidden{display:none!important}.visible{display:block!important}@media(max-width:576px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media(min-width:768px){.show-mobile,.hide-desktop{display:none!important}}.loader{border:4px solid var(--shadow-light);border-top:4px solid var(--primary-color);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loader-box{background:var(--bg-secondary);padding:var(--spacing-xxl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);text-align:center}@media(max-width:576px){:root{--spacing-lg: 12px;--spacing-xl: 16px;--font-base: 14px}body{font-size:var(--font-sm)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}button{width:100%}}@supports (padding: max(0px)){body{padding-top:max(var(--safe-top),var(--spacing-md));padding-bottom:max(var(--safe-bottom),var(--spacing-md));padding-left:max(var(--safe-left),var(--spacing-md));padding-right:max(var(--safe-right),var(--spacing-md))}}
