@font-face{font-family:cachetpro;src:url(/assets/fonts/cachetpro/cachetproregular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:cachetpro;src:url(/assets/fonts/cachetpro/cachetprobook.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:cachetpro;src:url(/assets/fonts/cachetpro/cachetpromedium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:cachetpro;src:url(/assets/fonts/cachetpro/cachetprobold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}html{--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--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(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--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: #2d3038;--mat-sys-neutral10: #1a1b1f;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-body-large-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-body-medium-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-body-small-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-display-large-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-display-medium-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-display-small-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-headline-large-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-headline-medium-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-headline-small-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-label-large-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-label-medium-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-label-small-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-title-large-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-title-medium-font: cachetpro, Roboto, Arial, sans-serif;--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 cachetpro, Roboto, Arial, sans-serif;--mat-sys-title-small-font: cachetpro, Roboto, Arial, sans-serif;--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}:root{color-scheme:light;--brand-navy-fixed: #0b3356;--brand-navy-fixed-strong: #082540;--brand-coral-fixed: #de473c;--brand-navy: #0b3356;--brand-navy-strong: #082540;--brand-navy-soft: #e5ecf3;--brand-coral: #de473c;--brand-coral-strong: #c23a30;--brand-coral-soft: #fbe6e3;--app-bg: #f4f6fa;--surface: #ffffff;--surface-muted: #eef2f7;--sidebar-bg: #ffffff;--border-subtle: #e1e7ee;--text-primary: #172436;--text-secondary: #465468;--text-muted: #77869a;--brand-bg: var(--brand-navy);--brand-fg: #ffffff;--nav-active-bg: rgba(11, 51, 86, .06);--success-bg: #dcefe5;--success-fg: #14532d;--warning-bg: #fff2cc;--warning-fg: #7a4a00;--danger-bg: #fde2e2;--danger-fg: #8f1d1d;--info-bg: #dceaf7;--info-fg: #164e72;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .04);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 8px 24px rgba(16, 24, 40, .08);--shadow-lg: 0 16px 40px rgba(11, 51, 86, .14);--mat-sys-primary: var(--brand-navy);--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: var(--brand-navy-soft);--mat-sys-on-primary-container: var(--brand-navy-strong);--mat-sys-tertiary: var(--brand-coral);--mat-sys-on-tertiary: #ffffff;--mat-sys-tertiary-container: var(--brand-coral-soft);--mat-sys-on-tertiary-container: var(--brand-coral-strong)}:root[data-theme=dark]{color-scheme:dark;--brand-navy: #a9c6e2;--brand-navy-strong: #d9edf7;--brand-navy-soft: #1c3a52;--brand-coral: #ff6b5e;--brand-coral-strong: #ff8a80;--brand-coral-soft: #3a211f;--app-bg: #10151b;--surface: #181e26;--surface-muted: #222a34;--sidebar-bg: #141a21;--border-subtle: #2b3542;--text-primary: #eef3f8;--text-secondary: #c6d0dc;--text-muted: #8b98a8;--brand-bg: #d9edf7;--brand-fg: #0f2434;--nav-active-bg: #1e2833;--success-bg: #173b29;--success-fg: #9ce2b6;--warning-bg: #453516;--warning-fg: #f6d784;--danger-bg: #4b2024;--danger-fg: #ffb6b6;--info-bg: #18354a;--info-fg: #acd4f2;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .24);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .32), 0 1px 2px rgba(0, 0, 0, .24);--shadow-md: 0 8px 24px rgba(0, 0, 0, .36);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .44);--mat-sys-primary: #a9c6e2;--mat-sys-on-primary: #0b2338;--mat-sys-primary-container: #1c3a52;--mat-sys-on-primary-container: #d9edf7;--mat-sys-tertiary: #ff8a80;--mat-sys-on-tertiary: #3a0f0a;--mat-sys-tertiary-container: #3a211f;--mat-sys-on-tertiary-container: #ffdad4}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--app-bg);color:var(--text-primary);font-family:cachetpro,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}::selection{background:var(--brand-coral-soft);color:var(--brand-navy-strong)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-subtle);border:2px solid transparent;border-radius:999px;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-muted);background-clip:padding-box}.page{display:grid;gap:20px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-header-title{display:flex;align-items:center;gap:14px}.page-title{margin:0;font-size:26px;font-weight:700;line-height:1.15;letter-spacing:-.01em}.page-subtitle{margin:6px 0 0;color:var(--text-muted)}.panel{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}.panel-header-title{display:flex;align-items:center;gap:10px}.panel-title{margin:0;font-size:16px;font-weight:700}.table-wrap{overflow:auto}table{width:100%}.mat-mdc-table{background:transparent}.mat-mdc-header-row{background:var(--surface-muted)}.mat-mdc-header-cell{color:var(--text-muted);font-weight:700;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase}.mat-mdc-row:hover{background:var(--surface-muted)}.muted{color:var(--text-muted)}.icon-badge{display:inline-grid;flex:none;place-items:center;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--brand-navy-soft);color:var(--brand-navy)}.icon-badge mat-icon{font-size:22px;width:22px;height:22px}.icon-badge.sm{width:32px;height:32px;border-radius:8px}.icon-badge.sm mat-icon{font-size:18px;width:18px;height:18px}.icon-badge.lg{width:56px;height:56px;border-radius:var(--radius-md)}.icon-badge.lg mat-icon{font-size:28px;width:28px;height:28px}.icon-badge.coral{background:var(--brand-coral-soft);color:var(--brand-coral-strong)}.icon-badge.success{background:var(--success-bg);color:var(--success-fg)}.icon-badge.warning{background:var(--warning-bg);color:var(--warning-fg)}.icon-badge.danger{background:var(--danger-bg);color:var(--danger-fg)}.icon-badge.info{background:var(--info-bg);color:var(--info-fg)}.empty-state,.error-state{display:grid;justify-items:center;gap:10px;min-height:200px;padding:32px;color:var(--text-muted);text-align:center;align-content:center}.empty-state mat-icon,.error-state mat-icon{font-size:32px;width:32px;height:32px;color:var(--text-muted)}.error-state{color:var(--danger-fg)}.error-state mat-icon{color:var(--danger-fg)}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.filters mat-form-field{width:240px}.skeleton{min-height:18px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-muted),var(--border-subtle),var(--surface-muted));background-size:200% 100%;animation:skeleton 1.3s infinite linear}@keyframes skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.spin{animation:spin 1.1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
