@font-face{font-family:Inter;src:url("./media/InterVariable-6AWDNXUR.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url("./media/InterVariable-Italic-W5OZJM2G.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@layer innfinity-tokens{:root{--inf-primitive-color-teal-25: #f5f9fb;--inf-primitive-color-teal-50: #eef4f7;--inf-primitive-color-teal-100: #d4e2e9;--inf-primitive-color-teal-200: #a8c3cf;--inf-primitive-color-teal-300: #6a8fa1;--inf-primitive-color-teal-400: #38667c;--inf-primitive-color-teal-500: #1e4759;--inf-primitive-color-teal-600: #0b3a50;--inf-primitive-color-teal-700: #053247;--inf-primitive-color-teal-800: #042939;--inf-primitive-color-teal-900: #021a25;--inf-primitive-color-sky-25: #f3fbfe;--inf-primitive-color-sky-50: #e7f5fc;--inf-primitive-color-sky-100: #c7e8f7;--inf-primitive-color-sky-200: #9ed8f1;--inf-primitive-color-sky-300: #63c1ec;--inf-primitive-color-sky-400: #3ca8db;--inf-primitive-color-sky-500: #1e8dc2;--inf-primitive-color-sky-600: #12709d;--inf-primitive-color-sky-700: #0b567a;--inf-primitive-color-sky-800: #084258;--inf-primitive-color-neutral-0: #ffffff;--inf-primitive-color-neutral-25: #fafbfb;--inf-primitive-color-neutral-50: #f5f7f8;--inf-primitive-color-neutral-100: #e6ebed;--inf-primitive-color-neutral-200: #cdd6da;--inf-primitive-color-neutral-250: #b4c2c8;--inf-primitive-color-neutral-300: #9badb5;--inf-primitive-color-neutral-400: #8299a3;--inf-primitive-color-neutral-500: #698591;--inf-primitive-color-neutral-600: #50707e;--inf-primitive-color-neutral-700: #375c6c;--inf-primitive-color-neutral-800: #224455;--inf-primitive-color-neutral-900: #0f2a39;--inf-primitive-color-success-50: #ecfdf3;--inf-primitive-color-success-100: #d1fadf;--inf-primitive-color-success-500: #12b76a;--inf-primitive-color-success-600: #039855;--inf-primitive-color-success-700: #027a48;--inf-primitive-color-warning-50: #fffaeb;--inf-primitive-color-warning-100: #fef0c7;--inf-primitive-color-warning-500: #f79009;--inf-primitive-color-warning-600: #dc6803;--inf-primitive-color-warning-700: #b54708;--inf-primitive-color-error-50: #fef3f2;--inf-primitive-color-error-100: #fee4e2;--inf-primitive-color-error-500: #f04438;--inf-primitive-color-error-600: #d92d20;--inf-primitive-color-error-700: #b42318;--inf-semantic-color-bg-primary: #ffffff;--inf-semantic-color-bg-secondary: #f5f7f8;--inf-semantic-color-bg-tertiary: #e6ebed;--inf-semantic-color-bg-inverse: #053247;--inf-semantic-color-bg-inverse-soft: #1e4759;--inf-semantic-color-bg-brand: #053247;--inf-semantic-color-bg-brand-soft: #d4e2e9;--inf-semantic-color-bg-accent: #63c1ec;--inf-semantic-color-bg-success: #ecfdf3;--inf-semantic-color-bg-warning: #fffaeb;--inf-semantic-color-bg-error: #fef3f2;--inf-semantic-color-bg-hover: color-mix(in oklab, var(--inf-semantic-color-bg-primary) 95%, var(--inf-semantic-color-fg-primary));--inf-semantic-color-bg-active: color-mix(in oklab, var(--inf-semantic-color-bg-primary) 92%, var(--inf-semantic-color-fg-primary));--inf-semantic-color-brand-hover: color-mix(in oklab, var(--inf-semantic-color-bg-brand) 92%, var(--inf-semantic-color-fg-primary));--inf-semantic-color-fg-primary: #053247;--inf-semantic-color-fg-secondary: #375c6c;--inf-semantic-color-fg-tertiary: #52707c;--inf-semantic-color-fg-quaternary: #5e7a86;--inf-semantic-color-fg-icon: var(--inf-primitive-color-neutral-250);--inf-semantic-color-fg-inverse: #ffffff;--inf-semantic-color-fg-inverse-soft: #9fb3bc;--inf-semantic-color-fg-brand: #053247;--inf-semantic-color-fg-accent: var(--inf-primitive-color-sky-500);--inf-semantic-color-fg-success: #027a48;--inf-semantic-color-fg-warning: #b54708;--inf-semantic-color-fg-error: #b42318;--inf-semantic-color-border-primary: #cdd6da;--inf-semantic-color-border-secondary: #e6ebed;--inf-semantic-color-border-strong: #9badb5;--inf-semantic-color-border-brand: #053247;--inf-semantic-color-border-accent: #63c1ec;--inf-semantic-color-border-error: #f04438;--inf-semantic-color-border-inverse: rgba(255, 255, 255, .14);--inf-semantic-color-bg-canvas: #ffffff;--inf-semantic-color-bg-canvas-sunken: var(--inf-semantic-color-bg-secondary);--inf-semantic-color-fg-emphasis: var(--inf-primitive-color-teal-900);--inf-semantic-color-fg-quiet: var(--inf-primitive-color-neutral-600);--inf-semantic-color-border-divider: var(--inf-semantic-color-border-secondary);--inf-semantic-color-border-focus: var(--inf-primitive-color-sky-500);--inf-semantic-dark-color-bg-canvas: var(--inf-primitive-color-teal-900);--inf-semantic-dark-color-bg-canvas-sunken: var(--inf-primitive-color-teal-900);--inf-semantic-dark-color-fg-emphasis: var(--inf-primitive-color-neutral-25);--inf-semantic-dark-color-fg-quiet: var(--inf-primitive-color-neutral-500);--inf-semantic-dark-color-border-divider: rgba(255, 255, 255, .08);--inf-semantic-dark-color-border-focus: var(--inf-primitive-color-sky-300);--inf-semantic-dark-color-bg-primary: #0f2a39;--inf-semantic-dark-color-bg-secondary: #042939;--inf-semantic-dark-color-bg-tertiary: #053247;--inf-semantic-dark-color-bg-inverse: #f5f7f8;--inf-semantic-dark-color-bg-inverse-soft: #e6ebed;--inf-semantic-dark-color-bg-brand: #1e4759;--inf-semantic-dark-color-bg-brand-soft: rgba(106, 143, 161, .18);--inf-semantic-dark-color-bg-success: rgba(18, 183, 106, .12);--inf-semantic-dark-color-bg-warning: rgba(247, 144, 9, .12);--inf-semantic-dark-color-bg-error: rgba(240, 68, 56, .12);--inf-semantic-dark-color-bg-hover: color-mix(in oklab, var(--inf-semantic-dark-color-bg-primary) 95%, var(--inf-semantic-dark-color-fg-primary));--inf-semantic-dark-color-bg-active: color-mix(in oklab, var(--inf-semantic-dark-color-bg-primary) 92%, var(--inf-semantic-dark-color-fg-primary));--inf-semantic-dark-color-brand-hover: color-mix(in oklab, var(--inf-semantic-dark-color-bg-brand) 88%, var(--inf-semantic-dark-color-fg-primary));--inf-semantic-dark-color-fg-primary: #f5f7f8;--inf-semantic-dark-color-fg-secondary: #c6d1d6;--inf-semantic-dark-color-fg-tertiary: #aebcc3;--inf-semantic-dark-color-fg-quaternary: #a3bbc5;--inf-semantic-dark-color-fg-icon: var(--inf-primitive-color-neutral-300);--inf-semantic-dark-color-fg-inverse: #053247;--inf-semantic-dark-color-fg-inverse-soft: #50707e;--inf-semantic-dark-color-fg-brand: #63c1ec;--inf-semantic-dark-color-fg-accent: #63c1ec;--inf-semantic-dark-color-border-primary: rgba(255, 255, 255, .1);--inf-semantic-dark-color-border-secondary: rgba(255, 255, 255, .06);--inf-semantic-dark-color-border-strong: rgba(255, 255, 255, .18);--inf-semantic-dark-color-border-inverse: #cdd6da;--inf-semantic-dark-color-fg-success: #32d583;--inf-semantic-dark-color-fg-warning: #fdb022;--inf-semantic-dark-color-fg-error: #f97066;--inf-semantic-dark-color-fg-info: #63c1ec;--inf-semantic-dark-color-bg-neutral-soft: rgba(255, 255, 255, .08);--inf-semantic-dark-color-bg-info: rgba(99, 193, 236, .12);--inf-semantic-dark-btn-primary: 0 1px 2px 0 rgba(0,0,0,.2), inset 0 0 0 1px rgba(255,255,255,.08);--typography-font-family-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--typography-font-weight-regular: 400;--typography-font-weight-medium: 500;--typography-font-weight-semibold: 600;--typography-font-weight-bold: 700;--typography-font-size-display-2xl: 72px;--typography-font-size-display-xl: 60px;--typography-font-size-display-lg: 48px;--typography-font-size-display-md: 36px;--typography-font-size-display-sm: 30px;--typography-font-size-display-xs: 24px;--typography-font-size-xl: 20px;--typography-font-size-lg: 18px;--typography-font-size-md: 16px;--typography-font-size-sm: 14px;--typography-font-size-xs: 12px;--typography-line-height-display-2xl: 90px;--typography-line-height-display-xl: 72px;--typography-line-height-display-lg: 60px;--typography-line-height-display-md: 44px;--typography-line-height-display-sm: 38px;--typography-line-height-display-xs: 32px;--typography-line-height-xl: 30px;--typography-line-height-lg: 28px;--typography-line-height-md: 24px;--typography-line-height-sm: 20px;--typography-line-height-xs: 18px;--typography-letter-spacing-display-2xl: -.02em;--typography-letter-spacing-display-xl: -.02em;--typography-letter-spacing-display-lg: -.02em;--typography-letter-spacing-display-md: -.02em;--spacing-numeric-1: 2px;--spacing-numeric-2: 4px;--spacing-numeric-3: 6px;--spacing-numeric-4: 8px;--spacing-numeric-5: 10px;--spacing-numeric-6: 12px;--spacing-numeric-8: 16px;--spacing-numeric-10: 20px;--spacing-numeric-12: 24px;--spacing-numeric-16: 32px;--spacing-numeric-20: 40px;--spacing-numeric-24: 48px;--spacing-numeric-32: 64px;--spacing-numeric-40: 80px;--spacing-named-xs: 4px;--spacing-named-sm: 6px;--spacing-named-md: 8px;--spacing-named-lg: 10px;--spacing-named-xl: 12px;--spacing-named-2xl: 16px;--spacing-named-3xl: 20px;--spacing-named-4xl: 24px;--spacing-named-5xl: 32px;--spacing-named-6xl: 40px;--spacing-named-7xl: 48px;--spacing-named-8xl: 64px;--spacing-named-9xl: 80px;--spacing-named-10xl: 120px;--spacing-named-11xl: 160px;--radius-none: 0;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 10px;--radius-2xl: 12px;--radius-3xl: 16px;--radius-4xl: 20px;--radius-full: 9999px;--inf-border-width-thin: 1px;--inf-border-width-accent: 2px;--shadow-xs: 0 1px 2px 0 rgba(16,24,40,.05);--shadow-sm: 0 1px 3px 0 rgba(16,24,40,.1), 0 1px 2px -1px rgba(16,24,40,.06);--shadow-md: 0 4px 8px -2px rgba(16,24,40,.1), 0 2px 4px -2px rgba(16,24,40,.06);--shadow-lg: 0 12px 16px -4px rgba(16,24,40,.08), 0 4px 6px -2px rgba(16,24,40,.03);--shadow-xl: 0 20px 24px -4px rgba(16,24,40,.08), 0 8px 8px -4px rgba(16,24,40,.03);--shadow-2xl: 0 24px 48px -12px rgba(16,24,40,.18);--shadow-btn-primary: 0 1px 2px 0 rgba(5,51,71,.05), inset 0 0 0 1px rgba(0,0,0,.2);--shadow-calendar-elevated: 0 12px 24px -6px rgba(15,42,57,.1), 0 4px 8px -2px rgba(15,42,57,.06), 0 1px 2px 0 rgba(15,42,57,.04);--motion-duration-instant: 0ms;--motion-duration-micro: 80ms;--motion-duration-fast: .12s;--motion-duration-base: .18s;--motion-duration-slow: .26s;--motion-duration-xslow: .36s;--motion-duration-spin: .8s;--motion-duration-skeleton-shimmer: 1.6s;--motion-duration-skeleton-pulse: 1.2s;--motion-easing-standard: cubic-bezier(.2, 0, .38, .9);--motion-easing-decelerate: cubic-bezier(0, 0, .3, 1);--motion-easing-accelerate: cubic-bezier(.4, 0, 1, 1);--motion-easing-emphasized: cubic-bezier(.05, .7, .1, 1);--motion-easing-emphasized-exit: cubic-bezier(.3, 0, .8, .15);--motion-easing-out: cubic-bezier(.16, 1, .3, 1);--motion-easing-in-out: cubic-bezier(.65, 0, .35, 1);--motion-easing-linear: linear;--motion-transition-color: color var(--motion-duration-fast) var(--motion-easing-standard);--motion-transition-bg: background-color var(--motion-duration-fast) var(--motion-easing-standard);--motion-transition-border: border-color var(--motion-duration-fast) var(--motion-easing-standard);--motion-transition-transform: transform var(--motion-duration-base) var(--motion-easing-standard);--motion-transition-opacity: opacity var(--motion-duration-base) var(--motion-easing-standard);--motion-transition-shadow: box-shadow var(--motion-duration-fast) var(--motion-easing-standard);--typography-font-smoothing-webkit: antialiased;--typography-font-smoothing-moz: grayscale;--typography-optical-sizing: auto;--typography-text-rendering: optimizeLegibility;--typography-font-feature-base: "calt" 1, "liga" 1;--typography-font-variant-numeric: tabular-nums;--typography-font-feature-numeric: "tnum" 1, "zero" 1;--font-size-xs: var(--typography-font-size-xs);--font-size-sm: var(--typography-font-size-sm);--font-size-md: var(--typography-font-size-md);--font-size-lg: var(--typography-font-size-lg);--font-size-xl: var(--typography-font-size-xl);--font-size-2xs: 13px;--font-size-3xs: 11px;--line-height-none: 1;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-loose: 1.75;--inf-size-badge-sm: 22px;--inf-size-badge-md: 24px;--inf-size-badge-lg: 28px;--inf-size-indicator-sm: 16px;--inf-size-indicator-md: 20px;--inf-size-indicator-lg: 24px;--inf-color-bg: var(--inf-semantic-color-bg-primary);--inf-color-bg-inverse: var(--inf-semantic-color-bg-inverse);--inf-color-bg-inverse-soft: var(--inf-semantic-color-bg-inverse-soft);--inf-color-bg-subtle: var(--inf-semantic-color-bg-secondary);--inf-color-bg-muted: var(--inf-semantic-color-bg-tertiary);--inf-color-bg-brand: var(--inf-semantic-color-bg-brand);--inf-color-bg-brand-hover: var(--inf-primitive-color-teal-600);--inf-color-bg-brand-active: var(--inf-primitive-color-teal-800);--inf-color-bg-brand-soft: var(--inf-semantic-color-bg-brand-soft);--inf-color-bg-danger: var(--inf-primitive-color-error-600);--inf-color-bg-danger-hover: var(--inf-primitive-color-error-700);--inf-color-bg-danger-soft: var(--inf-semantic-color-bg-error);--inf-color-bg-success-soft: var(--inf-semantic-color-bg-success);--inf-color-bg-warning-soft: var(--inf-semantic-color-bg-warning);--inf-color-bg-info-soft: var(--inf-primitive-color-sky-50);--inf-color-bg-neutral-soft: var(--inf-primitive-color-neutral-100);--inf-color-bg-success-strong: var(--inf-primitive-color-success-600);--inf-color-bg-warning-strong: var(--inf-primitive-color-warning-500);--inf-color-bg-info-strong: var(--inf-primitive-color-sky-500);--inf-color-fg: var(--inf-semantic-color-fg-primary);--inf-color-fg-secondary: var(--inf-semantic-color-fg-secondary);--inf-color-fg-tertiary: var(--inf-semantic-color-fg-tertiary);--inf-color-fg-quaternary: var(--inf-semantic-color-fg-quaternary);--inf-color-fg-icon: var(--inf-semantic-color-fg-icon);--inf-color-fg-inverse: var(--inf-semantic-color-fg-inverse);--inf-color-fg-inverse-soft: var(--inf-semantic-color-fg-inverse-soft);--inf-color-fg-brand: var(--inf-semantic-color-fg-brand);--inf-color-fg-accent: var(--inf-semantic-color-fg-accent);--inf-color-fg-success: var(--inf-semantic-color-fg-success);--inf-color-fg-warning: var(--inf-semantic-color-fg-warning);--inf-color-fg-error: var(--inf-semantic-color-fg-error);--inf-color-fg-info: var(--inf-primitive-color-sky-700);--inf-color-fg-disabled: var(--inf-primitive-color-neutral-400);--inf-color-fg-on-brand: var(--inf-semantic-color-fg-inverse);--inf-color-fg-on-danger: var(--inf-semantic-color-fg-inverse);--inf-color-fg-link: var(--inf-semantic-color-fg-accent);--inf-color-fg-link-hover: var(--inf-primitive-color-sky-700);--inf-color-border: var(--inf-semantic-color-border-primary);--inf-color-border-subtle: var(--inf-semantic-color-border-secondary);--inf-color-border-strong: var(--inf-semantic-color-border-strong);--inf-color-border-brand: var(--inf-semantic-color-border-brand);--inf-color-border-error: var(--inf-semantic-color-border-error);--inf-color-border-success: var(--inf-primitive-color-success-500);--inf-color-border-info: var(--inf-primitive-color-sky-500);--inf-color-border-warning: var(--inf-primitive-color-warning-500);--inf-color-border-disabled: var(--inf-semantic-color-border-secondary);--inf-color-focus-ring: var(--inf-primitive-color-teal-500);--inf-color-border-focus: var(--inf-primitive-color-sky-300);--inf-color-overlay-hover: rgba(15, 42, 57, .06);--inf-color-overlay-active: rgba(15, 42, 57, .1);--inf-color-overlay-hover-solid: #f2f5f6;--inf-color-overlay-inverse-hover: color-mix(in oklab, transparent 88%, var(--inf-color-fg-inverse));--inf-color-overlay-inverse-active: color-mix(in oklab, transparent 82%, var(--inf-color-fg-inverse));--inf-color-scrim: rgba(2, 26, 37, .45);--inf-color-bg-disabled: var(--inf-semantic-color-bg-tertiary);--inf-primitive-color-gold-500: #efbc43;--inf-primitive-color-gold-600: #e5a520;--inf-color-bg-brand-accent: var(--inf-primitive-color-gold-500);--inf-color-bg-brand-accent-hover: var(--inf-primitive-color-gold-600);--inf-color-border-brand-accent: var(--inf-primitive-color-gold-600);--inf-color-bg-accent: var(--inf-semantic-color-bg-accent);--inf-color-bg-accent-hover: var(--inf-primitive-color-sky-400);--inf-color-fg-on-accent: var(--inf-color-fg);--inf-color-chart-1: var(--inf-primitive-color-teal-500);--inf-color-chart-2: var(--inf-primitive-color-sky-500);--inf-color-chart-3: var(--inf-primitive-color-gold-600);--inf-color-chart-4: var(--inf-primitive-color-success-600);--inf-color-chart-5: var(--inf-primitive-color-error-500);--inf-color-chart-6: var(--inf-primitive-color-neutral-500);--inf-color-chart-grid: var(--inf-color-border-subtle);--inf-color-chart-axis: var(--inf-color-fg-tertiary);--radius-pill: var(--radius-full);--inf-size-btn-xs: var(--spacing-named-4xl);--inf-size-btn-sm: 28px;--inf-size-btn-md: var(--spacing-named-5xl);--inf-size-btn-lg: 36px;--inf-size-btn-xl: var(--spacing-named-7xl);--inf-size-control-xs: var(--inf-size-btn-xs);--inf-size-control-sm: var(--inf-size-btn-sm);--inf-size-control-md: var(--inf-size-btn-md);--inf-size-control-lg: var(--inf-size-btn-lg);--inf-size-control-xl: var(--inf-size-btn-xl);--inf-size-avatar-xl: 56px;--inf-size-layout-108: 108px;--inf-size-layout-134: 134px;--inf-size-layout-200: 200px;--inf-size-layout-240: 240px;--inf-size-layout-248: 248px;--inf-size-layout-268: 268px;--inf-size-layout-280: 280px;--inf-size-layout-320: 320px;--inf-size-layout-360: 360px;--inf-size-layout-380: 380px;--inf-size-layout-420: 420px;--inf-size-layout-480: 480px;--inf-size-layout-560: 560px;--inf-size-layout-720: 720px;--inf-size-layout-960: 960px;--inf-breakpoint-sm: 320px;--inf-breakpoint-md: 768px;--inf-breakpoint-lg: 1024px;--inf-breakpoint-xl: 1280px;--inf-density-compact: 28px;--inf-density-comfortable: 36px;--inf-density-spacious: 44px;--inf-density-two-line-compact: 48px;--inf-density-two-line-comfortable: 56px;--inf-density-two-line-spacious: 64px;--inf-density-three-line-compact: 64px;--inf-density-three-line-comfortable: 76px;--inf-density-three-line-spacious: 88px;--inf-z-base: 0;--inf-z-dropdown: 1000;--inf-z-sticky: 1020;--inf-z-overlay: 1025;--inf-z-drawer: 1030;--inf-z-modal: 1040;--inf-z-popover: 1050;--inf-z-toast: 1060;--inf-z-tooltip: 1070;--inf-opacity-disabled: .5;--inf-opacity-hover-overlay: .08;--inf-opacity-scrim: .5;--inf-opacity-muted: .7;--inf-modal-width-sm: 360px;--inf-modal-width-md: 480px;--inf-modal-width-lg: 720px;--inf-space-0: 0;--inf-space-2: 2px;--inf-space-4: 4px;--inf-space-6: 6px;--inf-space-8: 8px;--inf-space-10: 10px;--inf-space-12: 12px;--inf-space-16: 16px;--inf-space-20: 20px;--inf-space-24: 24px;--inf-space-32: 32px;--inf-space-40: 40px;--inf-space-48: 48px;--inf-space-64: 64px;--inf-space-80: 80px;--inf-space-96: 96px;--inf-space-128: 128px;--inf-space-160: 160px;--inf-radius-0: 0;--inf-radius-2: 2px;--inf-radius-4: 4px;--inf-radius-6: 6px;--inf-radius-8: 8px;--inf-radius-12: 12px;--inf-radius-16: 16px;--inf-radius-full: 9999px;--inf-font-size-12: 12px;--inf-font-size-14: 14px;--inf-font-size-16: 16px;--inf-font-size-18: 18px;--inf-font-size-20: 20px;--inf-font-size-24: 24px;--inf-font-size-30: 30px;--inf-font-size-36: 36px;--inf-font-size-48: 48px;--inf-font-size-11: 11px;--inf-font-size-13: 13px;--inf-font-weight-400: 400;--inf-font-weight-500: 500;--inf-font-weight-600: 600;--inf-font-weight-700: 700;--inf-font-family-sans: var(--typography-font-family-sans);--inf-font-family-mono: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--inf-shadow-sm: var(--shadow-sm);--inf-shadow-md: var(--shadow-md);--inf-shadow-lg: var(--shadow-lg);--inf-shadow-xl: var(--shadow-xl);--inf-shadow-lg-brand: 0 12px 24px -8px rgba(5, 50, 71, .12), 0 6px 10px -4px rgba(5, 50, 71, .06);--inf-duration-instant: var(--motion-duration-instant);--inf-duration-fast: var(--motion-duration-fast);--inf-duration-base: var(--motion-duration-base);--inf-duration-slow: var(--motion-duration-slow);--inf-easing-standard: var(--motion-easing-standard);--inf-easing-decelerate: var(--motion-easing-decelerate);--inf-easing-accelerate: var(--motion-easing-accelerate)}:root.inf-theme-dark,:root[data-theme=dark],:root.dark,.inf-theme-dark,[data-theme=dark],.dark{--inf-semantic-color-bg-primary: var(--inf-semantic-dark-color-bg-primary);--inf-semantic-color-bg-secondary: var(--inf-semantic-dark-color-bg-secondary);--inf-semantic-color-bg-tertiary: var(--inf-semantic-dark-color-bg-tertiary);--inf-semantic-color-bg-inverse: var(--inf-semantic-dark-color-bg-inverse);--inf-semantic-color-bg-inverse-soft: var(--inf-semantic-dark-color-bg-inverse-soft);--inf-semantic-color-bg-brand: var(--inf-semantic-dark-color-bg-brand);--inf-semantic-color-bg-brand-soft: var(--inf-semantic-dark-color-bg-brand-soft);--inf-semantic-color-bg-success: var(--inf-semantic-dark-color-bg-success);--inf-semantic-color-bg-warning: var(--inf-semantic-dark-color-bg-warning);--inf-semantic-color-bg-error: var(--inf-semantic-dark-color-bg-error);--inf-semantic-color-fg-primary: var(--inf-semantic-dark-color-fg-primary);--inf-semantic-color-fg-secondary: var(--inf-semantic-dark-color-fg-secondary);--inf-semantic-color-fg-tertiary: var(--inf-semantic-dark-color-fg-tertiary);--inf-semantic-color-fg-quaternary: var(--inf-semantic-dark-color-fg-quaternary);--inf-semantic-color-fg-icon: var(--inf-semantic-dark-color-fg-icon);--inf-semantic-color-fg-inverse: var(--inf-semantic-dark-color-fg-inverse);--inf-semantic-color-fg-inverse-soft: var(--inf-semantic-dark-color-fg-inverse-soft);--inf-semantic-color-fg-brand: var(--inf-semantic-dark-color-fg-brand);--inf-semantic-color-fg-accent: var(--inf-semantic-dark-color-fg-accent);--inf-semantic-color-border-primary: var(--inf-semantic-dark-color-border-primary);--inf-semantic-color-border-secondary: var(--inf-semantic-dark-color-border-secondary);--inf-semantic-color-border-strong: var(--inf-semantic-dark-color-border-strong);--inf-semantic-color-border-inverse: var(--inf-semantic-dark-color-border-inverse);--inf-semantic-color-bg-canvas: var(--inf-semantic-dark-color-bg-canvas);--inf-semantic-color-bg-canvas-sunken: var(--inf-semantic-dark-color-bg-canvas-sunken);--inf-semantic-color-fg-emphasis: var(--inf-semantic-dark-color-fg-emphasis);--inf-semantic-color-fg-quiet: var(--inf-semantic-dark-color-fg-quiet);--inf-semantic-color-border-divider: var(--inf-semantic-dark-color-border-divider);--inf-semantic-color-border-focus: var(--inf-semantic-dark-color-border-focus);--inf-shadow-lg-brand: 0 12px 24px -8px rgba(0, 0, 0, .6);--inf-color-fg-on-brand: var(--inf-semantic-dark-color-fg-primary);--inf-color-fg-on-danger: var(--inf-semantic-dark-color-fg-primary);--inf-color-fg-on-accent: var(--inf-semantic-dark-color-fg-inverse);--inf-color-focus-ring: var(--inf-primitive-color-teal-200);--inf-semantic-color-fg-success: var(--inf-semantic-dark-color-fg-success);--inf-semantic-color-fg-warning: var(--inf-semantic-dark-color-fg-warning);--inf-semantic-color-fg-error: var(--inf-semantic-dark-color-fg-error);--inf-color-fg-info: var(--inf-semantic-dark-color-fg-info);--inf-color-bg-info-soft: var(--inf-semantic-dark-color-bg-info);--inf-color-bg-neutral-soft: var(--inf-semantic-dark-color-bg-neutral-soft);--inf-color-overlay-hover-solid: var(--inf-semantic-dark-color-bg-tertiary);--inf-color-chart-1: var(--inf-primitive-color-teal-300);--inf-color-chart-2: var(--inf-primitive-color-sky-300);--inf-color-chart-3: var(--inf-primitive-color-gold-500);--inf-color-chart-4: var(--inf-primitive-color-success-500);--inf-color-chart-5: var(--inf-semantic-dark-color-fg-error);--inf-color-chart-6: var(--inf-primitive-color-neutral-300)}@media(prefers-color-scheme:dark){:root:not(.inf-theme-light):not([data-theme=light]){--inf-semantic-color-bg-primary: var(--inf-semantic-dark-color-bg-primary);--inf-semantic-color-bg-secondary: var(--inf-semantic-dark-color-bg-secondary);--inf-semantic-color-bg-tertiary: var(--inf-semantic-dark-color-bg-tertiary);--inf-semantic-color-bg-inverse: var(--inf-semantic-dark-color-bg-inverse);--inf-semantic-color-bg-inverse-soft: var(--inf-semantic-dark-color-bg-inverse-soft);--inf-semantic-color-bg-brand: var(--inf-semantic-dark-color-bg-brand);--inf-semantic-color-bg-brand-soft: var(--inf-semantic-dark-color-bg-brand-soft);--inf-semantic-color-bg-success: var(--inf-semantic-dark-color-bg-success);--inf-semantic-color-bg-warning: var(--inf-semantic-dark-color-bg-warning);--inf-semantic-color-bg-error: var(--inf-semantic-dark-color-bg-error);--inf-semantic-color-fg-primary: var(--inf-semantic-dark-color-fg-primary);--inf-semantic-color-fg-secondary: var(--inf-semantic-dark-color-fg-secondary);--inf-semantic-color-fg-tertiary: var(--inf-semantic-dark-color-fg-tertiary);--inf-semantic-color-fg-quaternary: var(--inf-semantic-dark-color-fg-quaternary);--inf-semantic-color-fg-icon: var(--inf-semantic-dark-color-fg-icon);--inf-semantic-color-fg-inverse: var(--inf-semantic-dark-color-fg-inverse);--inf-semantic-color-fg-inverse-soft: var(--inf-semantic-dark-color-fg-inverse-soft);--inf-semantic-color-fg-brand: var(--inf-semantic-dark-color-fg-brand);--inf-semantic-color-fg-accent: var(--inf-semantic-dark-color-fg-accent);--inf-semantic-color-border-primary: var(--inf-semantic-dark-color-border-primary);--inf-semantic-color-border-secondary: var(--inf-semantic-dark-color-border-secondary);--inf-semantic-color-border-strong: var(--inf-semantic-dark-color-border-strong);--inf-semantic-color-border-inverse: var(--inf-semantic-dark-color-border-inverse);--inf-color-fg-on-brand: var(--inf-semantic-dark-color-fg-primary);--inf-color-fg-on-danger: var(--inf-semantic-dark-color-fg-primary);--inf-color-fg-on-accent: var(--inf-semantic-dark-color-fg-inverse);--inf-color-focus-ring: var(--inf-primitive-color-teal-200);--inf-semantic-color-fg-success: var(--inf-semantic-dark-color-fg-success);--inf-semantic-color-fg-warning: var(--inf-semantic-dark-color-fg-warning);--inf-semantic-color-fg-error: var(--inf-semantic-dark-color-fg-error);--inf-color-fg-info: var(--inf-semantic-dark-color-fg-info);--inf-color-bg-info-soft: var(--inf-semantic-dark-color-bg-info);--inf-color-bg-neutral-soft: var(--inf-semantic-dark-color-bg-neutral-soft);--inf-color-overlay-hover-solid: var(--inf-semantic-dark-color-bg-tertiary);--inf-color-chart-1: var(--inf-primitive-color-teal-300);--inf-color-chart-2: var(--inf-primitive-color-sky-300);--inf-color-chart-3: var(--inf-primitive-color-gold-500);--inf-color-chart-4: var(--inf-primitive-color-success-500);--inf-color-chart-5: var(--inf-semantic-dark-color-fg-error);--inf-color-chart-6: var(--inf-primitive-color-neutral-300)}}@media(prefers-reduced-motion:reduce){:root{--motion-duration-micro: 0ms;--motion-duration-fast: 0ms;--motion-duration-base: 0ms;--motion-duration-slow: 0ms;--motion-duration-xslow: 0ms}}}:root{-webkit-font-smoothing:var(--typography-font-smoothing-webkit);-moz-osx-font-smoothing:var(--typography-font-smoothing-moz);font-optical-sizing:var(--typography-optical-sizing);font-feature-settings:var(--typography-font-feature-base)}h1,h2,h3,h4{text-rendering:var(--typography-text-rendering)}@media(prefers-color-scheme:dark){:root{-webkit-font-smoothing:var(--typography-font-smoothing-webkit);-moz-osx-font-smoothing:var(--typography-font-smoothing-moz)}}:root{--portal-sidebar-w: 268px;--portal-header-h: 56px;--portal-toc-w: 240px;--portal-content-max: 1080px;--portal-page-pad: 32px;--portal-mobile-pad: 16px;--font-size-2xs: 13px;--font-size-3xs: 11px;--font-size-display: 32px;--p-bg: var(--inf-semantic-color-bg-primary, #ffffff);--p-bg-raised: var(--inf-primitive-color-neutral-25, #fafbfb);--p-bg-sunken: var(--inf-semantic-color-bg-secondary, #f5f7f8);--p-bg-hover: var(--inf-semantic-color-bg-hover, #f2f4f5);--p-bg-active: var(--inf-semantic-color-bg-active, #ebeef0);--p-fg: var(--inf-primitive-color-teal-900, #021a25);--p-fg-muted: var(--inf-semantic-color-fg-brand, #053247);--p-fg-subtle: var(--inf-primitive-color-neutral-600, #50707e);--p-fg-quiet: var(--inf-primitive-color-neutral-600, #50707e);--p-fg-on-brand: var(--inf-semantic-color-fg-inverse, #ffffff);--p-border: var(--inf-semantic-color-border-secondary, #e6ebed);--p-border-strong: var(--inf-semantic-color-border-primary, #cdd6da);--p-brand: var(--inf-semantic-color-fg-brand, #053247);--p-brand-hover: var(--inf-semantic-color-brand-hover, #042b3c);--p-accent: var(--inf-semantic-color-bg-accent, #63c1ec);--p-accent-strong: var(--inf-primitive-color-sky-500, #1e8dc2);--p-success: var(--inf-primitive-color-success-500, #12b76a);--p-warning: var(--inf-primitive-color-warning-500, #f79009);--p-error: var(--inf-semantic-color-border-error, #f04438);--p-shadow-sm: 0 1px 2px 0 rgba(5, 50, 71, .04), 0 1px 3px 0 rgba(5, 50, 71, .06);--p-shadow-md: 0 4px 8px -2px rgba(5, 50, 71, .08), 0 2px 4px -2px rgba(5, 50, 71, .04);--p-shadow-lg: 0 12px 24px -8px rgba(5, 50, 71, .12), 0 6px 10px -4px rgba(5, 50, 71, .06);--p-radius-sm: var(--radius-sm, 4px);--p-radius-md: var(--radius-md, 6px);--p-radius-lg: var(--radius-lg, 8px);--p-radius-pill: var(--radius-full, 9999px);--p-mono: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--p-sans: var(--typography-font-family-sans, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);--p-display: var(--typography-font-family-sans, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);--p-dur-fast: var(--motion-duration-fast, .12s);--p-dur-base: var(--motion-duration-base, .18s);--p-dur-slow: var(--motion-duration-slow, .26s);--p-ease: var(--motion-easing-out, cubic-bezier(.16, 1, .3, 1))}[data-theme=dark]{--p-bg: var(--inf-primitive-color-teal-900, #021a25);--p-bg-raised: var(--inf-primitive-color-teal-800, #042939);--p-bg-sunken: var(--inf-primitive-color-teal-900, #021a25);--p-bg-hover: var(--inf-semantic-dark-color-bg-hover, rgba(255, 255, 255, .04));--p-bg-active: var(--inf-semantic-dark-color-bg-active, rgba(255, 255, 255, .08));--p-fg: var(--inf-primitive-color-neutral-25, #fafbfb);--p-fg-muted: var(--inf-primitive-color-neutral-100, #e6ebed);--p-fg-subtle: var(--inf-primitive-color-neutral-300, #9badb5);--p-fg-quiet: var(--inf-primitive-color-neutral-500, #698591);--p-border: rgba(255, 255, 255, .08);--p-border-strong: rgba(255, 255, 255, .16);--p-brand: var(--inf-primitive-color-sky-300, #63c1ec);--p-brand-hover: var(--inf-semantic-dark-color-brand-hover, #3ca8db);--p-fg-quiet: var(--inf-primitive-color-neutral-200, #cdd6da);--p-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--p-shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .5);--p-shadow-lg: 0 12px 24px -8px rgba(0, 0, 0, .6)}:root{--p-dur-spinner: .7s;--p-dur-skeleton: 1.5s;--p-font-size-9: 9px;--p-font-size-10: 10px;--p-font-size-11: 11px;--p-font-size-13: 13px;--p-font-size-34: 34px;--p-radius-14: 14px;--p-radius-24: 24px;--p-radius-30: 30px;--p-radius-32: 32px;--p-radius-36: 36px;--p-radius-40: 40px;--p-radius-47: 47px;--p-size-14: 14px;--p-size-18: 18px;--p-size-22: 22px;--p-size-34: 34px;--p-size-390: 390px;--p-size-402: 402px;--p-size-412: 412px;--p-size-800: 800px;--p-size-844: 844px;--p-size-892: 892px}strong,b{font-weight:var(--typography-font-weight-semibold)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-named-sm);font-family:var(--p-sans);font-weight:var(--typography-font-weight-medium);font-size:var(--p-font-size-13);line-height:1;padding:0 var(--p-size-14);height:var(--p-size-34);border-radius:var(--p-radius-md);border:1px solid transparent;background:transparent;color:var(--p-fg);cursor:pointer;letter-spacing:.005em;transition:background var(--p-dur-fast) var(--p-ease),border-color var(--p-dur-fast) var(--p-ease),color var(--p-dur-fast) var(--p-ease),box-shadow var(--p-dur-fast) var(--p-ease);white-space:nowrap;text-decoration:none;-webkit-user-select:none;user-select:none}.ds-btn:focus-visible{outline:2px solid var(--inf-color-focus-ring);outline-offset:2px}.ds-btn:disabled,.ds-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.ds-btn svg{width:var(--p-size-14);height:var(--p-size-14);stroke:currentColor;fill:none;stroke-width:2}.ds-btn:hover,.ds-btn:focus,.ds-btn:active,.ds-btn:visited{text-decoration:none}.ds-btn--primary{background:var(--p-brand);color:var(--p-fg-on-brand);border-color:var(--p-brand)}.ds-btn--primary:hover:not(:disabled){background:var(--p-brand-hover);border-color:var(--p-brand-hover)}.ds-btn--primary:active:not(:disabled){transform:translateY(.5px)}.ds-btn--secondary{background:var(--p-bg);color:var(--p-fg);border-color:var(--p-border-strong)}.ds-btn--secondary:hover:not(:disabled){background:var(--p-bg-hover);border-color:var(--p-fg-subtle)}.ds-btn--ghost{background:transparent;color:var(--p-fg-muted)}.ds-btn--ghost:hover:not(:disabled){background:var(--p-bg-hover);color:var(--p-fg)}.ds-btn--destructive{background:var(--p-error);color:#fff;border-color:var(--p-error)}.ds-btn--destructive:hover:not(:disabled){filter:brightness(.92)}.ds-btn--success{background:var(--p-success);color:#fff;border-color:var(--p-success)}.ds-btn--sm{height:var(--inf-size-btn-sm);font-size:var(--font-size-xs);padding:0 var(--spacing-named-lg);gap:var(--spacing-named-xs)}.ds-btn--sm svg{width:var(--spacing-named-xl);height:var(--spacing-named-xl)}.ds-btn--lg{height:var(--spacing-named-6xl);font-size:var(--font-size-sm);padding:0 var(--p-size-18)}.ds-btn--xl{height:var(--spacing-named-7xl);font-size:var(--inf-font-size-16);padding:0 var(--p-size-22);gap:var(--spacing-named-md)}.ds-btn--block{width:100%}.ds-btn--icon{padding:0;width:var(--p-size-34)}.ds-btn--icon.ds-btn--sm{width:var(--inf-size-btn-sm)}.ds-btn--icon.ds-btn--lg{width:var(--spacing-named-6xl)}.ds-btn.is-loading{color:transparent!important;position:relative;pointer-events:none}.ds-btn.is-loading:after{content:"";position:absolute;width:var(--p-size-14);height:var(--p-size-14);border:2px solid currentColor;border-top-color:transparent;border-radius:50%;color:var(--p-fg-on-brand);animation:ds-spin var(--p-dur-spinner) linear infinite}.ds-btn--secondary.is-loading:after,.ds-btn--ghost.is-loading:after{color:var(--p-fg)}.ds-btn-group{display:inline-flex}.ds-btn-group .ds-btn{border-radius:0;margin-left:-1px}.ds-btn-group .ds-btn:first-child{border-top-left-radius:var(--p-radius-md);border-bottom-left-radius:var(--p-radius-md);margin-left:0}.ds-btn-group .ds-btn:last-child{border-top-right-radius:var(--p-radius-md);border-bottom-right-radius:var(--p-radius-md)}.ds-field{display:block}.ds-field-label{display:block;font-size:var(--font-size-xs);font-weight:var(--typography-font-weight-medium);color:var(--p-fg);margin-bottom:var(--inf-space-6);letter-spacing:.005em}.ds-field-required:after{content:" *";color:var(--p-error)}.ds-field-hint{font-size:var(--p-font-size-11);color:var(--p-fg-subtle);margin-top:4px}.ds-field-error{font-size:var(--p-font-size-11);line-height:1.5;color:var(--p-error);margin-top:4px;display:flex;align-items:flex-start;gap:var(--spacing-named-xs)}.ds-field-error>svg{flex:0 0 auto;margin-top:2px}.ds-input[type=search]::-webkit-search-cancel-button,.ds-input[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.ds-input,.ds-textarea,.ds-select{width:100%;height:var(--p-size-34);padding:0 var(--spacing-named-lg);font-family:var(--p-sans);font-size:var(--p-font-size-13);color:var(--p-fg);background:var(--p-bg);border:1px solid var(--p-border-strong);border-radius:var(--p-radius-md);outline:none;transition:border-color var(--p-dur-fast) var(--p-ease),box-shadow var(--p-dur-fast) var(--p-ease)}.ds-input::placeholder,.ds-textarea::placeholder{color:var(--p-fg-quiet)}.ds-input:hover,.ds-textarea:hover,.ds-select:hover{border-color:var(--p-fg-subtle)}.ds-input:focus,.ds-textarea:focus,.ds-select:focus{border-color:var(--inf-color-focus-ring);box-shadow:0 0 0 3px #63c1ec2e}.ds-input[disabled],.ds-textarea[disabled],.ds-select[disabled]{background:var(--p-bg-sunken);color:var(--p-fg-quiet);cursor:not-allowed}.ds-input.is-error,.ds-textarea.is-error,.ds-select.is-error{border-color:var(--p-error)}.ds-input.is-error:focus,.ds-textarea.is-error:focus,.ds-select.is-error:focus{box-shadow:0 0 0 3px #f044382e}.ds-textarea{height:auto;min-height:var(--spacing-named-9xl);padding:var(--spacing-named-md) var(--spacing-named-lg);resize:vertical;line-height:1.5}.ds-select{appearance:none;padding-right:28px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23698591' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right var(--inf-space-10) center;background-size:12px}.ds-input--sm{height:var(--inf-size-btn-sm);font-size:var(--font-size-xs);padding:0 var(--spacing-named-md)}.ds-input--lg{height:var(--spacing-named-6xl);font-size:var(--font-size-sm);padding:0 var(--spacing-named-xl)}.ds-input-group{position:relative;display:flex;align-items:center}.ds-input-group .ds-input{padding-left:32px}.ds-input-group-icon{position:absolute;left:var(--inf-space-10);top:50%;transform:translateY(-50%);color:var(--p-fg-quiet);pointer-events:none;display:grid;place-items:center}.ds-input-group-icon svg{width:var(--p-size-14);height:var(--p-size-14);stroke:currentColor;fill:none;stroke-width:2}.ds-input-group--end .ds-input{padding-left:var(--inf-space-10);padding-right:32px}.ds-input-group--end .ds-input-group-icon{left:auto;right:var(--inf-space-10)}.ds-check,.ds-radio{display:inline-flex;align-items:center;gap:var(--spacing-named-md);font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer;-webkit-user-select:none;user-select:none}.ds-check input,.ds-radio input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.ds-check-box,.ds-radio-dot{width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);flex-shrink:0;border:1.5px solid var(--p-border-strong);background:var(--p-bg);display:grid;place-items:center;transition:background var(--p-dur-fast) var(--p-ease),border-color var(--p-dur-fast) var(--p-ease)}.ds-check-box{border-radius:var(--inf-radius-4)}.ds-radio-dot{border-radius:50%}.ds-check input:focus-visible~.ds-check-box,.ds-radio input:focus-visible~.ds-radio-dot{outline:2px solid var(--inf-color-focus-ring);outline-offset:2px}.ds-check input:checked~.ds-check-box{background:var(--p-brand);border-color:var(--p-brand)}.ds-check input:checked~.ds-check-box:after{content:"";width:var(--inf-space-8);height:var(--inf-space-4);margin-top:-2px;border-left:2px solid var(--p-fg-on-brand);border-bottom:2px solid var(--p-fg-on-brand);transform:rotate(-45deg)}.ds-check input:indeterminate~.ds-check-box{background:var(--p-brand);border-color:var(--p-brand)}.ds-check input:indeterminate~.ds-check-box:after{content:"";width:var(--spacing-named-md);height:2px;background:var(--p-fg-on-brand)}.ds-radio input:checked~.ds-radio-dot{border-color:var(--p-brand)}.ds-radio input:checked~.ds-radio-dot:after{content:"";width:var(--spacing-named-md);height:var(--spacing-named-md);background:var(--p-brand);border-radius:50%}.ds-check input:disabled~.ds-check-box,.ds-radio input:disabled~.ds-radio-dot{opacity:.5;cursor:not-allowed}.ds-toggle{display:inline-flex;align-items:center;gap:var(--spacing-named-md);font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer;-webkit-user-select:none;user-select:none}.ds-toggle input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.ds-toggle-track{width:var(--spacing-named-5xl);height:var(--p-size-18);background:var(--p-border-strong);border-radius:var(--inf-radius-full);position:relative;flex-shrink:0;transition:background var(--p-dur-base) var(--p-ease)}.ds-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:var(--p-size-14);height:var(--p-size-14);background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000040;transition:transform var(--p-dur-base) var(--p-ease)}.ds-toggle input:checked~.ds-toggle-track{background:var(--p-brand)}.ds-toggle input:checked~.ds-toggle-track:after{transform:translate(14px)}.ds-toggle input:focus-visible~.ds-toggle-track{box-shadow:0 0 0 3px #63c1ec3d}.ds-toggle input:disabled~.ds-toggle-track{opacity:.5}.ds-badge{display:inline-flex;align-items:center;gap:var(--spacing-named-xs);font-family:var(--p-sans);font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-semibold);padding:2px var(--spacing-named-md);border-radius:var(--inf-radius-full);background:var(--p-bg-sunken);color:var(--p-fg-subtle);border:1px solid var(--p-border);line-height:1.4;letter-spacing:.005em}.ds-badge--brand{background:#05324714;color:var(--p-brand);border-color:#0532472e}.ds-badge--success{background:#12b76a1a;color:var(--p-success);border-color:#12b76a47}.ds-badge--warning{background:#f790091a;color:var(--p-warning);border-color:#f7900947}.ds-badge--error{background:#f044381a;color:var(--p-error);border-color:#f0443847}.ds-badge--info{background:#63c1ec1f;color:var(--p-accent-strong);border-color:#63c1ec52}.ds-badge--dot:before{content:"";width:var(--spacing-named-sm);height:var(--spacing-named-sm);border-radius:50%;background:currentColor}.ds-badge--sm{font-size:var(--p-font-size-10);padding:1px var(--spacing-named-sm)}.ds-badge--lg{font-size:var(--font-size-xs);padding:var(--inf-space-4) var(--spacing-named-lg)}[data-theme=dark] .ds-badge--brand{background:#63c1ec24;color:var(--p-accent);border-color:#63c1ec52}.ds-tag{display:inline-flex;align-items:center;gap:var(--spacing-named-xs);font-family:var(--p-sans);font-size:var(--font-size-xs);font-weight:var(--typography-font-weight-medium);padding:var(--inf-space-4) var(--spacing-named-md);border-radius:var(--p-radius-sm);background:var(--p-bg-sunken);color:var(--p-fg);border:1px solid var(--p-border);letter-spacing:.005em;cursor:default;transition:background var(--p-dur-fast) var(--p-ease)}.ds-tag.is-removable{cursor:pointer}.ds-tag.is-removable:hover{background:var(--p-bg-hover)}.ds-tag-x{color:var(--p-fg-quiet);cursor:pointer;padding:2px;border-radius:var(--inf-radius-2)}.ds-tag-x:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-avatar{display:inline-grid;place-items:center;width:var(--spacing-named-5xl);height:var(--spacing-named-5xl);border-radius:50%;background:var(--p-bg-sunken);color:var(--p-fg);font-family:var(--p-sans);font-size:var(--font-size-xs);font-weight:var(--typography-font-weight-semibold);flex-shrink:0;overflow:hidden;border:1px solid var(--p-border);letter-spacing:.01em}.ds-avatar img{width:100%;height:100%;object-fit:cover}.ds-avatar--sm{width:var(--spacing-named-4xl);height:var(--spacing-named-4xl);font-size:var(--p-font-size-10)}.ds-avatar--lg{width:var(--spacing-named-6xl);height:var(--spacing-named-6xl);font-size:var(--font-size-sm)}.ds-avatar--xl{width:var(--inf-size-avatar-xl);height:var(--inf-size-avatar-xl);font-size:var(--font-size-lg)}.ds-avatar-group{display:inline-flex}.ds-avatar-group .ds-avatar:not(:first-child){margin-left:-8px}.ds-alert{display:flex;align-items:flex-start;gap:var(--spacing-named-lg);padding:var(--spacing-named-xl) var(--p-size-14);border-radius:var(--p-radius-md);background:var(--p-bg-sunken);color:var(--p-fg);border:1px solid var(--p-border-strong);font-size:var(--p-font-size-13);line-height:1.45}.ds-alert-title{font-weight:var(--typography-font-weight-semibold);font-size:var(--p-font-size-13);margin:0 0 2px}.ds-alert-body{color:var(--p-fg-subtle);font-size:var(--font-size-xs)}.ds-alert-icon{width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);flex-shrink:0;margin-top:1px;stroke:currentColor;fill:none;stroke-width:2}.ds-alert--info{border-color:#63c1ec52;background:#63c1ec14}.ds-alert--info .ds-alert-icon{color:var(--p-accent-strong)}.ds-alert--success{border-color:#12b76a52;background:#12b76a0f}.ds-alert--success .ds-alert-icon{color:var(--p-success)}.ds-alert--warning{border-color:#f7900952;background:#f790090f}.ds-alert--warning .ds-alert-icon{color:var(--p-warning)}.ds-alert--error{border-color:#f0443852;background:#f044380f}.ds-alert--error .ds-alert-icon{color:var(--p-error)}.ds-alert-close{margin-left:auto;cursor:pointer;color:var(--p-fg-quiet);background:transparent;border:0;padding:2px;border-radius:var(--inf-radius-4)}.ds-alert-close:hover{color:var(--p-fg);background:var(--p-bg-hover)}.ds-toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:var(--spacing-named-md);z-index:9999;pointer-events:none;max-width:calc(100vw - var(--inf-space-48))}.ds-toast{pointer-events:auto;background:var(--p-bg-raised);border:1px solid var(--p-border-strong);border-radius:var(--p-radius-md);padding:var(--spacing-named-lg) var(--p-size-14);font-size:var(--p-font-size-13);color:var(--p-fg);box-shadow:var(--p-shadow-md);display:flex;align-items:center;gap:var(--spacing-named-lg);min-width:var(--inf-size-layout-280);max-width:var(--inf-size-layout-380);animation:ds-toast-in var(--motion-duration-slow) var(--p-ease)}.ds-toast.is-leaving{animation:ds-toast-out var(--motion-duration-slow) var(--p-ease) forwards}.ds-toast-icon{width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2}.ds-toast--success{border-left:4px solid var(--p-success)}.ds-toast--error{border-left:4px solid var(--p-error)}.ds-toast--warning{border-left:4px solid var(--p-warning)}@keyframes ds-toast-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes ds-toast-out{to{transform:translateY(8px);opacity:0}}.ds-modal-overlay{position:fixed;inset:0;background:#021a2573;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;z-index:1000;opacity:0;pointer-events:none;transition:opacity var(--p-dur-base) var(--p-ease);padding:var(--spacing-named-3xl)}.ds-modal-overlay.is-open{opacity:1;pointer-events:auto}.ds-modal{background:var(--p-bg);border:1px solid var(--p-border-strong);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow-lg);max-width:100%;width:var(--inf-size-layout-480);max-height:calc(100vh - var(--inf-space-40));display:flex;flex-direction:column;transform:translateY(var(--inf-space-10)) scale(.98);transition:transform var(--p-dur-base) var(--p-ease)}.ds-modal-overlay.is-open .ds-modal{transform:translateY(0) scale(1)}.ds-modal--sm{width:var(--inf-size-layout-360)}.ds-modal--lg{width:var(--inf-size-layout-720)}.ds-modal--xl{width:var(--inf-size-layout-960)}.ds-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-named-xl);padding:var(--spacing-named-2xl) var(--spacing-named-3xl);border-bottom:1px solid var(--p-border)}.ds-modal-title{font-size:var(--font-size-md);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);margin:0;line-height:1.3;font-family:var(--p-display);letter-spacing:-.01em}.ds-modal-subtitle{font-size:var(--p-font-size-13);color:var(--p-fg-subtle);margin-top:4px}.ds-modal-close{background:transparent;border:0;color:var(--p-fg-subtle);cursor:pointer;padding:var(--spacing-named-xs);border-radius:var(--radius-sm)}.ds-modal-close:hover{color:var(--p-fg);background:var(--p-bg-hover)}.ds-modal-body{padding:var(--spacing-named-3xl);overflow-y:auto;font-size:var(--font-size-sm);line-height:1.55;color:var(--p-fg-muted)}.ds-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-named-md);padding:var(--p-size-14) var(--spacing-named-3xl);border-top:1px solid var(--p-border);background:var(--p-bg-sunken);border-bottom-left-radius:var(--p-radius-lg);border-bottom-right-radius:var(--p-radius-lg)}.ds-drawer-overlay{position:fixed;inset:0;background:#021a2566;z-index:900;opacity:0;pointer-events:none;transition:opacity var(--p-dur-base) var(--p-ease)}.ds-drawer-overlay.is-open{opacity:1;pointer-events:auto}.ds-drawer{position:fixed;top:0;right:0;width:var(--inf-size-layout-420);max-width:100vw;height:100vh;background:var(--p-bg);border-left:1px solid var(--p-border-strong);box-shadow:var(--p-shadow-lg);display:flex;flex-direction:column;z-index:950;transform:translate(100%);transition:transform var(--p-dur-slow) var(--p-ease)}.ds-drawer.is-open{transform:translate(0)}.ds-drawer--left{right:auto;left:0;border-left:0;border-right:1px solid var(--p-border-strong);transform:translate(-100%)}.ds-drawer--left.is-open{transform:translate(0)}.ds-drawer--sm{width:var(--inf-size-layout-320)}.ds-drawer--lg{width:var(--inf-size-layout-560)}.ds-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--p-size-14) var(--spacing-named-2xl);border-bottom:1px solid var(--p-border)}.ds-drawer-title{font-size:var(--font-size-sm);font-weight:var(--typography-font-weight-semibold);margin:0;color:var(--p-fg);letter-spacing:-.005em}.ds-drawer-body{flex:1;overflow-y:auto;padding:var(--spacing-named-2xl);font-size:var(--p-font-size-13);color:var(--p-fg-muted)}.ds-drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-named-md);padding:var(--spacing-named-xl) var(--spacing-named-2xl);border-top:1px solid var(--p-border);background:var(--p-bg-sunken)}@media(max-width:480px){.ds-drawer{width:100vw}}.ds-tabs{width:100%}.ds-tabs-list{display:flex;align-items:stretch;gap:0;border-bottom:1px solid var(--p-border);margin-bottom:16px}.ds-tabs-trigger{background:transparent;border:0;padding:var(--spacing-named-md) var(--p-size-14);font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-subtle);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--p-dur-fast) var(--p-ease),border-color var(--p-dur-fast) var(--p-ease)}.ds-tabs-trigger:hover{color:var(--p-fg)}.ds-tabs-trigger.is-active{color:var(--p-brand);border-bottom-color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}[data-theme=dark] .ds-tabs-trigger.is-active{color:var(--p-accent);border-bottom-color:var(--p-accent)}.ds-tabs-panel{display:none}.ds-tabs-panel.is-active{display:block;animation:ds-fade-in var(--p-dur-base) var(--p-ease)}.ds-tabs--segmented .ds-tabs-list{border:1px solid var(--p-border);border-radius:var(--p-radius-md);padding:2px;background:var(--p-bg-sunken);gap:2px;margin-bottom:16px}.ds-tabs--segmented .ds-tabs-trigger{border-radius:var(--radius-sm);border-bottom:0;margin-bottom:0;padding:var(--spacing-named-xs) var(--spacing-named-xl);height:var(--inf-size-btn-sm)}.ds-tabs--segmented .ds-tabs-trigger.is-active{background:var(--p-bg);color:var(--p-fg);border-bottom-color:transparent}@keyframes ds-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.ds-accordion{border:1px solid var(--p-border);border-radius:var(--p-radius-md);background:var(--p-bg-raised);overflow:visible}.ds-accordion-item+.ds-accordion-item{border-top:1px solid var(--p-border)}.ds-accordion-item:first-child .ds-accordion-trigger{border-top-left-radius:var(--p-radius-md);border-top-right-radius:var(--p-radius-md)}.ds-accordion-item:last-child:not(.is-open) .ds-accordion-trigger{border-bottom-left-radius:var(--p-radius-md);border-bottom-right-radius:var(--p-radius-md)}.ds-accordion-item:last-child.is-open .ds-accordion-panel{border-bottom-left-radius:var(--p-radius-md);border-bottom-right-radius:var(--p-radius-md)}.ds-accordion-trigger{width:100%;background:transparent;border:0;padding:var(--spacing-named-xl) var(--p-size-14);text-align:left;display:flex;align-items:center;justify-content:space-between;font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-medium);color:var(--p-fg);cursor:pointer;transition:background var(--p-dur-fast) var(--p-ease)}.ds-accordion-trigger:hover{background:var(--p-bg-hover)}.ds-accordion-icon{width:var(--p-size-14);height:var(--p-size-14);stroke:currentColor;fill:none;stroke-width:2;transition:transform var(--p-dur-base) var(--p-ease);flex-shrink:0;opacity:.6}.ds-accordion-item.is-open .ds-accordion-icon{transform:rotate(180deg)}.ds-accordion-panel{display:none;padding:0 var(--p-size-14) var(--p-size-14);font-size:var(--p-font-size-13);line-height:1.55;color:var(--p-fg-muted)}.ds-accordion-item.is-open .ds-accordion-panel{display:block}.ds-menu{background:var(--p-bg);border:1px solid var(--p-border-strong);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);padding:var(--spacing-named-xs);min-width:var(--inf-size-layout-200);font-size:var(--p-font-size-13)}.ds-menu-item{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-sm) var(--spacing-named-lg);border-radius:var(--inf-radius-4);color:var(--p-fg);cursor:pointer;background:transparent;border:0;width:100%;text-align:left;font:inherit;transition:background var(--p-dur-fast) var(--p-ease)}.ds-menu-item:hover{background:var(--p-bg-hover)}.ds-menu-item.is-active{background:var(--p-bg-active);color:var(--p-brand)}[data-theme=dark] .ds-menu-item.is-active{color:var(--p-accent)}.ds-menu-item--danger{color:var(--p-error)}.ds-menu-item-icon{width:var(--p-size-14);height:var(--p-size-14);stroke:currentColor;fill:none;stroke-width:2;opacity:.7}.ds-menu-label{font-family:var(--p-mono);font-size:var(--p-font-size-10);text-transform:uppercase;letter-spacing:.06em;color:var(--p-fg-quiet);padding:var(--spacing-named-sm) var(--spacing-named-lg) 2px}.ds-menu-sep{height:1px;background:var(--p-border);margin:var(--spacing-named-xs) calc(var(--spacing-named-xs) * -1)}.ds-menu-shortcut{margin-left:auto;font-family:var(--p-mono);font-size:var(--p-font-size-11);color:var(--p-fg-quiet)}.ds-dropdown{position:relative;display:inline-block}.ds-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:100;opacity:0;transform:translateY(-4px) scale(.98);transform-origin:top left;transition:opacity var(--p-dur-fast) var(--p-ease),transform var(--p-dur-fast) var(--p-ease);pointer-events:none}.ds-dropdown.is-open .ds-dropdown-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.ds-dropdown--end .ds-dropdown-panel{left:auto;right:0;transform-origin:top right}.ds-popover{background:var(--p-bg);border:1px solid var(--p-border-strong);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);padding:var(--spacing-named-xl);font-size:var(--p-font-size-13);max-width:var(--inf-size-layout-280);color:var(--p-fg)}.ds-popover-title{font-weight:var(--typography-font-weight-semibold);margin:0 0 var(--spacing-named-xs);font-size:var(--p-font-size-13)}.ds-popover-body{font-size:var(--font-size-xs);color:var(--p-fg-subtle);line-height:1.5}.ds-popover:has(.inf-dp__panel){padding:0;max-width:none;overflow:hidden}.inf-overlay-pane{font-family:var(--typography-font-family-sans, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.cdk-overlay-container{z-index:var(--inf-z-modal)}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);clip-path:inset(100%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}.ds-tooltip{position:relative;display:inline-block}.ds-tooltip-trigger{cursor:help}.ds-tooltip-content{position:absolute;bottom:calc(100% + var(--inf-space-6));left:50%;transform:translate(-50%) translateY(4px);background:var(--inf-primitive-color-teal-900, #021a25);color:#fff;font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-medium);padding:var(--spacing-named-xs) var(--spacing-named-md);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--p-dur-fast) var(--p-ease),transform var(--p-dur-fast) var(--p-ease);z-index:200;box-shadow:var(--p-shadow-sm)}.ds-tooltip:hover .ds-tooltip-content,.ds-tooltip:focus-within .ds-tooltip-content{opacity:1;transform:translate(-50%) translateY(0)}.ds-tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--inf-primitive-color-teal-900, #021a25)}[data-theme=dark] .ds-tooltip-content{background:var(--p-bg-raised);color:var(--p-fg);border:1px solid var(--p-border-strong)}[data-theme=dark] .ds-tooltip-content:after{border-top-color:var(--p-bg-raised)}.ds-breadcrumb{display:flex;align-items:center;gap:var(--spacing-named-sm);font-size:var(--font-size-xs);color:var(--p-fg-subtle);flex-wrap:wrap}.ds-breadcrumb a{color:var(--p-fg-subtle);text-decoration:none;padding:2px var(--spacing-named-xs);border-radius:var(--inf-radius-4)}.ds-breadcrumb a:hover{color:var(--p-fg);background:var(--p-bg-hover)}.ds-breadcrumb-current{color:var(--p-fg);font-weight:var(--typography-font-weight-medium)}.ds-breadcrumb-sep{color:var(--p-fg-quiet)}.ds-pagination{display:inline-flex;align-items:center;gap:var(--spacing-named-xs)}.ds-pagination-btn{width:var(--inf-size-btn-sm);height:var(--inf-size-btn-sm);padding:0;display:grid;place-items:center;background:transparent;border:1px solid var(--p-border);border-radius:var(--p-radius-sm);color:var(--p-fg-subtle);font-size:var(--font-size-xs);font-weight:var(--typography-font-weight-medium);cursor:pointer;transition:background-color var(--p-dur-fast) var(--p-ease),color var(--p-dur-fast) var(--p-ease),border-color var(--p-dur-fast) var(--p-ease)}.ds-pagination-btn:hover:not(:disabled){background:var(--p-bg-hover);color:var(--p-fg);border-color:var(--p-border-strong)}.ds-pagination-btn.is-active{background:var(--p-brand);color:var(--p-fg-on-brand);border-color:var(--p-brand)}[data-theme=dark] .ds-pagination-btn.is-active{background:var(--p-accent);color:var(--p-bg);border-color:var(--p-accent)}.ds-pagination-btn:disabled{opacity:.4;cursor:not-allowed}.ds-pagination-btn svg{width:var(--spacing-named-xl);height:var(--spacing-named-xl);stroke:currentColor;fill:none;stroke-width:2}.ds-pagination-ellipsis{color:var(--p-fg-quiet);padding:0 var(--spacing-named-xs)}.ds-progress{width:100%;height:var(--spacing-named-sm);background:var(--p-bg-sunken);border-radius:var(--inf-radius-full);overflow:hidden;border:1px solid var(--p-border)}.ds-progress-bar{height:100%;background:var(--p-brand);transition:width var(--p-dur-slow) var(--p-ease);border-radius:var(--inf-radius-full)}[data-theme=dark] .ds-progress-bar{background:var(--p-accent)}.ds-progress--success .ds-progress-bar{background:var(--p-success)}.ds-progress--warning .ds-progress-bar{background:var(--p-warning)}.ds-progress--error .ds-progress-bar{background:var(--p-error)}.ds-progress-label{display:flex;justify-content:space-between;font-size:var(--p-font-size-11);color:var(--p-fg-subtle);margin-bottom:4px;font-family:var(--p-mono)}.ds-progress-circle{display:inline-block;position:relative;width:var(--spacing-named-6xl);height:var(--spacing-named-6xl)}.ds-progress-circle svg{transform:rotate(-90deg);width:100%;height:100%}.ds-progress-circle-track{stroke:var(--p-border);fill:none;stroke-width:4}.ds-progress-circle-bar{stroke:var(--p-brand);fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset var(--p-dur-slow) var(--p-ease)}.ds-table-wrap{border:1px solid var(--p-border);border-radius:var(--p-radius-md);overflow:hidden;background:var(--p-bg)}.ds-table{width:100%;border-collapse:collapse;font-size:var(--p-font-size-13)}.ds-table th{position:sticky;top:0;z-index:1;text-align:left;background:var(--p-bg-sunken);font-family:var(--p-mono);font-size:var(--p-font-size-10);text-transform:uppercase;letter-spacing:.06em;color:var(--p-fg-subtle);font-weight:var(--typography-font-weight-semibold);padding:var(--spacing-named-md) var(--spacing-named-xl);border-bottom:1px solid var(--p-border)}.ds-table td{padding:var(--spacing-named-md) var(--spacing-named-xl);border-bottom:1px solid var(--p-border);color:var(--p-fg);vertical-align:middle}.ds-table tr:last-child td{border-bottom:0}.ds-table tbody tr{transition:background var(--p-dur-fast) var(--p-ease)}.ds-table tbody tr:hover{background:var(--p-bg-hover)}.ds-table tbody tr.is-selected{background:var(--p-bg-active)}.ds-table--dense th,.ds-table--dense td{padding:var(--spacing-named-xs) var(--spacing-named-lg);font-size:var(--font-size-xs)}.ds-table--num{font-family:var(--p-mono);font-variant-numeric:tabular-nums}.ds-table .right{text-align:right}.ds-table .center{text-align:center}.ds-empty{text-align:center;padding:var(--spacing-named-7xl) var(--spacing-named-4xl);color:var(--p-fg-subtle)}.ds-empty-icon{width:var(--spacing-named-7xl);height:var(--spacing-named-7xl);margin:0 auto var(--spacing-named-xl);color:var(--p-fg-quiet);display:grid;place-items:center;border-radius:50%;background:var(--p-bg-sunken)}.ds-empty-icon svg{width:var(--p-size-22);height:var(--p-size-22);stroke:currentColor;fill:none;stroke-width:1.8}.ds-empty-title{font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);margin:0 0 var(--spacing-named-xs)}.ds-empty-body{font-size:var(--p-font-size-13);max-width:36ch;margin:0 auto var(--spacing-named-2xl)}.ds-skeleton{background:linear-gradient(90deg,var(--p-bg-sunken) 0%,var(--p-bg-hover) 50%,var(--p-bg-sunken) 100%);background-size:200% 100%;animation:ds-skel var(--p-dur-skeleton) ease-in-out infinite;border-radius:var(--p-radius-sm);display:block}@keyframes ds-skel{0%{background-position:200% 0}to{background-position:-200% 0}}.ds-sidebar{width:var(--inf-size-layout-240);background:var(--p-bg-sunken);border-right:1px solid var(--p-border);display:flex;flex-direction:column;height:100%}.ds-sidebar-header{padding:var(--spacing-named-xl) var(--spacing-named-2xl);border-bottom:1px solid var(--p-border);display:flex;align-items:center;gap:var(--spacing-named-md);font-weight:var(--typography-font-weight-semibold);font-size:var(--p-font-size-13)}.ds-sidebar-section{padding:var(--spacing-named-md) var(--spacing-named-md)}.ds-sidebar-section-label{font-family:var(--p-mono);font-size:var(--p-font-size-10);text-transform:uppercase;letter-spacing:.08em;color:var(--p-fg-quiet);padding:var(--spacing-named-sm) var(--spacing-named-md);font-weight:var(--typography-font-weight-semibold)}.ds-sidebar-item{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-sm) var(--spacing-named-md);border-radius:var(--radius-sm);font-size:var(--p-font-size-13);color:var(--p-fg-muted);cursor:pointer}.ds-sidebar-item:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-sidebar-item.is-active{background:var(--p-bg-active);color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}[data-theme=dark] .ds-sidebar-item.is-active{color:var(--p-accent)}.ds-cmdbar{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-md) var(--spacing-named-xl);background:var(--p-bg-sunken);border-bottom:1px solid var(--p-border)}.ds-cmdbar .ds-input{flex:1}.ds-filters{width:var(--inf-size-layout-268);background:var(--p-bg-raised);border-right:1px solid var(--p-border);padding:var(--spacing-named-2xl)}.ds-filters-section{margin-bottom:var(--inf-space-20)}.ds-filters-section-title{font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--p-fg-subtle);margin:0 0 var(--spacing-named-md)}.ds-card{background:var(--p-bg-raised);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);padding:var(--spacing-named-2xl);transition:border-color var(--p-dur-fast) var(--p-ease)}.ds-card.is-hoverable:hover{border-color:var(--p-border-strong)}.ds-card-title{font-size:var(--font-size-sm);font-weight:var(--typography-font-weight-semibold);margin:0 0 var(--spacing-named-xs);color:var(--p-fg)}.ds-card-meta{font-size:var(--font-size-xs);color:var(--p-fg-subtle)}.ds-card-body{font-size:var(--p-font-size-13);line-height:1.5;color:var(--p-fg-muted);margin-top:8px}.ds-icon{width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.ds-icon--sm{width:var(--spacing-named-xl);height:var(--spacing-named-xl)}.ds-icon--lg{width:var(--spacing-named-3xl);height:var(--spacing-named-3xl)}.ds-icon--xl{width:var(--spacing-named-4xl);height:var(--spacing-named-4xl)}.is-hidden{display:none!important}.is-invisible{visibility:hidden!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.ds-toast{animation:none}.ds-modal{transition:none;transform:none}.ds-drawer{transition:none}.ds-skeleton{animation:none}}.ds-mobile-frame{position:relative;display:inline-flex;flex-direction:column;background:var(--p-fg);box-shadow:var(--p-shadow-lg),inset 0 0 0 1px var(--p-border-strong);flex-shrink:0;isolation:isolate}[data-theme=dark] .ds-mobile-frame{background:#000;box-shadow:var(--p-shadow-lg),inset 0 0 0 1px #ffffff1a}.ds-mobile-frame:after{content:"";position:absolute;inset:4px;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff0d}.ds-mobile-frame--ios{width:var(--p-size-390);height:var(--p-size-844);border-radius:var(--p-radius-47);padding:var(--spacing-named-xl)}.ds-mobile-frame--android{width:var(--p-size-412);height:var(--p-size-892);border-radius:var(--p-radius-32);padding:var(--spacing-named-lg)}.ds-mobile-frame--innfinity{width:var(--p-size-402);height:var(--p-size-800);border-radius:var(--p-radius-40);padding:var(--spacing-named-xl)}.ds-mobile-frame--compact{transform:scale(.75);transform-origin:top center;margin-bottom:-210px}.ds-mobile-frame--mini{transform:scale(.6);transform-origin:top center;margin-bottom:-340px}.ds-mobile-viewport{position:relative;width:100%;height:100%;background:var(--p-bg);border-radius:var(--p-radius-36);overflow:hidden;display:flex;flex-direction:column;font-family:var(--p-sans);color:var(--p-fg)}.ds-mobile-frame--android .ds-mobile-viewport{border-radius:var(--p-radius-24)}.ds-mobile-frame--innfinity .ds-mobile-viewport{border-radius:var(--p-radius-30)}.ds-mobile-statusbar{flex-shrink:0;height:var(--inf-density-spacious);display:flex;align-items:center;justify-content:space-between;padding:0 var(--inf-size-btn-sm) 0 var(--inf-size-btn-sm);font-family:var(--p-sans);font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);letter-spacing:-.01em;position:relative;z-index:2}.ds-mobile-statusbar--android{height:var(--inf-size-btn-sm);padding:0 var(--spacing-named-2xl);font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-medium)}.ds-mobile-statusbar-glyphs{display:inline-flex;align-items:center;gap:var(--spacing-named-sm)}.ds-mobile-statusbar-glyphs svg{width:var(--spacing-named-2xl);height:var(--inf-space-12);fill:currentColor;display:block}.ds-mobile-statusbar-glyphs .glyph-battery{width:var(--spacing-named-4xl);height:var(--spacing-named-xl)}.ds-mobile-notch{position:absolute;top:11px;left:50%;transform:translate(-50%);width:var(--spacing-named-10xl);height:var(--spacing-named-5xl);background:#000;border-radius:var(--radius-4xl);z-index:3;pointer-events:none}.ds-mobile-frame--ios .ds-mobile-statusbar{padding-top:4px}.ds-mobile-frame--ios .ds-mobile-statusbar>span:first-child{margin-left:-4px}.ds-mobile-home-indicator{flex-shrink:0;height:var(--inf-space-20);display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;background:transparent}.ds-mobile-home-indicator:before{content:"";width:var(--inf-size-layout-134);height:var(--inf-space-4);border-radius:var(--inf-radius-full);background:var(--p-fg);opacity:.95}[data-theme=dark] .ds-mobile-home-indicator:before{background:#fff}.ds-mobile-android-nav{flex-shrink:0;height:var(--spacing-named-2xl);display:flex;align-items:center;justify-content:center;background:var(--p-bg)}.ds-mobile-android-nav:before{content:"";width:var(--inf-size-layout-108);height:var(--spacing-named-xs);border-radius:var(--inf-radius-full);background:var(--p-fg);opacity:.6}.ds-mobile-screen{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:var(--p-bg);position:relative}.ds-mobile-screen-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.ds-mobile-appbar{flex-shrink:0;padding:var(--spacing-named-md) var(--spacing-named-2xl) var(--spacing-named-lg);display:flex;align-items:center;gap:var(--spacing-named-lg);background:var(--p-bg);border-bottom:1px solid var(--p-border);min-height:var(--inf-density-spacious)}.ds-mobile-appbar--ios{padding:var(--spacing-named-sm) var(--spacing-named-xl);min-height:var(--inf-density-spacious)}.ds-mobile-appbar--ios-large{flex-direction:column;align-items:flex-start;padding:var(--spacing-named-md) var(--spacing-named-2xl) var(--spacing-named-xl);border-bottom:none;gap:var(--spacing-named-sm)}.ds-mobile-appbar--ios-large .ds-mobile-appbar-large-title{font-family:var(--p-display);font-size:var(--p-font-size-34);font-weight:var(--typography-font-weight-semibold);letter-spacing:-.02em;margin:0;color:var(--p-fg);line-height:1.05}.ds-mobile-appbar--material{padding:var(--spacing-named-lg) var(--spacing-named-md) var(--spacing-named-lg) var(--p-size-14);min-height:var(--spacing-named-8xl);background:var(--p-bg-raised)}.ds-mobile-appbar-title{font-family:var(--p-display);font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);letter-spacing:-.01em;margin:0;flex:1 1 auto;color:var(--p-fg)}.ds-mobile-appbar-title--material{font-size:var(--font-size-xl);font-weight:var(--typography-font-weight-medium);font-family:var(--p-sans)}.ds-mobile-iconbtn{width:var(--inf-size-btn-lg);height:var(--inf-size-btn-lg);display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--p-fg);border-radius:var(--p-radius-pill);cursor:pointer;flex-shrink:0}.ds-mobile-iconbtn:hover{background:var(--p-bg-hover)}.ds-mobile-iconbtn svg{width:var(--p-size-22);height:var(--p-size-22);stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ds-mobile-iconbtn--ios{color:var(--p-accent-strong)}[data-theme=dark] .ds-mobile-iconbtn--ios{color:var(--p-accent)}.ds-mobile-tabbar{flex-shrink:0;display:grid;grid-template-columns:repeat(var(--tabs, 4),1fr);background:var(--p-bg);border-top:1px solid var(--p-border);padding:var(--spacing-named-sm) var(--spacing-named-sm) var(--spacing-named-xs)}.ds-mobile-tabbar--material{background:var(--p-bg-raised);padding:var(--spacing-named-md) var(--spacing-named-md) var(--spacing-named-sm)}.ds-mobile-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--inf-space-4);padding:var(--spacing-named-sm) var(--spacing-named-xs);color:var(--p-fg-quiet);background:transparent;border:0;font-family:var(--p-sans);font-size:var(--p-font-size-10);font-weight:var(--typography-font-weight-medium);cursor:pointer;min-height:var(--spacing-named-7xl);position:relative}.ds-mobile-tab svg{width:var(--spacing-named-4xl);height:var(--spacing-named-4xl);stroke:currentColor;fill:none;stroke-width:2}.ds-mobile-tab.is-active{color:var(--p-brand)}[data-theme=dark] .ds-mobile-tab.is-active{color:var(--p-accent)}.ds-mobile-tab--material.is-active:before{content:"";position:absolute;top:4px;left:50%;transform:translate(-50%);width:var(--inf-size-avatar-xl);height:var(--inf-size-btn-sm);border-radius:var(--p-radius-14);background:#63c1ec2e;z-index:0}.ds-mobile-tab--material svg{position:relative;z-index:1}.ds-mobile-tab--material span{position:relative;z-index:1;font-size:var(--p-font-size-11)}.ds-mobile-tab-badge{position:absolute;top:4px;left:calc(50% + 8px);background:var(--p-error);color:#fff;font-size:var(--p-font-size-9);font-weight:var(--typography-font-weight-semibold);padding:1px var(--inf-space-4);border-radius:var(--inf-radius-full);min-width:var(--spacing-named-2xl);text-align:center;line-height:1.3}.ds-mobile-fab{position:absolute;bottom:88px;right:16px;width:var(--inf-size-avatar-xl);height:var(--inf-size-avatar-xl);background:var(--p-brand);color:var(--p-fg-on-brand);border:0;border-radius:var(--radius-3xl);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--p-shadow-md);cursor:pointer;z-index:2}[data-theme=dark] .ds-mobile-fab{background:var(--p-accent);color:var(--p-bg)}.ds-mobile-fab svg{width:var(--spacing-named-4xl);height:var(--spacing-named-4xl);stroke:currentColor;fill:none;stroke-width:2.2}.ds-mobile-fab--center{position:relative;bottom:auto;right:auto;margin-top:-28px;width:var(--inf-size-avatar-xl);height:var(--inf-size-avatar-xl);border-radius:var(--inf-radius-full);justify-self:center;align-self:start}.ds-mobile-overlay{position:absolute;inset:0;background:#021a2573;z-index:5;display:flex;align-items:flex-end}.ds-mobile-overlay--drawer{align-items:stretch;justify-content:flex-start}.ds-mobile-sheet{width:100%;background:var(--p-bg-raised);border-top-left-radius:20px;border-top-right-radius:20px;padding:var(--spacing-named-md) var(--spacing-named-2xl) var(--spacing-named-2xl);display:flex;flex-direction:column}.ds-mobile-sheet--half{max-height:50%}.ds-mobile-sheet--full{max-height:92%;min-height:92%}.ds-mobile-sheet-handle{width:var(--inf-size-btn-lg);height:var(--inf-space-4);border-radius:var(--inf-radius-full);background:var(--p-border-strong);align-self:center;margin-bottom:12px;flex-shrink:0}.ds-mobile-sheet-title{font-family:var(--p-display);font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);margin:0 0 var(--spacing-named-xl);color:var(--p-fg)}.ds-mobile-drawer{width:84%;max-width:var(--inf-size-layout-320);background:var(--p-bg-raised);padding:var(--spacing-named-2xl) 0 var(--spacing-named-2xl);display:flex;flex-direction:column;gap:var(--spacing-named-xs);border-right:1px solid var(--p-border)}.ds-mobile-drawer-header{padding:var(--spacing-named-md) var(--spacing-named-3xl) var(--spacing-named-2xl);border-bottom:1px solid var(--p-border);margin-bottom:8px}.ds-mobile-drawer-name{font-weight:var(--typography-font-weight-semibold);font-size:var(--inf-font-size-16);color:var(--p-fg);margin:0}.ds-mobile-drawer-meta{font-size:var(--font-size-xs);color:var(--p-fg-subtle);margin:2px 0 0}.ds-mobile-drawer-item{display:flex;align-items:center;gap:var(--p-size-14);padding:var(--spacing-named-xl) var(--spacing-named-3xl);font-size:var(--font-size-sm);color:var(--p-fg);cursor:pointer;border-radius:0 var(--inf-radius-full) var(--inf-radius-full) 0;margin-right:12px}.ds-mobile-drawer-item svg{width:var(--spacing-named-3xl);height:var(--spacing-named-3xl);stroke:currentColor;fill:none;stroke-width:2}.ds-mobile-drawer-item.is-active{background:#63c1ec29;color:var(--p-accent-strong);font-weight:var(--typography-font-weight-semibold)}[data-theme=dark] .ds-mobile-drawer-item.is-active{color:var(--p-accent)}.ds-mobile-list{display:flex;flex-direction:column;gap:var(--spacing-named-md);padding:var(--spacing-named-xl) var(--spacing-named-2xl)}.ds-mobile-row{background:var(--p-bg-raised);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);padding:var(--spacing-named-xl) var(--p-size-14);display:flex;align-items:center;gap:var(--spacing-named-xl)}.ds-mobile-row-avatar{width:var(--spacing-named-6xl);height:var(--spacing-named-6xl);border-radius:var(--inf-radius-full);background:var(--p-bg-active);color:var(--p-brand);display:inline-flex;align-items:center;justify-content:center;font-weight:var(--typography-font-weight-semibold);font-size:var(--p-font-size-13);flex-shrink:0}[data-theme=dark] .ds-mobile-row-avatar{color:var(--p-accent)}.ds-mobile-row-body{flex:1 1 auto;min-width:0}.ds-mobile-row-title{font-size:var(--font-size-sm);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);margin:0 0 2px;line-height:1.25}.ds-mobile-row-sub{font-size:var(--font-size-xs);color:var(--p-fg-subtle);margin:0;line-height:1.35}.ds-mobile-row-trail{font-size:var(--p-font-size-11);color:var(--p-fg-quiet);flex-shrink:0;font-family:var(--p-mono)}.ds-mobile-section-title{font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--p-fg-subtle);margin:var(--spacing-named-2xl) var(--spacing-named-2xl) var(--spacing-named-sm)}.ds-mobile-hero{margin:var(--spacing-named-xl) var(--spacing-named-2xl) var(--spacing-named-md);padding:var(--spacing-named-2xl);border-radius:var(--p-radius-lg);background:linear-gradient(135deg,var(--p-brand) 0%,var(--p-fg-muted) 100%);color:var(--p-fg-on-brand)}[data-theme=dark] .ds-mobile-hero{background:linear-gradient(135deg,var(--p-bg-raised) 0%,var(--p-bg-active) 100%);color:var(--p-fg)}.ds-mobile-hero-eyebrow{font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;opacity:.75;margin:0 0 var(--spacing-named-xs)}.ds-mobile-hero-title{font-family:var(--p-display);font-size:var(--font-size-xl);font-weight:var(--typography-font-weight-semibold);margin:0 0 var(--spacing-named-xs);letter-spacing:-.01em}.ds-mobile-hero-meta{font-size:var(--font-size-xs);opacity:.9;margin:0;font-family:var(--p-mono)}.ds-mobile-segmented{display:inline-flex;background:var(--p-bg-sunken);border-radius:var(--radius-lg);padding:2px;margin:var(--spacing-named-md) var(--spacing-named-2xl) var(--spacing-named-xs);align-self:stretch}.ds-mobile-segmented-btn{flex:1;background:transparent;border:0;padding:var(--inf-space-8) var(--spacing-named-lg);font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-subtle);cursor:pointer;border-radius:var(--radius-md);font-family:var(--p-sans)}.ds-mobile-segmented-btn.is-active{background:var(--p-bg);color:var(--p-fg);box-shadow:var(--p-shadow-sm);font-weight:var(--typography-font-weight-semibold)}.ds-mobile-snackbar{position:absolute;left:12px;right:12px;bottom:var(--inf-space-80);background:var(--p-fg);color:var(--p-bg);border-radius:var(--radius-lg);padding:var(--spacing-named-xl) var(--p-size-14);display:flex;align-items:center;gap:var(--spacing-named-xl);z-index:4;box-shadow:var(--p-shadow-md);font-size:var(--p-font-size-13)}.ds-mobile-snackbar-action{background:transparent;border:0;color:var(--p-accent);font-weight:var(--typography-font-weight-semibold);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.06em;cursor:pointer;margin-left:auto}.ds-mobile-stage{display:flex;flex-wrap:wrap;gap:var(--spacing-named-5xl);justify-content:center;padding:var(--spacing-named-4xl);background:linear-gradient(135deg,var(--p-bg-sunken) 0%,var(--p-bg) 100%);border-radius:var(--p-radius-lg);border:1px solid var(--p-border)}.ds-mobile-stage--compact{gap:var(--spacing-named-2xl);padding:var(--spacing-named-2xl)}.ds-mobile-stage-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-named-md);flex-shrink:0}.ds-mobile-stage-label{font-family:var(--p-mono);font-size:var(--p-font-size-11);color:var(--p-fg-subtle);letter-spacing:.04em;text-transform:uppercase}@media(max-width:900px){.ds-mobile-frame{transform:scale(.7);transform-origin:top center;margin-bottom:-260px}.ds-mobile-frame--compact{transform:scale(.55);margin-bottom:-380px}.ds-mobile-frame--mini{transform:scale(.45);margin-bottom:-480px}}@media(max-width:560px){.ds-mobile-frame{transform:scale(.55);margin-bottom:-380px}}.ds-skeleton--circle{border-radius:var(--inf-radius-full)}.ds-skeleton--static{animation:none;background:var(--p-bg-sunken)}.ds-divider{border:0;border-top:1px solid var(--p-border);margin:var(--spacing-named-2xl) 0;width:100%;height:1px;background:transparent}.ds-divider--vertical{display:inline-block;width:1px;height:var(--spacing-named-4xl);border-top:0;border-left:1px solid var(--p-border);margin:0 var(--spacing-named-md);vertical-align:middle}.ds-divider-labelled{display:flex;align-items:center;gap:var(--spacing-named-md);margin:var(--spacing-named-2xl) 0;font-family:var(--p-mono);font-size:var(--p-font-size-11);text-transform:uppercase;letter-spacing:.08em;color:var(--p-fg-quiet)}.ds-divider-labelled:before,.ds-divider-labelled:after{content:"";flex:1;border-top:1px solid var(--p-border)}.ds-spinner{display:inline-block;width:var(--p-size-14);height:var(--p-size-14);border:2px solid transparent;border-top-color:currentColor;border-right-color:currentColor;border-radius:var(--inf-radius-full);animation:ds-spin var(--p-dur-spinner, var(--motion-duration-spin)) linear infinite;vertical-align:middle;flex-shrink:0}.ds-spinner--sm{width:var(--spacing-named-xl);height:var(--spacing-named-xl)}.ds-spinner--lg{width:var(--spacing-named-4xl);height:var(--spacing-named-4xl)}.ds-spinner--brand{color:var(--p-brand)}.ds-spinner--on-brand{color:var(--p-fg-on-brand)}@keyframes ds-spin{to{transform:rotate(360deg)}}.ds-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:var(--spacing-named-3xl);height:var(--spacing-named-3xl);padding:0 var(--spacing-named-sm);font-family:var(--p-mono);font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-muted);background:var(--p-bg);border:1px solid var(--p-border);border-bottom-width:2px;border-radius:var(--p-radius-sm);line-height:1;vertical-align:middle}.ds-kbd--muted{background:var(--p-bg-sunken);color:var(--p-fg-subtle)}.ds-kbd--on-bg{background:var(--p-bg-raised);color:var(--p-fg)}.ds-kbd--sm{min-width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);font-size:var(--p-font-size-10);padding:0 var(--spacing-named-xs)}.ds-kbd--lg{min-width:var(--spacing-named-4xl);height:var(--spacing-named-4xl);font-size:var(--p-font-size-13)}.ds-link{color:var(--p-brand);text-decoration:none;border-radius:var(--p-radius-sm);transition:color var(--p-dur-fast) var(--p-ease)}.ds-link:hover,.ds-link:focus-visible{text-decoration:underline}.ds-link:focus-visible{outline:2px solid var(--inf-color-focus-ring);outline-offset:2px}.ds-link--muted{color:var(--p-fg-muted)}.ds-link--muted:hover{color:var(--p-fg)}.ds-link--inverse,.ds-link--inverse:hover{color:var(--p-fg-on-brand)}.ds-link-ext-icon{display:inline-block;margin-left:var(--spacing-named-xs);stroke:currentColor;fill:none;stroke-width:2;vertical-align:middle}.ds-codechip{display:inline-flex;align-items:center;padding:0 var(--spacing-named-sm);height:var(--spacing-named-3xl);font-family:var(--p-mono);font-size:var(--p-font-size-11);color:var(--p-fg);background:var(--p-bg-sunken);border:1px solid var(--p-border);border-radius:var(--p-radius-sm);line-height:1;vertical-align:middle;white-space:nowrap}.ds-codechip--muted{background:transparent;border-color:transparent;color:var(--p-fg-muted)}.ds-stepper{display:flex;align-items:center;gap:var(--spacing-named-md);list-style:none;margin:0;padding:0;font-size:var(--p-font-size-13)}.ds-stepper-step{display:inline-flex;align-items:center;gap:var(--spacing-named-sm);color:var(--p-fg-quiet);position:relative}.ds-stepper-step+.ds-stepper-step:before{content:"";display:inline-block;width:var(--spacing-named-4xl);height:1px;background:var(--p-border);margin-right:var(--spacing-named-sm)}.ds-stepper-marker{display:inline-flex;align-items:center;justify-content:center;width:var(--spacing-named-4xl);height:var(--spacing-named-4xl);border-radius:var(--inf-radius-full);background:var(--p-bg-sunken);color:var(--p-fg-subtle);font-weight:var(--typography-font-weight-semibold);font-size:var(--p-font-size-11);flex-shrink:0}.ds-stepper-step.is-done .ds-stepper-marker{background:var(--p-brand);color:var(--p-fg-on-brand)}.ds-stepper-step.is-active .ds-stepper-marker{background:var(--p-brand);color:var(--p-fg-on-brand);box-shadow:0 0 0 4px var(--p-bg-active)}.ds-stepper-step.is-active{color:var(--p-fg)}.ds-stepper-step.is-done{color:var(--p-fg-muted)}.ds-stepper-label{font-weight:var(--typography-font-weight-medium)}.ds-stepper-desc{font-size:var(--p-font-size-11);color:var(--p-fg-subtle)}.ds-stepper--vertical{flex-direction:column;align-items:flex-start}.ds-stepper--vertical .ds-stepper-step+.ds-stepper-step:before{display:block;width:1px;height:var(--spacing-named-2xl);margin:0 0 0 var(--spacing-named-md)}.ds-stepper--detailed .ds-stepper-step{align-items:flex-start}.ds-number-input{position:relative;display:inline-flex;align-items:stretch}.ds-number-input .ds-input{padding-right:var(--spacing-named-5xl)}.ds-number-input-stepper{position:absolute;right:1px;top:1px;bottom:1px;width:var(--spacing-named-4xl);display:flex;flex-direction:column;border-left:1px solid var(--p-border)}.ds-number-input-stepper button{flex:1;background:transparent;border:0;color:var(--p-fg-muted);cursor:pointer;font-size:var(--p-font-size-9);padding:0;line-height:1}.ds-number-input-stepper button:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-number-input-stepper button:disabled{opacity:.4;cursor:not-allowed}.ds-number-input--with-unit .ds-input{padding-right:var(--spacing-named-9xl)}.ds-number-input-unit{position:absolute;right:var(--spacing-named-5xl);top:50%;transform:translateY(-50%);font-size:var(--p-font-size-11);color:var(--p-fg-subtle);pointer-events:none}.ds-number-input--compact .ds-number-input-stepper{width:var(--spacing-named-3xl)}.ds-range{position:relative;display:flex;flex-direction:column;gap:var(--spacing-named-xs)}.ds-range-input{-webkit-appearance:none;appearance:none;width:100%;height:var(--spacing-named-xs);background:var(--p-bg-sunken);border-radius:var(--inf-radius-full);outline:none;cursor:pointer}.ds-range-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);border-radius:var(--inf-radius-full);background:var(--p-brand);border:2px solid var(--p-bg);box-shadow:var(--p-shadow-sm);cursor:pointer}.ds-range-input::-moz-range-thumb{width:var(--spacing-named-2xl);height:var(--spacing-named-2xl);border-radius:var(--inf-radius-full);background:var(--p-brand);border:2px solid var(--p-bg);cursor:pointer}.ds-range-input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--p-bg-active)}.ds-range-label{font-size:var(--p-font-size-11);color:var(--p-fg-muted);font-family:var(--p-mono)}.ds-range--dual{position:relative;height:var(--spacing-named-5xl)}.ds-range--dual .ds-range-track{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:var(--spacing-named-xs);background:var(--p-bg-sunken);border-radius:var(--inf-radius-full)}.ds-range--dual .ds-range-fill{position:absolute;top:0;bottom:0;background:var(--p-brand);border-radius:var(--inf-radius-full)}.ds-range--dual .ds-range-input{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);background:transparent;pointer-events:none}.ds-range--dual .ds-range-input::-webkit-slider-thumb{pointer-events:auto}.ds-range--dual .ds-range-input::-moz-range-thumb{pointer-events:auto}.ds-combobox{position:relative;display:flex;flex-direction:column;gap:var(--spacing-named-xs)}.ds-combobox-menu{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-named-xs);background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);max-height:var(--inf-size-layout-280);overflow-y:auto;z-index:10}.ds-combobox-option{padding:var(--spacing-named-md) var(--spacing-named-xl);font-size:var(--p-font-size-13);cursor:pointer}.ds-combobox-option:hover,.ds-combobox-option.is-active{background:var(--p-bg-hover)}.ds-combobox--multi{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-named-xs);align-items:center;padding:var(--spacing-named-sm);border:1px solid var(--p-border);border-radius:var(--p-radius-md);background:var(--p-bg)}.ds-combobox--multi .ds-input{border:0;padding:0;height:auto;min-width:var(--inf-size-layout-108);flex:1}.ds-combobox-create-hint{display:inline-flex;align-items:center;gap:var(--spacing-named-xs);font-size:var(--p-font-size-11);color:var(--p-fg-subtle);padding:var(--spacing-named-sm) var(--spacing-named-md)}.ds-tag--removable{display:inline-flex;align-items:center;gap:var(--spacing-named-xs);padding-right:var(--spacing-named-xs)}.ds-tag-remove{background:transparent;border:0;cursor:pointer;color:inherit;font-size:var(--p-font-size-13);line-height:1;padding:0 var(--spacing-named-xs)}.ds-input--inline{border:0;padding:0;background:transparent}.ds-switch-group{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-named-md)}.ds-switch-group-legend{font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--p-fg-subtle);padding:0 0 var(--spacing-named-sm)}.ds-switch-group-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-named-2xl);padding:var(--spacing-named-md) var(--spacing-named-xl);border:1px solid var(--p-border);border-radius:var(--p-radius-md);background:var(--p-bg);cursor:pointer}.ds-switch-group-item:hover{background:var(--p-bg-hover)}.ds-switch-group-label{font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-medium);color:var(--p-fg);display:block}.ds-switch-group-helper{font-size:var(--p-font-size-11);color:var(--p-fg-subtle);display:block}.ds-switch-group--horizontal{flex-direction:row;flex-wrap:wrap}.ds-otp{display:inline-flex;gap:var(--spacing-named-md)}.ds-otp-cell{width:var(--spacing-named-7xl);height:var(--spacing-named-7xl);text-align:center;font-family:var(--p-mono);font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);border:1px solid var(--p-border);border-radius:var(--p-radius-md);background:var(--p-bg);color:var(--p-fg)}.ds-otp-cell:focus-visible{outline:2px solid var(--inf-color-focus-ring);outline-offset:2px;border-color:var(--p-brand)}.ds-otp.is-error .ds-otp-cell{border-color:var(--p-error)}.ds-wizard{display:flex;flex-direction:column;background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);overflow:hidden}.ds-wizard-header{padding:var(--spacing-named-2xl);border-bottom:1px solid var(--p-border);background:var(--p-bg-raised)}.ds-wizard-body{padding:var(--spacing-named-2xl);min-height:var(--inf-size-layout-200)}.ds-wizard-footer{display:flex;justify-content:space-between;gap:var(--spacing-named-md);padding:var(--spacing-named-xl) var(--spacing-named-2xl);border-top:1px solid var(--p-border);background:var(--p-bg-raised)}.ds-wizard--vertical{flex-direction:row}.ds-wizard--vertical .ds-wizard-sidebar{padding:var(--spacing-named-2xl);background:var(--p-bg-raised);border-right:1px solid var(--p-border);min-width:var(--inf-size-layout-200)}.ds-wizard--vertical .ds-wizard-main{flex:1;display:flex;flex-direction:column}.ds-toast-queue{position:fixed;bottom:var(--spacing-named-2xl);right:var(--spacing-named-2xl);display:flex;flex-direction:column;gap:var(--spacing-named-md);z-index:100;pointer-events:none}.ds-toast-queue>*{pointer-events:auto}.ds-toast{display:inline-flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-md) var(--spacing-named-xl);background:var(--p-bg);border:1px solid var(--p-border);border-left-width:4px;border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);font-size:var(--p-font-size-13);color:var(--p-fg);min-width:var(--inf-size-layout-200)}.ds-toast--success{border-left-color:var(--p-success)}.ds-toast--info{border-left-color:var(--p-brand)}.ds-toast--warning{border-left-color:var(--p-warning)}.ds-toast--error{border-left-color:var(--p-error)}.ds-toast-icon{font-weight:var(--typography-font-weight-semibold);font-size:var(--inf-font-size-16)}.ds-toast--success .ds-toast-icon{color:var(--p-success)}.ds-toast--info .ds-toast-icon{color:var(--p-brand)}.ds-toast--warning .ds-toast-icon{color:var(--p-warning)}.ds-toast--error .ds-toast-icon{color:var(--p-error)}.ds-toast-close{background:transparent;border:0;cursor:pointer;color:var(--p-fg-quiet);margin-left:auto;font-size:var(--inf-font-size-16);line-height:1;padding:0 var(--spacing-named-xs)}.ds-banner{display:flex;align-items:flex-start;gap:var(--spacing-named-xl);padding:var(--spacing-named-xl) var(--spacing-named-2xl);background:var(--p-bg-sunken);border:1px solid var(--p-border);border-left-width:4px;border-radius:var(--p-radius-md);font-size:var(--p-font-size-13)}.ds-banner--info{border-left-color:var(--p-brand);background:var(--p-bg-sunken)}.ds-banner--warning{border-left-color:var(--p-warning);background:var(--p-bg-sunken)}.ds-banner--error{border-left-color:var(--p-error);background:var(--p-bg-sunken)}.ds-banner--success{border-left-color:var(--p-success);background:var(--p-bg-sunken)}.ds-banner-icon{font-weight:var(--typography-font-weight-semibold);font-size:var(--inf-font-size-16);flex-shrink:0}.ds-banner--info .ds-banner-icon{color:var(--p-brand)}.ds-banner--warning .ds-banner-icon{color:var(--p-warning)}.ds-banner--error .ds-banner-icon{color:var(--p-error)}.ds-banner--success .ds-banner-icon{color:var(--p-success)}.ds-banner-body{display:flex;flex-direction:column;gap:var(--spacing-named-xs);flex:1}.ds-banner-title{font-weight:var(--typography-font-weight-semibold);color:var(--p-fg)}.ds-banner-text{color:var(--p-fg-muted)}.ds-banner-close{background:transparent;border:0;color:var(--p-fg-quiet);cursor:pointer;font-size:var(--inf-font-size-16);line-height:1;padding:0 var(--spacing-named-xs)}.ds-dialog{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow-lg);max-width:var(--inf-size-layout-420)}.ds-dialog-header{padding:var(--spacing-named-2xl) var(--spacing-named-2xl) var(--spacing-named-md);font-weight:var(--typography-font-weight-semibold);font-size:var(--inf-font-size-16);color:var(--p-fg)}.ds-dialog-body{padding:0 var(--spacing-named-2xl) var(--spacing-named-2xl);color:var(--p-fg-muted);font-size:var(--p-font-size-13)}.ds-dialog-footer{display:flex;justify-content:flex-end;gap:var(--spacing-named-md);padding:var(--spacing-named-xl) var(--spacing-named-2xl);background:var(--p-bg-raised);border-top:1px solid var(--p-border)}.ds-sheet{background:var(--p-bg);box-shadow:var(--p-shadow-lg);display:flex;flex-direction:column}.ds-sheet--bottom{border-top-left-radius:var(--p-radius-lg);border-top-right-radius:var(--p-radius-lg);padding:var(--spacing-named-2xl)}.ds-sheet--side{border-radius:var(--p-radius-lg);padding:var(--spacing-named-2xl);border:1px solid var(--p-border)}.ds-sheet-handle{width:var(--spacing-named-7xl);height:var(--spacing-named-xs);background:var(--p-border-strong);border-radius:var(--inf-radius-full);margin:0 auto var(--spacing-named-xl)}.ds-sheet-header{font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);padding-bottom:var(--spacing-named-xl);border-bottom:1px solid var(--p-border);margin-bottom:var(--spacing-named-xl)}.ds-sheet-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-named-xs)}.ds-sheet-list button{width:100%;text-align:left;background:transparent;border:0;padding:var(--spacing-named-md) var(--spacing-named-xl);border-radius:var(--p-radius-md);font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer}.ds-sheet-list button:hover{background:var(--p-bg-hover)}.ds-sheet-body{flex:1}.ds-carousel{position:relative;overflow:hidden}.ds-carousel-track{display:flex;gap:var(--spacing-named-xl);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:var(--spacing-named-2xl);padding:var(--spacing-named-xs)}.ds-carousel-track>*{scroll-snap-align:start;flex-shrink:0}.ds-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:var(--spacing-named-7xl);height:var(--spacing-named-7xl);border-radius:var(--inf-radius-full);background:var(--p-bg);border:1px solid var(--p-border);cursor:pointer;box-shadow:var(--p-shadow-sm);color:var(--p-fg)}.ds-carousel-arrow--prev{left:var(--spacing-named-md)}.ds-carousel-arrow--next{right:var(--spacing-named-md)}.ds-carousel--quickpick .ds-carousel-track{gap:var(--spacing-named-md)}.ds-calendar{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);padding:var(--spacing-named-xl);font-size:var(--p-font-size-13)}.ds-calendar-header{display:flex;align-items:center;justify-content:space-between;font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);margin-bottom:var(--spacing-named-md)}.ds-calendar-nav{background:transparent;border:0;cursor:pointer;color:var(--p-fg-muted);font-size:var(--p-font-size-13);padding:var(--spacing-named-xs) var(--spacing-named-sm);border-radius:var(--p-radius-sm)}.ds-calendar-nav:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-named-xs)}.ds-calendar-day-name{font-size:var(--p-font-size-11);color:var(--p-fg-subtle);text-align:center;font-weight:var(--typography-font-weight-semibold);padding:var(--spacing-named-xs) 0}.ds-calendar-day{display:inline-flex;align-items:center;justify-content:center;height:var(--spacing-named-7xl);border-radius:var(--p-radius-sm);background:transparent;color:var(--p-fg);border:0;cursor:pointer;font-size:var(--p-font-size-13)}.ds-calendar-day:hover{background:var(--p-bg-hover)}.ds-calendar-day.is-today{background:var(--p-bg-active);font-weight:var(--typography-font-weight-semibold)}.ds-calendar-day.is-selected,.ds-calendar-day.is-range-end{background:var(--p-brand);color:var(--p-fg-on-brand);font-weight:var(--typography-font-weight-semibold)}.ds-calendar-day.is-in-range{background:var(--p-bg-active)}.ds-calendar-day.is-blocked{color:var(--p-fg-quiet);text-decoration:line-through;cursor:not-allowed}.ds-calendar-day.is-partial{background:linear-gradient(135deg,var(--p-bg-active) 50%,transparent 50%)}.ds-combobox-panel{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);padding:var(--spacing-named-xl);display:flex;flex-direction:column;gap:var(--spacing-named-md)}.ds-combobox-panel-results{display:flex;flex-direction:column;max-height:var(--inf-size-layout-280);overflow-y:auto}.ds-combobox-panel-group{padding:var(--spacing-named-md) var(--spacing-named-xl) var(--spacing-named-xs);font-size:var(--p-font-size-10);text-transform:uppercase;letter-spacing:.08em;color:var(--p-fg-subtle);font-weight:var(--typography-font-weight-semibold)}.ds-combobox-panel-item{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-md) var(--spacing-named-xl);font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer;border-radius:var(--p-radius-sm)}.ds-combobox-panel-item:hover,.ds-combobox-panel-item.is-active{background:var(--p-bg-hover)}.ds-combobox-panel-item .muted{color:var(--p-fg-subtle);font-size:var(--p-font-size-11);margin-left:auto}.ds-combobox-panel-footer{display:flex;justify-content:flex-end;gap:var(--spacing-named-md);padding-top:var(--spacing-named-md);border-top:1px solid var(--p-border)}.ds-dashboard-3pane{display:grid;grid-template-columns:var(--inf-size-layout-240) 1fr var(--inf-size-layout-320);gap:0;height:100%}.ds-dashboard-3pane[data-right-open=false]{grid-template-columns:var(--inf-size-layout-240) 1fr 0}.ds-dashboard-nav{background:var(--p-bg-sunken);border-right:1px solid var(--p-border);overflow-y:auto}.ds-dashboard-main{background:var(--p-bg);overflow-y:auto}.ds-dashboard-detail{background:var(--p-bg-raised);border-left:1px solid var(--p-border);overflow-y:auto}.ds-booking-grid{display:grid;gap:1px;background:var(--p-border);font-size:var(--p-font-size-11)}.ds-booking-grid-corner,.ds-booking-grid-day,.ds-booking-grid-row-label,.ds-booking-grid-cell{background:var(--p-bg);padding:var(--spacing-named-sm)}.ds-booking-grid-day{background:var(--p-bg-sunken);font-weight:var(--typography-font-weight-semibold);text-align:center}.ds-booking-grid-row-label{background:var(--p-bg-raised);font-weight:var(--typography-font-weight-semibold);position:sticky;left:0;z-index:1}.ds-booking-grid-corner{background:var(--p-bg-sunken);position:sticky;left:0;top:0;z-index:2}.ds-booking-grid-bar{height:var(--spacing-named-4xl);border-radius:var(--p-radius-sm);padding:0 var(--spacing-named-sm);display:inline-flex;align-items:center;font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-on-brand)}.ds-booking-grid-bar--success{background:var(--p-success)}.ds-booking-grid-bar--warning{background:var(--p-warning)}.ds-booking-grid-bar--error{background:var(--p-error)}.ds-booking-grid-bar--info{background:var(--p-brand)}.ds-inbox{display:grid;grid-template-columns:var(--inf-size-layout-320) 1fr;gap:0;height:100%;background:var(--p-bg)}.ds-inbox-list{list-style:none;margin:0;padding:0;border-right:1px solid var(--p-border);overflow-y:auto}.ds-inbox-item{padding:var(--spacing-named-xl);border-bottom:1px solid var(--p-border);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-named-xs)}.ds-inbox-item:hover{background:var(--p-bg-hover)}.ds-inbox-item.is-selected{background:var(--p-bg-active);border-left:4px solid var(--p-brand)}.ds-inbox-item-title{font-weight:var(--typography-font-weight-semibold);color:var(--p-fg);font-size:var(--p-font-size-13)}.ds-inbox-item.is-unread .ds-inbox-item-title{font-weight:var(--typography-font-weight-semibold)}.ds-inbox-item-preview{font-size:var(--p-font-size-11);color:var(--p-fg-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-inbox-item-time{font-size:var(--p-font-size-10);color:var(--p-fg-subtle);font-family:var(--p-mono)}.ds-inbox-detail{padding:var(--spacing-named-2xl);overflow-y:auto}.ds-detail-view{display:grid;grid-template-areas:"header header" "nav body";grid-template-columns:var(--inf-size-layout-200) 1fr;gap:0;background:var(--p-bg);height:100%}.ds-detail-view-header{grid-area:header;position:sticky;top:0;background:var(--p-bg-raised);border-bottom:1px solid var(--p-border);padding:var(--spacing-named-xl) var(--spacing-named-2xl);display:flex;align-items:center;justify-content:space-between;z-index:1}.ds-detail-view-title{display:flex;align-items:center;gap:var(--spacing-named-md)}.ds-detail-view-title h1{margin:0;font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold)}.ds-detail-view-actions{display:flex;gap:var(--spacing-named-md)}.ds-detail-view-nav{grid-area:nav;background:var(--p-bg-sunken);border-right:1px solid var(--p-border);padding:var(--spacing-named-xl);display:flex;flex-direction:column;gap:var(--spacing-named-md);font-size:var(--p-font-size-13)}.ds-detail-view-nav a{color:var(--p-fg-muted);text-decoration:none;padding:var(--spacing-named-sm) var(--spacing-named-md);border-radius:var(--p-radius-sm)}.ds-detail-view-nav a:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-detail-view-nav a.is-active{background:var(--p-bg-active);color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}.ds-detail-view-body{grid-area:body;padding:var(--spacing-named-2xl);overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-named-2xl)}.ds-wizard-layout{display:flex;flex-direction:column;background:var(--p-bg);height:100%}.ds-wizard-layout-header{position:sticky;top:0;background:var(--p-bg-raised);border-bottom:1px solid var(--p-border);padding:var(--spacing-named-xl) var(--spacing-named-2xl);z-index:1}.ds-wizard-layout-header h1{margin:0 0 var(--spacing-named-md);font-size:var(--inf-font-size-16);font-weight:var(--typography-font-weight-semibold)}.ds-wizard-layout-body{flex:1;overflow-y:auto;padding:var(--spacing-named-7xl) var(--spacing-named-2xl);display:flex;flex-direction:column;align-items:center}.ds-wizard-layout[data-layout=full-bleed] .ds-wizard-layout-body{padding:var(--spacing-named-2xl);align-items:stretch}.ds-wizard-layout-footer{position:sticky;bottom:0;background:var(--p-bg-raised);border-top:1px solid var(--p-border);padding:var(--spacing-named-xl) var(--spacing-named-2xl);display:flex;gap:var(--spacing-named-md);align-items:center;z-index:1}.ds-settings-panel{display:grid;grid-template-columns:var(--inf-size-layout-200) 1fr;gap:0;background:var(--p-bg);height:100%}.ds-settings-panel-nav{background:var(--p-bg-sunken);border-right:1px solid var(--p-border);padding:var(--spacing-named-xl);display:flex;flex-direction:column;gap:var(--spacing-named-xs);font-size:var(--p-font-size-13)}.ds-settings-panel-nav a{color:var(--p-fg-muted);text-decoration:none;padding:var(--spacing-named-md) var(--spacing-named-xl);border-radius:var(--p-radius-sm)}.ds-settings-panel-nav a:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-settings-panel-nav a.is-active{background:var(--p-bg-active);color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}.ds-settings-panel-body{padding:var(--spacing-named-2xl);overflow-y:auto}.ds-settings-panel-body section{display:flex;flex-direction:column;gap:var(--spacing-named-xl)}.ds-settings-panel-body section+section{margin-top:var(--spacing-named-5xl)}.ds-settings-panel-saved{font-size:var(--p-font-size-11);color:var(--p-fg-subtle);font-family:var(--p-mono)}.ds-settings-panel-footer{display:flex;justify-content:flex-end;gap:var(--spacing-named-md);padding-top:var(--spacing-named-xl);border-top:1px solid var(--p-border)}.ds-state-matrix .demo-frame{padding:var(--spacing-named-md)}.ds-stride-rail{display:inline-flex;gap:var(--spacing-named-xs);background:var(--p-bg-sunken);border:1px solid var(--p-border);border-radius:var(--p-radius-md);padding:var(--spacing-named-xs)}.ds-stride-preset{background:transparent;border:0;padding:var(--spacing-named-xs) var(--spacing-named-md);border-radius:var(--p-radius-sm);font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-muted);cursor:pointer;font-family:var(--p-mono);letter-spacing:.04em}.ds-stride-preset:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-stride-preset--active{background:var(--p-bg);color:var(--p-brand);box-shadow:var(--p-shadow-sm)}.ds-list-card{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);overflow:hidden}.ds-list-card-hd{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-md) var(--spacing-named-xl);background:var(--p-bg-sunken);border-bottom:1px solid var(--p-border);font-size:var(--p-font-size-13);font-weight:var(--typography-font-weight-semibold)}.ds-list-card-ttl{color:var(--p-fg)}.ds-list-card-count{margin-left:auto;font-family:var(--p-mono);font-size:var(--p-font-size-11);color:var(--p-fg-subtle);background:var(--p-bg);padding:var(--spacing-named-xs) var(--spacing-named-sm);border-radius:var(--inf-radius-full)}.ds-list-card-body{padding:var(--spacing-named-md)}.ds-list-card-row{padding:var(--spacing-named-sm) var(--spacing-named-md);font-size:var(--p-font-size-11);color:var(--p-fg-muted);border-radius:var(--p-radius-sm)}.ds-list-card-row:hover{background:var(--p-bg-hover);color:var(--p-fg)}.ds-list-card--info{border-left:4px solid var(--p-brand)}.ds-list-card--info .ds-list-card-hd{border-bottom-color:var(--p-brand)}.ds-list-card--warning{border-left:4px solid var(--p-warning)}.ds-list-card--error{border-left:4px solid var(--p-error)}.ds-list-card--success{border-left:4px solid var(--p-success)}.ds-filter-chip{display:inline-flex;align-items:center;gap:var(--spacing-named-xs);padding:var(--spacing-named-xs) var(--spacing-named-md);background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--inf-radius-full);font-size:var(--p-font-size-11);font-weight:var(--typography-font-weight-medium);color:var(--p-fg-muted);cursor:pointer;line-height:1.6}.ds-filter-chip:hover{background:var(--p-bg-hover);border-color:var(--p-border-strong);color:var(--p-fg)}.ds-filter-chip--active{background:var(--p-bg-active);border-color:var(--p-brand);color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}.ds-filter-chip--add{border-style:dashed;color:var(--p-fg-subtle)}.ds-filter-chip--add:hover{color:var(--p-brand);border-color:var(--p-brand)}.ds-filter-chip-remove{background:transparent;border:0;cursor:pointer;color:currentColor;font-size:var(--p-font-size-13);line-height:1;padding:0;margin-left:var(--spacing-named-xs);opacity:.7}.ds-filter-chip-remove:hover{opacity:1}.ds-context-menu{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-lg);padding:var(--spacing-named-xs);min-width:var(--inf-size-layout-200);z-index:100}.ds-context-menu-item{display:flex;align-items:center;width:100%;background:transparent;border:0;padding:var(--spacing-named-sm) var(--spacing-named-xl);text-align:left;font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer;border-radius:var(--p-radius-sm)}.ds-context-menu-item:hover{background:var(--p-bg-hover)}.ds-context-menu-item--destructive{color:var(--p-error)}.ds-context-menu-item--destructive:hover{background:var(--p-bg-hover)}.ds-context-menu-separator{height:1px;background:var(--p-border);margin:var(--spacing-named-xs) 0}.ds-context-menu-item.is-submenu:after{content:""}.ds-search-categorized{position:relative;display:flex;flex-direction:column;gap:var(--spacing-named-xs)}.ds-search-categorized-results{background:var(--p-bg);border:1px solid var(--p-border);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-md);max-height:var(--inf-size-layout-360);overflow-y:auto}.ds-search-categorized-group{padding:var(--spacing-named-sm) var(--spacing-named-xl) var(--spacing-named-xs);font-family:var(--p-mono);font-size:var(--p-font-size-10);text-transform:uppercase;letter-spacing:.08em;color:var(--p-fg-quiet);font-weight:var(--typography-font-weight-semibold)}.ds-search-categorized-item{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-sm) var(--spacing-named-xl);font-size:var(--p-font-size-13);color:var(--p-fg);cursor:pointer}.ds-search-categorized-item:hover,.ds-search-categorized-item.is-active{background:var(--p-bg-hover)}.ds-search-categorized-see-all{display:block;width:100%;background:transparent;border:0;border-top:1px solid var(--p-border);padding:var(--spacing-named-sm) var(--spacing-named-xl);text-align:left;font-size:var(--p-font-size-11);color:var(--p-brand);cursor:pointer;font-weight:var(--typography-font-weight-semibold)}.ds-search-categorized-see-all:hover{background:var(--p-bg-hover)}.ds-search-categorized-empty{padding:var(--spacing-named-2xl);text-align:center;font-size:var(--p-font-size-11);color:var(--p-fg-subtle)}.ds-action-bar{position:fixed;bottom:var(--spacing-named-2xl);left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-sm) var(--spacing-named-xl);background:var(--p-fg);color:var(--p-fg-on-brand);border-radius:var(--p-radius-md);box-shadow:var(--p-shadow-lg);font-size:var(--p-font-size-13);z-index:50}.ds-action-bar-context{font-family:var(--p-mono);font-size:var(--p-font-size-11);padding-right:var(--spacing-named-md);border-right:1px solid color-mix(in oklab,white 30%,transparent)}.ds-action-bar-stepper{display:inline-flex;gap:var(--spacing-named-xs)}.ds-action-bar .ds-btn{background:color-mix(in oklab,white 15%,transparent);color:var(--p-fg-on-brand);border-color:color-mix(in oklab,white 20%,transparent)}.ds-action-bar .ds-btn:hover{background:color-mix(in oklab,white 25%,transparent)}.ds-action-bar .ds-btn--primary{background:var(--p-brand);border-color:var(--p-brand)}.ds-multi-drawer{display:flex;flex-direction:column;background:var(--p-bg);border-left:1px solid var(--p-border);height:100%}.ds-multi-drawer-hd{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-named-xl) var(--spacing-named-2xl);border-bottom:1px solid var(--p-border);font-weight:var(--typography-font-weight-semibold);font-size:var(--inf-font-size-16)}.ds-multi-drawer-tabs{display:flex;border-bottom:1px solid var(--p-border);background:var(--p-bg-sunken);overflow-x:auto}.ds-multi-drawer-tab{background:transparent;border:0;padding:var(--spacing-named-md) var(--spacing-named-xl);font-size:var(--p-font-size-13);color:var(--p-fg-muted);cursor:pointer;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:var(--spacing-named-xs)}.ds-multi-drawer-tab:hover{color:var(--p-fg)}.ds-multi-drawer-tab.is-active{color:var(--p-brand);border-bottom-color:var(--p-brand);font-weight:var(--typography-font-weight-semibold)}.ds-multi-drawer-gap{display:inline-flex;align-items:center;justify-content:center;min-width:var(--spacing-named-xl);height:var(--spacing-named-xl);padding:0 var(--spacing-named-xs);background:var(--p-error);color:#fff;border-radius:var(--inf-radius-full);font-size:var(--p-font-size-9);font-weight:var(--typography-font-weight-semibold);font-family:var(--p-mono)}.ds-multi-drawer-body{flex:1;overflow-y:auto;padding:var(--spacing-named-2xl)}.ds-multi-drawer-foot{display:flex;align-items:center;gap:var(--spacing-named-md);padding:var(--spacing-named-xl) var(--spacing-named-2xl);background:var(--p-bg-raised);border-top:1px solid var(--p-border)}.ds-timeline-grid{display:grid;grid-template-columns:var(--inf-size-layout-108) repeat(auto-fill,minmax(var(--spacing-named-8xl),1fr));gap:1px;background:var(--p-border);font-size:var(--p-font-size-11)}.ds-timeline-corner,.ds-timeline-day,.ds-timeline-room,.ds-timeline-cell{background:var(--p-bg);padding:var(--spacing-named-sm)}.ds-timeline-corner{background:var(--p-bg-sunken);position:sticky;left:0;top:0;z-index:2;font-weight:var(--typography-font-weight-semibold)}.ds-timeline-day{background:var(--p-bg-sunken);text-align:center;font-weight:var(--typography-font-weight-semibold);position:sticky;top:0;z-index:1}.ds-timeline-day.is-today{background:var(--p-bg-active);color:var(--p-brand)}.ds-timeline-room{background:var(--p-bg-raised);font-weight:var(--typography-font-weight-semibold);position:sticky;left:0;z-index:1}.ds-timeline-cell{position:relative;height:var(--spacing-named-6xl)}.ds-timeline-bar{position:absolute;top:var(--spacing-named-xs);bottom:var(--spacing-named-xs);left:var(--spacing-named-xs);right:var(--spacing-named-xs);border-radius:var(--p-radius-sm);padding:0 var(--spacing-named-sm);display:flex;align-items:center;font-size:var(--p-font-size-10);font-weight:var(--typography-font-weight-semibold);color:var(--p-fg-on-brand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab}.ds-timeline-bar:active{cursor:grabbing}.ds-timeline-bar--success{background:var(--p-success)}.ds-timeline-bar--warning{background:var(--p-warning);color:#fff}.ds-timeline-bar--error{background:var(--p-error)}.ds-timeline-bar--brand{background:var(--p-brand)}.ds-timeline-bar--info{background:var(--p-accent)}.ds-selection-rectangle{position:absolute;background:color-mix(in oklab,var(--p-brand) 12%,transparent);border:1px dashed var(--p-brand);pointer-events:none;z-index:10}.ds-chart-sparkline,.ds-chart-line,.ds-chart-bar,.ds-chart-donut,.ds-chart-area{display:block;position:relative;background:var(--p-bg)}.ds-chart-sparkline{display:inline-block;width:var(--inf-size-layout-108);height:var(--spacing-named-5xl);vertical-align:middle}.ds-chart-line,.ds-chart-bar,.ds-chart-area{width:100%;height:var(--inf-size-layout-280)}.ds-chart-line svg,.ds-chart-bar svg,.ds-chart-area svg{display:block}.ds-chart-donut{width:var(--inf-size-layout-280);height:var(--inf-size-layout-280);margin:0 auto}.ds-chart-legend{display:flex;flex-wrap:wrap;gap:var(--spacing-named-md) var(--spacing-named-xl);margin-top:var(--spacing-named-md);font-size:var(--p-font-size-11);color:var(--p-fg-muted);font-family:var(--p-mono)}.ds-chart-legend-item{display:inline-flex;align-items:center;gap:var(--spacing-named-xs)}.ds-chart-legend-swatch{display:inline-block;width:var(--spacing-named-xl);height:var(--spacing-named-md);border-radius:var(--p-radius-sm)}.ds-chart-legend-value{color:var(--p-fg-subtle)}.ds-chart-a11y-table{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(prefers-reduced-motion:reduce){.ds-chart-line svg path,.ds-chart-area svg path,.ds-chart-bar svg rect,.ds-chart-donut svg path{transition:none!important}}html,body{height:100%}body{margin:0;font-family:var(--inf-font-family-sans);color:var(--inf-semantic-color-fg-primary);background:var(--inf-semantic-color-bg-secondary);-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}router-outlet+*{display:block;flex:1 1 auto;min-height:0;overflow:hidden}
