:root{--ink-950: #0d0f12;--ink-900: #14171d;--ink-850: #181c24;--ink-800: #202632;--ink-700: #29303f;--slate-700: #2e3646;--slate-500: #87929a;--slate-400: #94a3b8;--slate-200: #bdc8d1;--slate-100: #e2e2e6;--sky-500: #38bdf8;--sky-300: #7dd3fc;--sky-200: #8ed5ff;--amber-500: #f59e0b;--amber-300: #ffb95f;--indigo-300: #c7c8ff;--emerald-500: #10b981;--rose-200: #ffb4ab;--rose-950: #690005;--cream-50: #fffdf8;--cream-100: #f7f4ec;--cream-200: #efebe2;--cream-300: #e6e1d6;--cream-400: #d4cec1;--stone-500: #817d74;--stone-600: #656158;--stone-700: #4d4b45;--stone-950: #242724;--sky-800: #00668a;--sky-900: #004c69;--amber-800: #855000;--indigo-800: #4545a3;--emerald-800: #08734e;--rose-800: #b3261e;--color-primary: var(--sky-500);--color-primary-hover: var(--sky-300);--color-primary-active: var(--sky-200);--color-primary-disabled: var(--ink-700);--color-on-primary: var(--ink-950);--color-primary-fill: var(--sky-500);--color-primary-fill-hover: var(--sky-300);--color-primary-fill-active: var(--sky-200);--color-on-primary-fill: var(--ink-950);--color-secondary: var(--amber-300);--color-note-accent: var(--amber-500);--color-tertiary: var(--indigo-300);--color-background: var(--ink-950);--color-surface: var(--ink-900);--color-surface-raised: var(--ink-850);--color-surface-overlay: var(--ink-800);--color-surface-hover: var(--ink-700);--color-text-primary: var(--slate-100);--color-text-secondary: var(--slate-200);--color-text-muted: var(--slate-400);--color-text-disabled: var(--slate-500);--color-border: var(--slate-700);--color-border-control: var(--slate-500);--color-divider: rgb(255 255 255 / 8%);--color-focus: var(--sky-300);--color-success: var(--emerald-500);--color-warning: var(--amber-300);--color-error: var(--rose-200);--color-on-error: var(--rose-950);--color-info: var(--sky-500);--color-info-surface: color-mix(in srgb, var(--color-info) 8%, var(--color-surface));--color-warning-surface: color-mix(in srgb, var(--color-warning) 8%, var(--color-surface));--color-success-surface: color-mix(in srgb, var(--color-success) 8%, var(--color-surface));--color-error-surface: color-mix(in srgb, var(--color-error) 8%, var(--color-surface));--color-surface-card: #161a22;--color-surface-card-hover: #1b202b;--color-border-subtle: #232936;--color-border-light: #2e3646;--color-amber-dim: rgba(245, 158, 11, .12);--color-emerald-dim: rgba(16, 185, 129, .12);--color-cyan-dim: rgba(56, 189, 248, .12);--color-pink-dim: rgba(244, 114, 182, .12);--color-pink-text: #f472b6;--color-pink-border: rgba(244, 114, 182, .2);--shadow-card-elevated: 0 10px 30px -10px rgba(0, 0, 0, .5), 0 1px 2px 0 rgba(255, 255, 255, .05) inset;--shadow-glow-cyan: 0 0 20px -5px rgba(56, 189, 248, .25);--background-accent-color-dark: #11141a;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-pill: 9999px;--radius-control: var(--radius-lg);--radius-card: var(--radius-xl);--radius-modal: var(--radius-xl);--elevation-flat: none;--elevation-edge: inset 0 1px 0 rgb(255 255 255 / 8%);--elevation-focus: 0 0 16px rgb(56 189 248 / 15%);--elevation-note: 0 0 12px rgb(245 158 11 / 12%);--layout-sidebar: 18rem;--layout-inspector: 26rem;--layout-header: 4.5rem;--layout-content: 80rem;--layout-gutter: var(--space-8);--layout-section-gap: var(--space-12);--layout-card-gap: var(--space-4);--layout-form-gap: var(--space-4);--control-height: 2.75rem;--icon-size: 1.25rem;--motion-fast: .14s}:root[data-theme=light]{--color-primary: var(--sky-800);--color-primary-hover: var(--sky-900);--color-primary-active: var(--sky-900);--color-primary-disabled: var(--cream-300);--color-on-primary: var(--cream-50);--color-secondary: var(--amber-800);--color-tertiary: var(--indigo-800);--color-background: var(--cream-100);--color-surface: var(--cream-50);--color-surface-raised: var(--cream-50);--color-surface-overlay: var(--cream-200);--color-surface-hover: var(--cream-300);--color-surface-card: var(--cream-50);--color-surface-card-hover: var(--cream-100);--color-border-subtle: var(--cream-400);--color-border-light: var(--cream-300);--color-amber-dim: rgba(245, 158, 11, .12);--color-emerald-dim: rgba(8, 115, 78, .12);--color-cyan-dim: rgba(0, 102, 138, .12);--color-pink-dim: rgba(219, 39, 119, .12);--color-pink-text: #db2777;--color-pink-border: rgba(219, 39, 119, .2);--shadow-card-elevated: 0 4px 16px rgba(0, 0, 0, .06);--shadow-glow-cyan: 0 0 16px rgba(0, 102, 138, .15);--color-text-primary: var(--stone-950);--color-text-secondary: var(--stone-700);--color-text-muted: var(--stone-600);--color-text-disabled: var(--stone-500);--color-border: var(--cream-400);--color-border-control: var(--stone-500);--color-divider: var(--cream-300);--color-focus: var(--sky-800);--color-success: var(--emerald-800);--color-warning: var(--amber-800);--color-error: var(--rose-800);--color-on-error: var(--cream-50);--color-info: var(--sky-800);--elevation-edge: inset 0 1px 0 var(--cream-50)}@media(max-width:720px){:root{--layout-gutter: var(--space-4);--layout-section-gap: var(--space-8);--layout-header: 4rem}}html{--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--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 var(--font-body);--mat-sys-body-large-font: var(--font-body);--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 var(--font-body);--mat-sys-body-medium-font: var(--font-body);--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 var(--font-body);--mat-sys-body-small-font: var(--font-body);--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem var(--font-heading);--mat-sys-display-large-font: var(--font-heading);--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 var(--font-heading);--mat-sys-display-medium-font: var(--font-heading);--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 var(--font-heading);--mat-sys-display-small-font: var(--font-heading);--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 var(--font-heading);--mat-sys-headline-large-font: var(--font-heading);--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 var(--font-heading);--mat-sys-headline-medium-font: var(--font-heading);--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 var(--font-heading);--mat-sys-headline-small-font: var(--font-heading);--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 var(--font-body);--mat-sys-label-large-font: var(--font-body);--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 var(--font-body);--mat-sys-label-medium-font: var(--font-body);--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 var(--font-body);--mat-sys-label-small-font: var(--font-body);--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 var(--font-heading);--mat-sys-title-large-font: var(--font-heading);--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem var(--font-body);--mat-sys-title-medium-font: var(--font-body);--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 var(--font-body);--mat-sys-title-small-font: var(--font-body);--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;--mat-sys-primary: var(--color-primary);--mat-sys-on-primary: var(--color-on-primary);--mat-sys-primary-container: var(--color-info-surface);--mat-sys-on-primary-container: var(--color-primary-active);--mat-sys-secondary: var(--color-secondary);--mat-sys-on-secondary: var(--color-on-primary);--mat-sys-secondary-container: var(--color-warning-surface);--mat-sys-on-secondary-container: var(--color-secondary);--mat-sys-tertiary: var(--color-tertiary);--mat-sys-on-tertiary: var(--color-on-primary);--mat-sys-tertiary-container: var(--color-surface-overlay);--mat-sys-on-tertiary-container: var(--color-tertiary);--mat-sys-background: var(--color-background);--mat-sys-on-background: var(--color-text-primary);--mat-sys-surface: var(--color-surface);--mat-sys-surface-dim: var(--color-background);--mat-sys-surface-bright: var(--color-surface-hover);--mat-sys-surface-variant: var(--color-surface-overlay);--mat-sys-surface-container-lowest: var(--color-background);--mat-sys-surface-container-low: var(--color-surface);--mat-sys-surface-container: var(--color-surface-raised);--mat-sys-surface-container-high: var(--color-surface-overlay);--mat-sys-surface-container-highest: var(--color-surface-hover);--mat-sys-on-surface: var(--color-text-primary);--mat-sys-on-surface-variant: var(--color-text-secondary);--mat-sys-outline: var(--color-border-control);--mat-sys-outline-variant: var(--color-border);--mat-sys-error: var(--color-error);--mat-sys-on-error: var(--color-on-error);--mat-sys-error-container: var(--color-error-surface);--mat-sys-on-error-container: var(--color-error);--mat-sys-inverse-surface: var(--color-text-primary);--mat-sys-inverse-on-surface: var(--color-background);--mat-sys-inverse-primary: var(--color-on-primary);--mat-sys-surface-tint: var(--color-primary);--mat-sys-corner-extra-small: var(--radius-xs);--mat-sys-corner-small: var(--radius-control);--mat-sys-corner-medium: var(--radius-card);--mat-sys-corner-large: var(--radius-modal);--mat-sys-corner-extra-large: var(--radius-modal);--mat-sys-body-large: var(--type-body-large);--mat-sys-body-large-size: .9375rem;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-medium: var(--type-body);--mat-sys-body-medium-size: .8125rem;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-small: var(--type-caption);--mat-sys-body-small-size: .75rem;--mat-sys-body-small-line-height: 1.125rem;--mat-sys-label-large-size: .8125rem;--mat-sys-label-large-tracking: 0;--mat-sys-label-medium-size: .6875rem;--mat-sys-label-medium-tracking: .04em;--mat-sys-label-small-size: .625rem;--mat-sys-label-small-tracking: .06em;--mat-sys-title-large: var(--type-title);--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-line-height: 1.875rem;--mat-sys-title-medium: var(--type-subtitle);--mat-sys-title-medium-size: 1.125rem;--mat-sys-title-medium-line-height: 1.625rem;--mat-sys-headline-large: var(--type-heading);--mat-sys-headline-large-size: 1.75rem;--mat-sys-headline-large-line-height: 2.25rem;--mat-sys-display-large: var(--type-display);--mat-sys-display-large-size: 2.5rem;--mat-sys-display-large-line-height: 3rem;--mat-sys-level0: none;--mat-sys-level1: var(--elevation-edge);--mat-sys-level2: var(--elevation-edge);--mat-sys-level3: var(--elevation-edge);--mat-sys-level4: var(--elevation-edge);--mat-sys-level5: var(--elevation-edge);--mat-button-filled-container-color: var(--color-primary-fill);--mat-button-filled-label-text-color: var(--color-on-primary-fill);--mat-button-filled-container-shape: var(--radius-control);--mat-button-outlined-container-shape: var(--radius-control);--mat-button-text-container-shape: var(--radius-control);--mat-button-protected-container-shape: var(--radius-control);--mat-button-tonal-container-shape: var(--radius-control);--mat-button-filled-container-height: var(--control-height);--mat-button-outlined-container-height: var(--control-height);--mat-button-text-container-height: var(--control-height);--mat-button-filled-disabled-container-color: var(--color-primary-disabled);--mat-button-filled-disabled-label-text-color: var(--color-text-disabled);--mat-button-outlined-outline-color: var(--color-border-control);--mat-icon-button-container-shape: var(--radius-control);--mat-form-field-outlined-container-shape: var(--radius-control);--mat-form-field-outlined-outline-color: var(--color-border-subtle);--mat-form-field-outlined-hover-outline-color: var(--color-border-control);--mat-form-field-outlined-focus-outline-color: var(--color-primary);--mat-form-field-outlined-focus-label-text-color: var(--color-primary);--mat-form-field-outlined-label-text-color: var(--color-text-muted);--mat-form-field-outlined-input-text-color: var(--color-text-primary);--mat-form-field-outlined-input-text-placeholder-color: var(--color-text-disabled);--mat-form-field-outlined-error-hover-label-text-color: var(--color-error);--mat-form-field-outlined-error-hover-outline-color: var(--color-error);--mat-form-field-outlined-disabled-input-text-color: var(--color-text-disabled);--mat-form-field-outlined-disabled-label-text-color: var(--color-text-disabled);--mat-card-outlined-container-color: var(--color-surface);--mat-card-outlined-container-shape: var(--radius-card);--mat-card-outlined-outline-color: var(--color-border);--mat-card-elevated-container-color: var(--color-surface-raised);--mat-dialog-container-color: var(--color-surface-raised);--mat-dialog-container-shape: var(--radius-modal);--mat-chip-container-shape-radius: var(--radius-control);--mat-chip-label-text-size: .75rem;--mat-chip-elevated-selected-container-color: var(--color-info-surface);--mat-chip-selected-label-text-color: var(--color-primary);--mat-chip-with-icon-selected-icon-color: var(--color-primary);--mat-chip-selected-focus-state-layer-color: var(--color-primary);--mat-chip-selected-hover-state-layer-color: var(--color-primary);--mat-snack-bar-container-color: var(--color-surface-overlay);--mat-snack-bar-supporting-text-color: var(--color-text-primary);--mat-snack-bar-button-color: var(--color-primary);--mat-sidenav-container-background-color: var(--color-background);--mat-sidenav-content-background-color: var(--color-background);--mat-sidenav-container-shape: 0;--mat-toolbar-container-background-color: var(--color-background);--mat-toolbar-container-text-color: var(--color-text-primary)}.danger-link,.end-session{--mat-button-text-label-text-color: var(--color-error);--mat-button-outlined-label-text-color: var(--color-error)}.delete-button{--mat-button-filled-container-color: var(--color-error);--mat-button-filled-label-text-color: var(--color-on-error)}[mat-flat-button]:not(:disabled):not(.delete-button):hover{--mat-button-filled-container-color: var(--color-primary-fill-hover)}[mat-flat-button]:not(:disabled):not(.delete-button):active{--mat-button-filled-container-color: var(--color-primary-fill-active)}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk.ttf) format("truetype")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono.ttf) format("truetype")}:root{--font-heading: "Space Grotesk", "Segoe UI", sans-serif;--font-body: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--type-display: 700 2.5rem/3rem var(--font-heading);--type-heading: 600 1.75rem/2.25rem var(--font-heading);--type-title: 600 1.375rem/1.875rem var(--font-heading);--type-subtitle: 500 1.125rem/1.625rem var(--font-heading);--type-body-large: 400 .9375rem/1.5rem var(--font-body);--type-body: 400 .8125rem/1.25rem var(--font-body);--type-caption: 400 .75rem/1.125rem var(--font-body);--type-label: 500 .6875rem/1rem var(--font-body);--type-label-small: 500 .625rem/.875rem var(--font-body);--tracking-heading: -.02em;--tracking-label: .04em}h1,h2,h3,h4,p{margin-top:0}h1{font:var(--type-heading);letter-spacing:var(--tracking-heading)}h2{font:var(--type-title);letter-spacing:-.01em}h3{font:var(--type-subtitle)}h4{font:var(--type-body);font-weight:600}p{line-height:1.6}h1,h2,h3{text-wrap:balance;overflow-wrap:anywhere}@media(max-width:720px){:root{--type-display: 700 2rem/2.5rem var(--font-heading)}}.section-heading,.inline-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.section-heading{justify-content:space-between;margin-bottom:var(--space-4)}.section-heading h2{margin:0}.inline-actions{margin-top:var(--space-4)}.loading-state{display:grid;min-height:12rem;place-content:center;justify-items:center;gap:var(--space-4);color:var(--color-text-muted)}.supporting-copy,.muted{color:var(--color-text-muted)}.confirm-copy{color:var(--color-error)}.collection-count,.category-summary{color:var(--color-text-muted);font:var(--type-caption)}.form-actions{padding-top:var(--space-2)}mat-form-field{width:100%;min-width:0}mat-card{min-width:0}mat-card-content{overflow-wrap:anywhere}mat-card-content:first-child{padding-top:var(--space-6)}mat-card-content:last-child{padding-bottom:var(--space-6)}mat-card-content{padding-inline:var(--space-6)}.vault-control-wrap{position:relative;min-width:170px;display:flex;flex-direction:column}.vault-floating-label{position:absolute;top:-7px;left:10px;padding:0 4px;background:var(--color-surface);font-size:.625rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;line-height:1;z-index:1;pointer-events:none}.vault-input,.vault-select{width:100%;box-sizing:border-box;background:var(--color-surface-card, var(--color-surface-raised));border:1px solid var(--color-border-subtle, var(--color-border));border-radius:var(--radius-lg);padding:.55rem .75rem;font:var(--type-body);font-size:.8125rem;color:var(--color-text-primary);transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.vault-input::placeholder,.vault-select::placeholder{color:var(--color-text-disabled)}.vault-input:hover:not(:disabled),.vault-select:hover:not(:disabled){border-color:var(--color-border-control)}.vault-input:focus,.vault-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.vault-input:disabled,.vault-select:disabled{opacity:.6;cursor:not-allowed}.vault-select-container{position:relative;display:flex;align-items:center;width:100%}.vault-select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:2rem}.vault-select-arrow{position:absolute;right:.625rem;width:.875rem;height:.875rem;pointer-events:none;color:var(--color-text-muted)}.tag-chip{display:inline-flex;align-items:center;font-family:var(--font-mono, monospace);font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-muted);text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all var(--motion-fast)}.tag-chip:hover{background:var(--color-cyan-dim);color:var(--color-primary);border-color:var(--color-primary-hover)}.vault-pill-group{display:inline-flex;align-items:center;background:var(--color-surface-card, var(--color-surface-raised));border:1px solid var(--color-border-subtle, var(--color-border));border-radius:var(--radius-lg);padding:.25rem;gap:.25rem}.vault-pill-button{padding:.25rem .625rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-md);border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all var(--motion-fast)}.vault-pill-button:hover:not(.active){color:var(--color-text-primary)}.vault-pill-button.active{background:var(--color-border-control, var(--color-surface-hover));color:var(--color-text-primary);font-weight:600}.auth-page{display:flex;flex-direction:column;justify-content:space-between;min-height:100dvh;background-color:var(--color-background);color:var(--color-text-primary);transition:background-color var(--motion-fast),color var(--motion-fast)}.auth-topbar{width:100%;max-width:72rem;margin-inline:auto;padding:var(--space-6);display:flex;align-items:center;justify-content:space-between}.auth-topbar .brand-link{display:inline-flex;align-items:center;gap:.625rem;text-decoration:none;transition:opacity var(--motion-fast)}.auth-topbar .brand-link:hover{opacity:.85}.auth-topbar .brand-icon-box{width:2rem;height:2rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);background-color:var(--color-surface);padding:.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 2px #0003}.auth-topbar .brand-icon-box img{width:100%;height:100%;object-fit:contain}.auth-topbar .brand-name{font:var(--font-heading);font-size:.875rem;font-weight:600;letter-spacing:-.02em;color:var(--color-text-primary)}.auth-topbar .topbar-actions{display:flex;align-items:center;gap:var(--space-3)}.auth-topbar .lang-toggle-btn{font-family:var(--font-body);font-size:.75rem;color:var(--color-text-muted);background:transparent;border:none;padding:.25rem .5rem;border-radius:var(--radius-sm);cursor:pointer;transition:color var(--motion-fast)}.auth-topbar .lang-toggle-btn:hover{color:var(--color-text-primary)}.auth-canvas{width:100%;max-width:420px;margin:auto;padding:var(--space-4) var(--space-5) var(--space-8)}.auth-hero{text-align:center;margin-bottom:var(--space-6)}.auth-hero .auth-mark-box{position:relative;display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:1rem;background-color:var(--color-surface);border:1px solid var(--color-border);padding:.625rem;margin-bottom:var(--space-4);box-shadow:0 10px 25px -5px #0006}.auth-hero .auth-mark-box .auth-mark-glow{position:absolute;inset:-2px;border-radius:1.125rem;background:radial-gradient(circle,rgba(56,189,248,.2) 0%,transparent 70%);filter:blur(4px);z-index:-1}.auth-hero .auth-mark-box img{width:100%;height:100%;object-fit:contain}.auth-hero .auth-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:var(--space-2)}.auth-hero .auth-subtitle{font-family:var(--font-body);font-size:.8125rem;line-height:1.4;color:var(--color-text-muted);max-width:22rem;margin-inline:auto}.auth-tabs-nav{display:flex;padding:.25rem;background-color:var(--color-surface-card, var(--color-surface-raised));border:1px solid var(--color-border-subtle, var(--color-border));border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.auth-tabs-nav .auth-tab-link{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .75rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:.75rem;font-weight:500;text-decoration:none;color:var(--color-text-muted);border:1px solid transparent;background:transparent;transition:all var(--motion-fast);cursor:pointer}.auth-tabs-nav .auth-tab-link:hover:not(.active){color:var(--color-text-primary)}.auth-tabs-nav .auth-tab-link.active{background-color:var(--color-surface-hover, #1e2430);color:var(--color-primary);border-color:var(--color-border);font-weight:600;box-shadow:0 1px 2px #0003}.auth-tabs-nav .auth-tab-link .tab-dot{width:6px;height:6px;border-radius:50%;background-color:var(--color-primary)}.auth-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-7);box-shadow:0 20px 40px -15px #000000b3,0 0 1px 1px #38bdf814}@media(max-width:480px){.auth-card{padding:var(--space-5) var(--space-4)}}html[data-theme=light] .auth-card{box-shadow:0 10px 30px -10px #00000014,0 1px 2px #0000000d}.social-providers{display:flex;flex-direction:column;gap:.625rem;margin-bottom:var(--space-5)}.social-providers .social-btn{width:100%;height:2.5rem;padding:0 var(--space-4);border-radius:var(--radius-lg);background-color:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text-primary);font-family:var(--font-body);font-size:.8125rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;transition:all var(--motion-fast)}.social-providers .social-btn:hover:not(:disabled){background-color:var(--color-surface-hover);border-color:#38bdf899}.social-providers .social-btn:active:not(:disabled){transform:scale(.99)}.social-providers .social-btn:disabled{opacity:.6;cursor:not-allowed}.social-providers .social-btn .social-icon,.social-providers .social-btn .spinner{width:1.125rem;height:1.125rem;flex-shrink:0}.social-providers .social-btn .spinner{animation:spin 1s linear infinite}.auth-divider{position:relative;display:flex;align-items:center;justify-content:center;margin:var(--space-5) 0}.auth-divider .divider-line{width:100%;border-top:1px solid var(--color-border-subtle, var(--color-border))}.auth-divider .divider-text{position:absolute;background-color:var(--color-surface);padding:0 .75rem;font-family:var(--font-body);font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form .auth-field{display:flex;flex-direction:column;gap:.375rem}.auth-form .auth-label-row{display:flex;align-items:center;justify-content:space-between}.auth-form .auth-label{font-family:var(--font-body);font-size:.75rem;color:var(--color-text-muted);margin-bottom:0}.auth-form .auth-label-hint{font-family:var(--font-body);font-size:.6875rem;color:var(--color-primary)}.auth-form .auth-forgot-link{font-family:var(--font-body);font-size:.75rem;color:var(--color-text-muted);text-decoration:none;transition:color var(--motion-fast)}.auth-form .auth-forgot-link:hover{color:var(--color-primary);text-decoration:underline}.auth-form .auth-input-wrap{position:relative;width:100%}.auth-form .auth-input{width:100%;height:2.5rem;padding:0 .75rem;border-radius:var(--radius-lg);background-color:var(--color-background);border:1px solid var(--color-border);color:var(--color-text-primary);font-family:var(--font-body);font-size:.8125rem;transition:all var(--motion-fast)}.auth-form .auth-input::placeholder{color:var(--color-text-disabled)}.auth-form .auth-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px #38bdf84d}.auth-form .auth-input.has-toggle{padding-right:2.5rem}.auth-form .auth-eye-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:.25rem;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--motion-fast)}.auth-form .auth-eye-btn:hover{color:var(--color-primary)}.auth-form .auth-eye-btn svg{width:1rem;height:1rem}.auth-form .auth-extra-row{display:flex;align-items:center;justify-content:space-between;padding-top:.25rem}.auth-form .auth-extra-row .auth-checkbox-label{display:flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.75rem;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--motion-fast)}.auth-form .auth-extra-row .auth-checkbox-label:hover{color:var(--color-text-primary)}.auth-form .auth-extra-row .auth-checkbox-label input[type=checkbox]{width:.875rem;height:.875rem;border-radius:var(--radius-xs);border:1px solid var(--color-border);background-color:var(--color-background);accent-color:var(--color-primary);cursor:pointer}.auth-form .auth-submit-btn{width:100%;height:2.5rem;padding:0 var(--space-4);border-radius:var(--radius-lg);background-color:var(--color-primary-fill);color:var(--color-on-primary-fill);font-family:var(--font-heading);font-size:.875rem;font-weight:600;letter-spacing:-.01em;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;box-shadow:0 0 16px #38bdf840;transition:all var(--motion-fast)}.auth-form .auth-submit-btn .auth-submit-content{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.auth-form .auth-submit-btn:hover:not(:disabled){background-color:var(--color-primary-fill-hover);box-shadow:0 0 20px #38bdf866}.auth-form .auth-submit-btn:active:not(:disabled){transform:scale(.99)}.auth-form .auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-form .auth-submit-btn .arrow-icon,.auth-form .auth-submit-btn .spinner{width:1rem;height:1rem}.auth-form .auth-submit-btn .spinner{animation:spin 1s linear infinite}.auth-message-box{padding:.625rem .75rem;border-radius:var(--radius-lg);font-family:var(--font-body);font-size:.75rem;display:flex;align-items:center;gap:.5rem}.auth-message-box.error{background-color:#69000540;border:1px solid rgba(255,180,171,.3);color:var(--color-error)}html[data-theme=light] .auth-message-box.error{background-color:#b3261e14;border-color:#b3261e33}.auth-message-box.info{background-color:#38bdf81a;border:1px solid rgba(56,189,248,.3);color:var(--color-primary)}.auth-message-box svg{width:.875rem;height:.875rem;flex-shrink:0}.auth-switch-prompt{text-align:center;margin-top:var(--space-5)}.auth-switch-prompt .switch-text{font-size:.75rem;color:var(--color-text-muted);margin:0}.auth-switch-prompt .switch-link{color:var(--color-text-primary);font-weight:500;text-decoration:underline;text-underline-offset:3px;margin-left:.25rem;transition:color var(--motion-fast)}.auth-switch-prompt .switch-link:hover{color:var(--color-primary)}.auth-footer{width:100%;max-width:72rem;margin-inline:auto;padding:var(--space-6);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);font-size:.75rem;color:var(--color-text-muted)}.auth-footer .footer-left,.auth-footer .footer-right{display:flex;align-items:center;gap:var(--space-4)}.auth-footer .footer-sep{color:var(--color-border-control)}.auth-footer .footer-motto{font-style:italic}.auth-footer .footer-link{color:var(--color-text-muted);text-decoration:none;transition:color var(--motion-fast)}.auth-footer .footer-link:hover{color:var(--color-text-primary)}.auth-footer .status-indicator{display:inline-flex;align-items:center;gap:.375rem;color:var(--color-text-muted)}.auth-footer .status-dot{width:6px;height:6px;border-radius:50%;background-color:var(--color-success);box-shadow:0 0 8px #10b98199;animation:pulse-dot 2s infinite ease-in-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}*{box-sizing:border-box}html{color-scheme:dark;background:var(--color-background);color:var(--color-text-primary)}html[data-theme=light]{color-scheme:light}body{margin:0;min-width:320px;min-height:100dvh;font:var(--type-body)}button,input,textarea,select{font:inherit}input,textarea{caret-color:var(--color-primary)}textarea{resize:vertical}a{color:var(--color-primary);text-underline-offset:.2em}::selection{background:var(--color-primary);color:var(--color-on-primary)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}*{scrollbar-color:var(--color-border-control) var(--color-background);scrollbar-width:thin}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto;animation-duration:.01ms;transition-duration:.01ms}}
