html{color-scheme:light;--mat-sys-background: #fcf8fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f3eff4;--mat-sys-inverse-primary: #bec2ff;--mat-sys-inverse-surface: #303034;--mat-sys-on-background: #1b1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #0000ef;--mat-sys-on-primary-fixed: #00006e;--mat-sys-on-primary-fixed-variant: #0000ef;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #444559;--mat-sys-on-secondary-fixed: #191a2c;--mat-sys-on-secondary-fixed-variant: #444559;--mat-sys-on-surface: #1b1b1f;--mat-sys-on-surface-variant: #46464f;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #004f4f;--mat-sys-on-tertiary-fixed: #002020;--mat-sys-on-tertiary-fixed-variant: #004f4f;--mat-sys-outline: #777680;--mat-sys-outline-variant: #c7c5d0;--mat-sys-primary: #343dff;--mat-sys-primary-container: #e0e0ff;--mat-sys-primary-fixed: #e0e0ff;--mat-sys-primary-fixed-dim: #bec2ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #5c5d72;--mat-sys-secondary-container: #e1e0f9;--mat-sys-secondary-fixed: #e1e0f9;--mat-sys-secondary-fixed-dim: #c5c4dd;--mat-sys-shadow: #000000;--mat-sys-surface: #fcf8fd;--mat-sys-surface-bright: #fcf8fd;--mat-sys-surface-container: #f0edf1;--mat-sys-surface-container-high: #ebe7eb;--mat-sys-surface-container-highest: #e5e1e6;--mat-sys-surface-container-low: #f6f2f7;--mat-sys-surface-dim: #dcd9dd;--mat-sys-surface-tint: #343dff;--mat-sys-surface-variant: #e4e1ec;--mat-sys-tertiary: #006a6a;--mat-sys-tertiary-container: #00fbfb;--mat-sys-tertiary-fixed: #00fbfb;--mat-sys-tertiary-fixed-dim: #00dddd;--mat-sys-neutral-variant20: #303038;--mat-sys-neutral10: #1b1b1f;--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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-body-large-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-body-medium-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-body-small-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-display-large-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-display-medium-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-display-small-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-headline-large-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-headline-medium-font: Plus Jakarta Sans, Segoe UI, 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 Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-headline-small-font: Plus Jakarta Sans, Segoe UI, 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: 600 .875rem / 1.25rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-label-large-font: Plus Jakarta Sans, Segoe UI, 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: 600;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 600 .75rem / 1rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-label-medium-font: Plus Jakarta Sans, Segoe UI, 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: 600;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 600 .688rem / 1rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-label-small-font: Plus Jakarta Sans, Segoe UI, 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: 600;--mat-sys-title-large: 400 1.375rem / 1.75rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-title-large-font: Plus Jakarta Sans, Segoe UI, 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: 600 1rem / 1.5rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-title-medium-font: Plus Jakarta Sans, Segoe UI, 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: 600;--mat-sys-title-small: 600 .875rem / 1.25rem Plus Jakarta Sans, Segoe UI, sans-serif;--mat-sys-title-small-font: Plus Jakarta Sans, Segoe UI, 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: 600;--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;--canvas: #eef2f7;--card: #ffffff;--ink: #0f172a;--muted: #64748b;--line: rgba(15, 23, 42, .08);--accent: #2563eb;--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 12px 32px rgba(15, 23, 42, .06);--radius: 18px;--mat-sys-surface: var(--canvas);--mat-sys-background: var(--canvas);--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-container-low: #f8fafc;--mat-sys-surface-container: #ffffff;--mat-sys-surface-container-high: #ffffff;--mat-sys-surface-container-highest: #f1f5f9;--mat-sys-outline-variant: #e2e8f0;--mat-sys-on-surface: var(--ink);--mat-sys-on-surface-variant: var(--muted);--mat-sys-corner-extra-small: 8px;--mat-sys-corner-small: 10px;--mat-sys-corner-medium: 14px;--mat-sys-corner-large: 18px;--mat-sys-corner-extra-large: 24px;--mdc-outlined-text-field-container-shape: 12px;--mdc-filled-button-container-shape: 12px;--mdc-outlined-button-container-shape: 12px;--mdc-protected-button-container-shape: 12px}html,body{height:100%;margin:0;background:var(--canvas);color:var(--ink);font-family:Plus Jakarta Sans,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:#2563eb2e}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.page-header h1{margin:0;font-size:clamp(1.65rem,2vw,2rem);font-weight:800;letter-spacing:-.04em;line-height:1.15;color:var(--ink)}.page-header .page-header__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end}.page-header .page-header__actions .mat-mdc-form-field{width:280px}.page-header__titles{min-width:0}.page-kicker{margin:0 0 6px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.page-lead{margin:8px 0 0;max-width:42rem;color:var(--muted);font-size:.95rem;line-height:1.5}.page-back{display:inline-flex;margin:0 0 10px -10px;color:var(--muted)!important;font-weight:600;letter-spacing:-.01em}.page-progress{margin:-8px 0 18px;border-radius:999px;overflow:hidden}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}.kpi{display:flex;flex-direction:column;gap:0;padding:18px 18px 16px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease}.kpi:hover{transform:translateY(-2px);box-shadow:0 16px 36px #0f172a14}.kpi:has(.kpi__icon){flex-direction:row;align-items:flex-start;gap:14px}.kpi__icon{display:grid;flex:none;place-items:center;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent)}.kpi__icon mat-icon{width:22px;height:22px;font-size:22px}.kpi__body{min-width:0;flex:1}.kpi__value{font-size:1.65rem;font-weight:800;letter-spacing:-.04em;line-height:1.1;font-variant-numeric:tabular-nums}.kpi__label{margin-top:4px;font-size:.78rem;font-weight:600;letter-spacing:.01em;color:var(--muted)}.kpi .mat-mdc-progress-bar{margin-top:12px;border-radius:999px;overflow:hidden}.kpi:has(.kpi__icon--drift) .kpi__value,.kpi:has(.kpi__icon--open) .kpi__value,.kpi:has(.kpi__icon--audit) .kpi__value{color:#b45309}.kpi:has(.kpi__icon--conflict) .kpi__value,.kpi:has(.kpi__icon--block) .kpi__value{color:#b42318}.full-width{width:100%}.section-card{margin-bottom:18px}.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:1100px){.three-columns{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:stretch}}.muted{color:var(--muted)}.mono{font-family:IBM Plex Mono,Cascadia Code,Consolas,monospace;font-size:.82em;letter-spacing:-.02em}.empty-state{margin:8px 0 0;padding:36px 24px;text-align:center;color:var(--muted);border-radius:16px;border:1px dashed rgba(37,99,235,.28);background:linear-gradient(180deg,#2563eb0d,#fff6)}.surface-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.surface-panel .empty-state{margin:16px;background:transparent}table.mat-mdc-table{width:100%;background:transparent}.mat-mdc-header-cell{font-size:.7rem!important;font-weight:700!important;letter-spacing:.07em;text-transform:uppercase;color:#64748b!important;background:#f8fafc;border-bottom-color:#e8edf3!important}.mat-mdc-cell{border-bottom-color:#eef2f6!important;color:var(--ink);font-size:.92rem}.mat-mdc-row:last-child .mat-mdc-cell{border-bottom-color:transparent!important}.mat-mdc-row{transition:background .15s ease}.mat-mdc-row:hover .mat-mdc-cell{background:#f5f8ff}.mat-mdc-card{border-radius:var(--radius)!important;border:1px solid var(--line);box-shadow:var(--shadow)!important;--mdc-elevated-card-container-color: #ffffff}.mat-mdc-card-title{font-weight:700!important;letter-spacing:-.03em!important}.mat-mdc-card-subtitle{color:var(--muted)!important}.card-grid .mat-mdc-card{transition:transform .18s ease,box-shadow .18s ease}.card-grid .mat-mdc-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0f172a17!important}.mat-mdc-unelevated-button,.mat-mdc-outlined-button,.mat-mdc-button:not(.mat-mdc-icon-button){font-weight:600;letter-spacing:-.01em}.mat-mdc-unelevated-button .mat-icon,.mat-mdc-outlined-button .mat-icon,.mat-mdc-button:not(.mat-mdc-icon-button) .mat-icon{margin-right:4px;font-size:18px;width:18px;height:18px}.mat-mdc-unelevated-button{box-shadow:0 8px 16px #2563eb2e;transition:transform .15s ease,box-shadow .15s ease}.mat-mdc-unelevated-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 22px #2563eb3d}.mat-mdc-unelevated-button.mat-warn{box-shadow:0 8px 16px #b91c1c38}.mat-mdc-unelevated-button.mat-warn:hover:not(:disabled){box-shadow:0 12px 22px #b91c1c47}.mat-mdc-outlined-button{background:#fff}.mat-mdc-tab-header{border-bottom:1px solid var(--line)}.mat-mdc-tab .mdc-tab__text-label{letter-spacing:-.01em;font-weight:600}.mat-expansion-panel{border-radius:16px!important;border:1px solid var(--line);box-shadow:none!important;margin-bottom:10px;background:#fff}.mat-accordion .mat-expansion-panel:first-of-type,.mat-accordion .mat-expansion-panel:last-of-type{border-radius:16px!important}.mat-expansion-panel-header-title{font-weight:600;letter-spacing:-.02em}.mat-stepper-horizontal{background:transparent}.mat-horizontal-stepper-header-container{padding:4px 4px 12px}.mat-horizontal-content-container{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px 22px 22px!important}.mat-mdc-menu-panel.field-help__panel{max-width:min(680px,100vw - 32px)!important;max-height:none!important;overflow:visible}.mat-mdc-dialog-surface{border-radius:22px!important;box-shadow:0 24px 64px #0f172a2e!important}.mat-mdc-dialog-title{font-weight:700!important;letter-spacing:-.03em!important}.mat-mdc-paginator{background:transparent}.mat-mdc-form-field{--mat-form-field-container-text-size: .92rem}.snackbar-error{--mdc-snackbar-container-color: var(--mat-sys-error);--mdc-snackbar-supporting-text-color: var(--mat-sys-on-error);--mat-snack-bar-button-color: var(--mat-sys-on-error)}.state-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}.state-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.state-chip--audit{background:#fff7e6;color:#9a6700;border-color:#f6e2b3}.state-chip--block{background:#ffe8e6;color:#b42318;border-color:#f8c9c5}.state-chip--compliant,.state-chip--consented{background:#e7f8ef;color:#087443;border-color:#b7ebcf}.state-chip--tocreate,.state-chip--toupdate{background:#e8efff;color:#1d4ed8;border-color:#c9d8ff}.state-chip--conflict,.state-chip--revoked{background:#ffe8e6;color:#b42318;border-color:#f8c9c5}.state-chip--notautomatable{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.state-chip--missingpermission,.state-chip--awaitingtenantvalue,.state-chip--pending,.state-chip--missingpermissions{background:#fff7e6;color:#9a6700;border-color:#f6e2b3}@media(prefers-reduced-motion:reduce){.kpi,.card-grid .mat-mdc-card,.mat-mdc-unelevated-button,.mat-mdc-row{transition:none}}
