@charset "UTF-8";html{color-scheme:light;--mat-sys-background: light-dark(#fff8f5, #181210);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#fbeee8, #362f2b);--mat-sys-inverse-primary: light-dark(#ffb787, #964900);--mat-sys-inverse-surface: light-dark(#362f2b, #ece0da);--mat-sys-on-background: light-dark(#201a17, #ece0da);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #502400);--mat-sys-on-primary-container: light-dark(#723600, #ffdcc7);--mat-sys-on-primary-fixed: light-dark(#311300, #311300);--mat-sys-on-primary-fixed-variant: light-dark(#723600, #723600);--mat-sys-on-secondary: light-dark(#ffffff, #422b1b);--mat-sys-on-secondary-container: light-dark(#5b4130, #ffdcc7);--mat-sys-on-secondary-fixed: light-dark(#2b1708, #2b1708);--mat-sys-on-secondary-fixed-variant: light-dark(#5b4130, #5b4130);--mat-sys-on-surface: light-dark(#201a17, #ece0da);--mat-sys-on-surface-variant: light-dark(#52443c, #f4ded3);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#84746a, #9f8d83);--mat-sys-outline-variant: light-dark(#d7c3b8, #52443c);--mat-sys-primary: light-dark(#964900, #ffb787);--mat-sys-primary-container: light-dark(#ffdcc7, #723600);--mat-sys-primary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-primary-fixed-dim: light-dark(#ffb787, #ffb787);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#755846, #e5bfa8);--mat-sys-secondary-container: light-dark(#ffdcc7, #5b4130);--mat-sys-secondary-fixed: light-dark(#ffdcc7, #ffdcc7);--mat-sys-secondary-fixed-dim: light-dark(#e5bfa8, #e5bfa8);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fff8f5, #181210);--mat-sys-surface-bright: light-dark(#fff8f5, #3f3834);--mat-sys-surface-container: light-dark(#f8ebe6, #241e1b);--mat-sys-surface-container-high: light-dark(#f2e6e1, #2f2926);--mat-sys-surface-container-highest: light-dark(#ece0da, #3a3330);--mat-sys-surface-container-low: light-dark(#fef1ec, #201a17);--mat-sys-surface-container-lowest: light-dark(#ffffff, #120d0b);--mat-sys-surface-dim: light-dark(#e3d8d3, #181210);--mat-sys-surface-tint: light-dark(#964900, #ffb787);--mat-sys-surface-variant: light-dark(#f4ded3, #52443c);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #3a2e26;--mat-sys-neutral10: #201a17;--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 Inter;--mat-sys-body-large-font: Inter;--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 Inter;--mat-sys-body-medium-font: Inter;--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 Inter;--mat-sys-body-small-font: Inter;--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 Inter;--mat-sys-display-large-font: Inter;--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 Inter;--mat-sys-display-medium-font: Inter;--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 Inter;--mat-sys-display-small-font: Inter;--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 Inter;--mat-sys-headline-large-font: Inter;--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 Inter;--mat-sys-headline-medium-font: Inter;--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 Inter;--mat-sys-headline-small-font: Inter;--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 Inter;--mat-sys-label-large-font: Inter;--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 Inter;--mat-sys-label-medium-font: Inter;--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 Inter;--mat-sys-label-small-font: Inter;--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 Inter;--mat-sys-title-large-font: Inter;--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 Inter;--mat-sys-title-medium-font: Inter;--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 Inter;--mat-sys-title-small-font: Inter;--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{margin:0;background-color:var(--mat-sys-surface);color:var(--mat-sys-on-surface)}:root{--surface-bg: #f1f3f5;--panel-bg: #ffffff;--panel-border: #e2e5e9;--text-primary: #1a1d21;--text-secondary: #5f6b7a;--text-muted: #8b95a5;--accent: #eaa55e;--accent-hover: #e0913f;--accent-strong: #9a4708;--accent-subtle: #fdf3e7;--accent-subtle-hover: #fae3cc;--on-accent: #1a1d21;--danger: #dc2626;--danger-bg: #fef2f2;--success: #16a34a;--radius: 10px;--radius-sm: 6px;--radius-lg: 16px;--radius-pill: 999px;--brand: var(--accent);--brand-ink: #3a3f47;--grid-line: rgba(43, 47, 54, .045)}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}*,*:before,*:after{box-sizing:border-box}app-root{display:block;min-height:100dvh}.page{padding:1.5rem clamp(1rem,4vw,2.5rem);max-width:1200px;margin:0 auto}.page.page-wide{max-width:none}.page-title{margin:0 0 .25rem;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.page-subtitle{margin:0 0 1.5rem;color:var(--text-secondary)}.muted{color:var(--text-secondary)}.mono{font-family:ui-monospace,SFMono-Regular,Cascadia Code,monospace;font-size:.85em}.table-scroll{overflow-x:auto}.table-fill{min-width:100%;background:transparent}.table-fill th.mat-mdc-header-cell,.table-fill td.mat-mdc-cell{white-space:nowrap}.role-chip{display:inline-flex;align-items:center;padding:.1rem .55rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:600;background:var(--accent-subtle);color:var(--accent-strong);border:1px solid var(--accent-subtle-hover)}.btn-spinner{display:inline-block;width:18px;height:18px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.btn-spinner{animation-duration:1.6s}}.mat-mdc-icon-button[color=warn]{--mdc-icon-button-icon-color: var(--danger)}.mat-mdc-outlined-button[color=warn]{color:var(--danger);--mdc-outlined-button-label-text-color: var(--danger)}.mat-mdc-button-base[color=warn] .mat-icon{color:var(--danger)}.sidenav .mat-mdc-nav-list{padding-top:0}.sidenav a.mat-mdc-list-item{border-radius:var(--radius);margin-bottom:.15rem}.sidenav a.mat-mdc-list-item:hover{background:var(--surface-bg)}.sidenav a.mat-mdc-list-item.mdc-list-item--activated{background:var(--accent-subtle)}.sidenav a.mat-mdc-list-item.mdc-list-item--activated .mdc-list-item__primary-text{color:var(--accent-strong);font-weight:600}.sidenav a.mat-mdc-list-item.mdc-list-item--activated .mat-icon{color:var(--accent-strong)}.health-tooltip,.health-tooltip .mdc-tooltip__surface{max-width:320px;white-space:pre-line;text-align:left}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:100dvh;color:var(--text-secondary);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:1rem}.auth-screen{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.75rem;padding:2rem 1.5rem;overflow-y:auto;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--text-primary);background-color:#f6f7f9;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:30px 30px;background-position:center}.auth-screen:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 45% at 50% 32%,rgba(234,165,94,.13),transparent 70%),radial-gradient(120% 75% at 50% 118%,rgba(43,47,54,.06),transparent 60%)}.auth-card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;width:100%;max-width:27rem;padding:clamp(2rem,5vw,3rem);text-align:left;background:#ffffffdb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(43,47,54,.07);border-radius:var(--radius-lg);box-shadow:0 1px 2px #0f172a0a,0 22px 55px -18px #0f172a38}.auth-brand{display:flex;align-items:center;gap:.7rem}.auth-brand .mark{height:22px;width:auto}.auth-brand .divider{width:1px;height:1rem;background:#2b2f3633}.auth-brand .product{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-secondary)}.auth-title{margin:.25rem 0 0;font-size:clamp(1.9rem,4.5vw,2.55rem);line-height:1.06;font-weight:700;letter-spacing:-.025em;color:var(--text-primary)}.auth-subtitle{margin:0;max-width:36ch;font-size:.97rem;line-height:1.6;color:var(--text-secondary)}.auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;width:100%;margin-top:.25rem;padding:.9rem 1.4rem;font:inherit;font-size:1rem;font-weight:600;letter-spacing:.01em;color:var(--on-accent);background:var(--brand);border:1px solid transparent;border-radius:var(--radius);cursor:pointer;box-shadow:0 8px 20px -8px #eaa55eb3;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .15s ease}.auth-btn .icon{width:1.05rem;height:1.05rem;transition:transform .2s ease}.auth-btn:hover{background:var(--brand-ink);color:var(--brand);box-shadow:0 10px 24px -10px #3a3f478c}.auth-btn:hover .icon{transform:translate(3px)}.auth-btn:active{transform:translateY(1px)}.auth-btn:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}.auth-foot{position:relative;z-index:1;font-size:.85rem;color:var(--text-muted)}.auth-link{color:var(--accent-strong);font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}@media(prefers-reduced-motion:reduce){.auth-btn,.auth-btn .icon{transition:none}.auth-btn:hover .icon{transform:none}}
