@charset "UTF-8";html{height:100%;--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, #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(#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(#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: #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 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}:root{--bg-app: oklch(98.6% .003 250);--bg-surface: #ffffff;--bg-elev: oklch(99.3% .002 250);--bg-subtle: oklch(96.6% .005 250);--bg-muted: oklch(93.8% .008 250);--bg-strong: oklch(89% .01 250);--border-soft: oklch(94% .006 250);--border: oklch(90.5% .009 250);--border-strong: oklch(84% .013 250);--text-1: oklch(20% .02 250);--text-2: oklch(38% .018 250);--text-3: oklch(54% .014 250);--text-4: oklch(66% .011 250);--text-inv: #ffffff;--accent-hue: 258;--accent: oklch(55% .17 var(--accent-hue));--accent-hover: oklch(48% .18 var(--accent-hue));--accent-soft: oklch(96% .04 var(--accent-hue));--accent-border: oklch(86% .07 var(--accent-hue));--accent-text: oklch(38% .15 var(--accent-hue));--success: oklch(56% .13 152);--success-soft: oklch(95% .04 152);--success-border: oklch(83% .09 152);--warning: oklch(64% .14 75);--warning-soft: oklch(96% .05 75);--warning-border: oklch(85% .1 75);--danger: oklch(56% .18 25);--danger-soft: oklch(96% .04 25);--danger-border: oklch(86% .09 25);--side-bg: oklch(99% .003 250);--side-border: var(--border);--side-text: var(--text-2);--side-text-mute: var(--text-3);--side-item-hover: oklch(95% .005 250);--side-item-active: var(--accent-soft);--side-item-active-text: var(--accent-text);--r-xs: 4px;--r-sm: 6px;--r: 8px;--r-lg: 10px;--r-xl: 14px;--shadow-xs: 0 1px 0 oklch(0% 0 0 / .04);--shadow-sm: 0 1px 2px oklch(0% 0 0 / .05), 0 0 0 1px oklch(0% 0 0 / .02);--shadow: 0 4px 12px -2px oklch(0% 0 0 / .06), 0 2px 4px -2px oklch(0% 0 0 / .04);--shadow-lg: 0 18px 40px -12px oklch(0% 0 0 / .18), 0 8px 16px -8px oklch(0% 0 0 / .08);--d-cell-y: 12px;--d-cell-x: 14px;--d-row-h: 44px;--d-input-h: 36px;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}[data-side=dark]{--side-bg: oklch(22% .015 250);--side-border: oklch(28% .018 250);--side-text: oklch(82% .012 250);--side-text-mute: oklch(58% .015 250);--side-item-hover: oklch(28% .02 250);--side-item-active: oklch(32% .05 var(--accent-hue));--side-item-active-text: oklch(92% .06 var(--accent-hue))}[data-side=dark] .side-avatar{background:#2c343c;color:#bec5cc;border-color:#3b434d}[data-density=compact]{--d-cell-y: 8px;--d-cell-x: 12px;--d-row-h: 36px;--d-input-h: 32px}*,*:before,*:after{box-sizing:border-box}body{margin:0;height:100%;font-family:var(--font-ui);font-size:14px;line-height:1.45;color:var(--text-1);background:var(--bg-app);color-scheme:light;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}code,.mono{font-family:var(--font-mono);font-size:12.5px;letter-spacing:0}.btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-surface);color:var(--text-1);font:500 13px var(--font-ui);letter-spacing:-.005em;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s;white-space:nowrap;text-decoration:none}.btn svg{width:14px;height:14px}.btn:hover{background:var(--bg-subtle)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--text-inv);box-shadow:inset 0 -1px #0000001a}.btn.primary:hover{background:var(--accent-hover)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--bg-subtle)}.btn.danger{color:var(--danger)}.btn.danger:hover{background:var(--danger-soft);border-color:var(--danger-border)}.btn.sm{height:28px;padding:0 10px;font-size:12.5px;gap:4px}.btn.lg{height:38px;padding:0 16px;font-size:14px}.btn:disabled,.btn[disabled]{opacity:.55;cursor:default;background:var(--bg-subtle);color:var(--text-3);border-color:var(--border-soft)}.btn:disabled.primary,.btn[disabled].primary{background:var(--bg-muted);color:var(--text-3);border-color:var(--border)}.iconbtn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s}.iconbtn svg{width:15px;height:15px}.iconbtn:hover{background:var(--bg-subtle);color:var(--text-1)}.iconbtn.danger:hover{background:var(--danger-soft);color:var(--danger)}.chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg-surface);color:var(--text-2);font:500 11.5px var(--font-ui);letter-spacing:0;white-space:nowrap}.chip svg{width:12px;height:12px}.chip.mono{font-family:var(--font-mono);font-size:11px}.chip.accent{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text)}.chip.success{background:var(--success-soft);border-color:var(--success-border);color:var(--success)}.chip.warning{background:var(--warning-soft);border-color:var(--warning-border);color:var(--warning)}.chip.danger{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.chip.subtle{background:var(--bg-muted);border-color:transparent;color:var(--text-2)}.chip.dot:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.7}.kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:18px;padding:0 5px;border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;background:var(--bg-surface);color:var(--text-3);font:500 10.5px var(--font-mono)}code.inline-code{font:500 12.5px var(--font-mono);padding:1px 6px;background:var(--bg-subtle);border:1px solid var(--border-soft);border-radius:var(--r-xs);color:var(--text-1)}.input{display:flex;align-items:center;gap:8px;height:var(--d-input-h);padding:0 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-surface);font:400 13px var(--font-ui);color:var(--text-1);transition:border-color .12s,box-shadow .12s}.input svg{width:14px;height:14px;color:var(--text-3)}.input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input>input,.input>select{flex:1;border:0;outline:0;background:transparent;font:inherit;color:inherit;min-width:0}.input>input::placeholder,.input>select::placeholder{color:var(--text-4)}.field-label{display:block;font:500 12px var(--font-ui);color:var(--text-2);margin-bottom:6px;letter-spacing:0}.field-hint{font:400 11.5px var(--font-ui);color:var(--text-3);margin-top:6px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);overflow:hidden;margin-bottom:20px}.card-header{display:flex;align-items:flex-start;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border-soft)}.card-header .title{font:600 14.5px var(--font-ui);color:var(--text-1);letter-spacing:-.01em}.card-header .subtitle{font:400 12.5px var(--font-ui);color:var(--text-3);margin-top:2px}.card-header .actions{margin-left:auto;display:flex;gap:6px;align-items:center}.card-body{padding:20px}.card-body.flush{padding:0}.tbl{width:100%;border-collapse:separate;border-spacing:0}.tbl th{text-align:left;font:500 11.5px var(--font-ui);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:10px var(--d-cell-x);background:var(--bg-elev);border-bottom:1px solid var(--border);white-space:nowrap}.tbl th.num{text-align:right}.tbl td{padding:var(--d-cell-y) var(--d-cell-x);border-bottom:1px solid var(--border-soft);font:400 13px var(--font-ui);color:var(--text-1);vertical-align:middle}.tbl td.num{text-align:right;font-variant-numeric:tabular-nums}.tbl tr:last-child td{border-bottom:0}.tbl tr:hover td{background:var(--bg-elev)}.tbl tr.row-link{cursor:pointer}.tbl .row-actions{display:flex;gap:2px;justify-content:flex-end}.page-header{display:flex;align-items:flex-end;gap:24px;padding:28px 32px 20px;border-bottom:1px solid var(--border-soft);background:var(--bg-app)}.breadcrumb{display:flex;align-items:center;gap:6px;font:400 12.5px var(--font-ui);color:var(--text-3);margin-bottom:6px}.breadcrumb a{color:var(--text-3);text-decoration:none;cursor:pointer}.breadcrumb a:hover{color:var(--text-1)}.breadcrumb .sep{opacity:.5;font-size:11px}.breadcrumb .current{color:var(--text-1);font-weight:500}.page-title{font:600 22px var(--font-ui);letter-spacing:-.015em;color:var(--text-1)}.page-sub{font:400 13.5px var(--font-ui);color:var(--text-3);margin-top:4px;max-width:60ch}.page-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.page-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.section-heading{display:flex;align-items:baseline;gap:12px;padding:4px 0 12px}.section-heading h3{font:600 14px var(--font-ui);letter-spacing:-.005em;color:var(--text-1);margin:0}.section-heading .sub{font:400 12.5px var(--font-ui);color:var(--text-3)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 24px;color:var(--text-3);gap:4px}.empty .icon{width:44px;height:44px;border-radius:10px;background:var(--bg-subtle);border:1px solid var(--border-soft);display:flex;align-items:center;justify-content:center;color:var(--text-3);margin-bottom:8px}.empty h4{font:600 14px var(--font-ui);color:var(--text-1);margin:0}.empty p{font:400 12.5px var(--font-ui);color:var(--text-3);margin:0;max-width:36ch}.codeframe{border:1px solid var(--border);border-radius:var(--r);background:#fafcfe;overflow:hidden}.codeframe .codebar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-elev);border-bottom:1px solid var(--border-soft);font:500 11.5px var(--font-mono);color:var(--text-3)}.codeframe .codebar svg{width:12px;height:12px}.codeframe pre{margin:0;padding:14px 16px;font:400 12.5px/1.6 var(--font-mono);color:var(--text-1);background:transparent;overflow:auto;white-space:pre-wrap;word-break:break-all}.stepper{display:flex;align-items:center}.stepper .step{display:flex;align-items:center;gap:10px;padding:4px 0;font:500 13px var(--font-ui);color:var(--text-3)}.stepper .step .num{width:22px;height:22px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-3);display:flex;align-items:center;justify-content:center;font:500 11.5px var(--font-mono);flex-shrink:0}.stepper .step.active{color:var(--text-1)}.stepper .step.active .num{background:var(--accent);border-color:var(--accent);color:var(--text-inv)}.stepper .step.done{color:var(--text-2)}.stepper .step.done .num{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-text);font-size:14px}.stepper .step.done .num:after{content:"\2713"}.stepper .step.done .num span{display:none}.stepper .line{flex:1;height:1px;background:var(--border);margin:0 14px;min-width:24px}.stepper .line.done{background:var(--accent-border)}.field-pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px 0 6px;border:1px dashed var(--accent-border);background:var(--accent-soft);color:var(--accent-text);border-radius:6px;font:500 12px var(--font-mono);cursor:grab;-webkit-user-select:none;user-select:none}.field-pill svg{width:12px;height:12px;opacity:.55}.keychip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r-xs);font:500 11.5px var(--font-mono);color:var(--text-1)}.keychip svg{width:12px;height:12px}.form-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.form-grid .col-6{grid-column:span 6}.form-grid .col-4{grid-column:span 4}.form-grid .col-12{grid-column:span 12}.banner{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:var(--r);border:1px solid var(--accent-border);background:var(--accent-soft);color:var(--accent-text);font:500 12.5px var(--font-ui)}.banner svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.banner .body{flex:1}.banner .body strong{font-weight:600}.banner .body p{margin:2px 0 0;opacity:.85;font-weight:400}.banner.warning{background:var(--warning-soft);border-color:var(--warning-border);color:var(--warning)}.banner.danger{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.banner.success{background:var(--success-soft);border-color:var(--success-border);color:var(--success)}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow-xs)}.stat .stat-label{font:500 11.5px var(--font-ui);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.stat .stat-value{font:600 26px var(--font-ui);letter-spacing:-.02em;color:var(--text-1);font-variant-numeric:tabular-nums}.stat .stat-delta{font:400 11.5px var(--font-ui);color:var(--text-3)}.stat .stat-delta.success{color:var(--success);font-weight:500}.row-ico{width:28px;height:28px;border-radius:6px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;border:1px solid var(--accent-border);flex-shrink:0}.row-ico svg{width:14px;height:14px}.toggle-group{display:inline-flex;background:var(--bg-elev);border:1px solid var(--border);border-radius:7px;padding:2px;gap:2px}.toggle{height:26px;padding:0 10px;border:0;border-radius:5px;background:transparent;font:500 12px var(--font-ui);color:var(--text-2);cursor:pointer;letter-spacing:-.005em}.toggle:hover{color:var(--text-1)}.toggle.active{background:var(--bg-surface);color:var(--text-1);box-shadow:var(--shadow-xs)}.wizard-grid{display:grid;grid-template-columns:1fr 360px;gap:20px;align-items:start}.summary-grid{display:grid;grid-template-columns:90px 1fr;gap:10px 14px;align-items:start}.summary-grid .summary-label{font:500 11.5px var(--font-ui);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;padding-top:2px}.summary-grid .summary-value{font:400 13px var(--font-ui);color:var(--text-1)}.filter-row{display:flex;align-items:flex-end;gap:12px;padding:10px 12px 10px 6px;border:1px solid var(--border);border-radius:var(--r);background:var(--bg-elev);transition:background .15s,border-color .15s,box-shadow .15s}.filter-row.drop{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft)}.filter-grip{align-self:center;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--text-4);cursor:grab}.filter-grip svg{width:14px;height:14px}.filter-field{display:flex;flex-direction:column}.filter-field.grow{flex:1}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;height:var(--d-input-h)}.switch input{position:absolute;opacity:0;pointer-events:none}.switch .track{width:30px;height:18px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border);position:relative;transition:background .15s,border-color .15s}.switch .thumb{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:999px;background:var(--bg-surface);box-shadow:0 1px 2px #00000026;transition:left .15s}.switch input:checked~.track{background:var(--accent);border-color:var(--accent)}.switch input:checked~.track .thumb{left:13px}.switch .switch-text{font:500 12.5px var(--font-ui);color:var(--text-2)}.values-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:start}.sim-result{margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:var(--r);background:var(--bg-elev)}.editor-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;align-items:start}.divider{height:1px;background:var(--border-soft);margin:16px 0}.muted{color:var(--text-3)}.spacer-h{flex:1}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.full-width{width:100%}.loading-container{display:flex;justify-content:center;padding:40px}.app{font-family:var(--font-ui);color:var(--text-1);background:var(--bg-app);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;letter-spacing:-.005em}.shell{display:grid;grid-template-columns:240px 1fr;height:100vh;overflow:hidden}.sidebar{display:flex;flex-direction:column;background:var(--side-bg);border-right:1px solid var(--side-border);color:var(--side-text);overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:18px 16px;border-bottom:1px solid var(--side-border)}.brand-mark{width:30px;height:30px;border-radius:8px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font:700 14px var(--font-ui);letter-spacing:-.02em;box-shadow:inset 0 -1px #00000026;flex-shrink:0}.brand-text{line-height:1.1}.brand-name{font:600 14px var(--font-ui);color:var(--side-text);letter-spacing:-.01em}.brand-env{font:500 10.5px var(--font-mono);color:var(--side-text-mute);margin-top:3px;letter-spacing:.04em;text-transform:uppercase}.side-nav{padding:14px 10px;display:flex;flex-direction:column;gap:1px;flex:1}.side-section-label{font:600 10.5px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--side-text-mute);padding:6px 10px 4px}.side-section-label:not(:first-child){margin-top:14px}.side-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-sm);color:var(--side-text);font:500 13px var(--font-ui);letter-spacing:-.005em;cursor:pointer;text-decoration:none;transition:background .12s}.side-item svg{width:16px;height:16px;flex-shrink:0}.side-item:hover{background:var(--side-item-hover)}.side-item.active{background:var(--side-item-active);color:var(--side-item-active-text)}.side-foot{padding:10px;border-top:1px solid var(--side-border)}.side-user{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--r-sm)}.side-avatar{width:28px;height:28px;border-radius:999px;background:var(--bg-muted);color:var(--text-1);display:flex;align-items:center;justify-content:center;font:600 11.5px var(--font-ui);border:1px solid var(--border);flex-shrink:0}.side-user-meta{flex:1;line-height:1.2;min-width:0}.side-user-name{font:500 12.5px var(--font-ui);color:var(--side-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-user-role{font:400 11px var(--font-mono);color:var(--side-text-mute);margin-top:2px}.shell-main{display:flex;flex-direction:column;min-width:0}.topbar{display:flex;align-items:center;gap:16px;height:52px;padding:0 24px;border-bottom:1px solid var(--border-soft);background:var(--bg-surface);flex-shrink:0}.topbar-search{display:flex;align-items:center;gap:8px;height:32px;padding:0 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-elev);width:360px;color:var(--text-3)}.topbar-search svg{width:15px;height:15px}.topbar-search input{flex:1;border:0;outline:0;background:transparent;font:400 13px var(--font-ui);color:var(--text-1)}.topbar-search input::placeholder{color:var(--text-4)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:6px}.content{padding:0;flex:1;overflow-y:auto;background:var(--bg-app)}.content>*+*{margin-top:0}.content-inner{padding:24px 32px 40px}.content-inner>*+*{margin-top:0}mat-progress-spinner circle{stroke:var(--accent)!important}.mat-mdc-snack-bar-container{--mdc-snackbar-container-color: var(--text-1);--mdc-snackbar-supporting-text-color: var(--text-inv);border-radius:var(--r)!important}.mat-mdc-form-field{font-family:var(--font-ui)!important}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline__leading,.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline__notch,.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline__trailing{border-color:var(--border)!important;border-radius:var(--r-sm)!important}.mat-mdc-form-field .mdc-text-field--focused .mdc-notched-outline__leading,.mat-mdc-form-field .mdc-text-field--focused .mdc-notched-outline__notch,.mat-mdc-form-field .mdc-text-field--focused .mdc-notched-outline__trailing{border-color:var(--accent)!important;border-width:1px!important}.mat-mdc-form-field input.mat-mdc-input-element,.mat-mdc-form-field textarea.mat-mdc-input-element{font-family:var(--font-ui)!important;font-size:13px!important;color:var(--text-1)!important}.mat-mdc-form-field .mat-mdc-floating-label{font-family:var(--font-ui)!important;font-size:13px!important;color:var(--text-3)!important}.mat-mdc-checkbox .mdc-checkbox__background{border-color:var(--border-strong)!important}.mat-mdc-checkbox.mat-accent .mdc-checkbox__background{background-color:var(--accent)!important;border-color:var(--accent)!important}.mat-mdc-select-value-text,.mat-mdc-option{font-family:var(--font-ui)!important;font-size:13px!important}.mat-mdc-dialog-container{--mdc-dialog-container-shape: var(--r-xl);border-radius:var(--r-xl)!important;box-shadow:var(--shadow-lg)!important}.topbar-search{cursor:pointer}.search-overlay{position:fixed;inset:0;z-index:900;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding-top:100px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:overlay-in .1s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.search-palette{width:560px;max-width:calc(100vw - 32px);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:palette-in .12s ease}@keyframes palette-in{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.search-palette-header{display:flex;align-items:center;gap:10px;padding:0 16px;height:52px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.search-palette-header svg{width:16px;height:16px;color:var(--text-3);flex-shrink:0}.search-palette-input{flex:1;border:0;outline:0;background:transparent;font:400 14px var(--font-ui);color:var(--text-1)}.search-palette-input::placeholder{color:var(--text-4)}.search-results{overflow-y:auto;max-height:380px;padding:6px 0}.search-empty{display:flex;align-items:center;justify-content:center;padding:32px 16px;color:var(--text-3);font-size:13px}.search-section-label{font:600 10.5px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--text-4);padding:8px 16px 4px}.search-section-label:not(:first-child){margin-top:4px}.search-result-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 16px;border:0;background:transparent;cursor:pointer;text-align:left;transition:background .08s}.search-result-item:hover,.search-result-item.active{background:var(--bg-elev)}.search-result-icon{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-app);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-3)}.search-result-icon svg{width:15px;height:15px}.search-result-body{flex:1;min-width:0}.search-result-title{font:500 13px var(--font-ui);color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-sub{font:400 11.5px var(--font-ui);color:var(--text-3);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-palette-footer{display:flex;gap:12px;padding:8px 16px;border-top:1px solid var(--border-soft);font:400 11.5px var(--font-ui);color:var(--text-4);flex-shrink:0}.search-palette-footer span{display:flex;align-items:center;gap:4px}.search-palette-footer .kbd{font-size:10px}.consultar-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.result-pre{margin:0;padding:12px 14px;font:400 12.5px/1.6 var(--font-mono);color:var(--text-1);background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--r);overflow:auto;white-space:pre-wrap;word-break:break-all;max-height:320px}.filter-tags{display:flex;flex-wrap:wrap;gap:6px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 24px;text-align:center;color:var(--text-3);font:400 13px var(--font-ui)}.empty-icon{width:44px;height:44px;opacity:.35}.empty-hint{font:400 12.5px var(--font-ui);color:var(--text-3);padding:8px 12px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--r-sm);margin-bottom:8px}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th{text-align:left;font:500 11.5px var(--font-ui);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:9px 16px;background:var(--bg-elev);border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:10px 16px;border-bottom:1px solid var(--border-soft);font:400 13px var(--font-ui);color:var(--text-1);vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td{background:var(--bg-elev)}.audit-stat-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}.audit-day-label{font:600 11.5px var(--font-ui);text-transform:uppercase;letter-spacing:.07em;color:var(--text-4);padding:16px 0 8px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}.audit-row{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid var(--border-soft)}.audit-row:last-child{border-bottom:0}.audit-avatar{width:32px;height:32px;border-radius:999px;background:var(--accent-soft);color:var(--accent-text);border:1px solid var(--accent-border);display:flex;align-items:center;justify-content:center;font:600 12px var(--font-ui);flex-shrink:0}.audit-body{flex:1;min-width:0}.audit-row-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.audit-actor{font:600 13px var(--font-ui);color:var(--text-1)}.audit-time{font:400 12px var(--font-mono);color:var(--text-4);margin-left:auto}.audit-meta{font:400 12.5px var(--font-ui);color:var(--text-3);margin-bottom:8px}.audit-diff{display:grid;grid-template-columns:1fr 1fr;gap:10px}.diff-block{border:1px solid var(--border-soft);border-radius:var(--r-sm);overflow:hidden}.diff-block.diff-old{border-color:var(--danger-border)}.diff-block.diff-new{border-color:var(--success-border)}.diff-label{font:600 10.5px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;padding:4px 10px}.diff-old .diff-label{background:var(--danger-soft);color:var(--danger)}.diff-new .diff-label{background:var(--success-soft);color:var(--success)}.diff-pre{margin:0;padding:8px 10px;font:400 11.5px/1.5 var(--font-mono);color:var(--text-2);background:var(--bg-elev);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow:auto}.success-text{color:var(--success)}.accent-text{color:var(--accent)}.danger-text{color:var(--danger)}.warning-text{color:var(--warning)}
