@crewlethq/artifact-kit 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/kit.css +1 -1
- package/dist/kit.js +1 -1
- package/package.json +4 -4
package/dist/kit.css
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
:root{--blur-xs: 3px;--blur-sm: 6px;--blur-md: 10px;--blur-lg: 16px;--blur-xl: 20px;--blur-2xl: 24px;--breakpoint-sm: 480px;--breakpoint-phone: 640px;--breakpoint-md: 768px;--breakpoint-shell: 1024px;--breakpoint-lg: 1024px;--breakpoint-xl: 1200px;--breakpoint-2xl: 1600px;--color-brand-accent: #7c56ff;--color-brand-accent-hover: #744bf4;--color-brand-accent-active: #6c40e9;--color-brand-accent-ink: #b3a1ff;--color-brand-accent-soft: rgba(124, 86, 255, .16);--color-brand-accent-deep: #5c24ff;--color-brand-highlight: #ff3bff;--color-brand-slate: #3c4052;--color-brand-mark: #7c56ff;--color-brand-gradient: linear-gradient(90deg, #ff3bff 0%, #ecbfbf 38%, #5c24ff 76%, #d94fd5 100%);--color-brand-accent-rgb: 124, 86, 255;--color-brand-accent-soft-strong: rgba(124, 86, 255, .32);--color-surface-frame: #000000;--color-surface-background: #000000;--color-surface-subtle: rgba(255, 255, 255, .05);--color-surface-elevated: rgba(255, 255, 255, .12);--color-surface-hover: rgba(255, 255, 255, .05);--color-surface-pressed: rgba(255, 255, 255, .08);--color-surface-inset: rgba(255, 255, 255, .05);--color-surface-glass: rgba(28, 30, 36, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(0, 0, 0, .65);--color-surface-inverse: #ffffff;--color-text-primary: #fafafa;--color-text-secondary: #c9ced8;--color-text-link-quiet: #bab2f2;--color-text-tertiary: #95a2b6;--color-text-muted: #686b70;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #09090b;--color-border-default: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .15);--color-border-strong: #4a4d52;--color-border-strong-hover: #5a5e65;--color-border-hatch: #2c2e31;--color-border-control: #7f848e;--color-focus: #7e5bff;--color-feedback-success: #3ecf8f;--color-feedback-success-ink: #72dead;--color-feedback-warning: #f4b221;--color-feedback-warning-ink: #f6c86f;--color-feedback-danger: #e50055;--color-feedback-danger-hover: #d6004f;--color-feedback-danger-ink: #ff9a9a;--color-feedback-info: #4c9dff;--color-feedback-info-ink: #86beff;--color-feedback-success-soft: rgba(62, 207, 143, .12);--color-feedback-success-line: rgba(62, 207, 143, .3);--color-feedback-warning-soft: rgba(244, 178, 33, .12);--color-feedback-warning-line: rgba(244, 178, 33, .3);--color-feedback-danger-soft: rgba(229, 0, 85, .12);--color-feedback-danger-line: rgba(229, 0, 85, .3);--color-feedback-info-soft: rgba(76, 157, 255, .12);--color-feedback-info-line: rgba(76, 157, 255, .3);--color-data-1: #458adc;--color-data-2: #e4631f;--color-data-3: #009c79;--color-data-4: #c98500;--color-data-other: #71717a;--color-avatar-tint-0: #2563eb;--color-avatar-tint-1: #7c3aed;--color-avatar-tint-2: #c026d3;--color-avatar-tint-3: #db2777;--color-avatar-tint-4: #dc2626;--color-avatar-tint-5: #d54400;--color-avatar-tint-6: #a76900;--color-avatar-tint-7: #008931;--color-avatar-tint-8: #00857a;--color-avatar-tint-9: #007cbe;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--color-qr-dark: #000000;--color-qr-light: #ffffff;--density-compact: .82;--density-normal: 1;--density-comfortable: 1.16;--motion-duration-instant: 75ms;--motion-duration-fast: .12s;--motion-duration-base: .15s;--motion-duration-moderate: .2s;--motion-duration-slow: .3s;--motion-duration-breath: 2.2s;--motion-easing-default: ease;--motion-easing-out: ease-out;--motion-easing-in-out: ease-in-out;--motion-easing-emphasized: cubic-bezier(.16, 1, .3, 1);--motion-easing-spring: cubic-bezier(.34, 1.56, .64, 1);--radius-none: 0px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-sheet: 14px;--radius-pill: 999px;--radius-circle: 50%;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3);--size-control-sm: max(24px, calc(26px * var(--density, 1)));--size-control-md: calc(30px * var(--density, 1));--size-control-lg: calc(44px * var(--density, 1));--size-row-sm: max(24px, calc(28px * var(--density, 1)));--size-row-md: calc(36px * var(--density, 1));--size-row-lg: calc(48px * var(--density, 1));--size-sheet-row: calc(32px * var(--density, 1));--size-nav-gutter: calc(8px * var(--density, 1));--size-nav-row-pad: calc(12px * var(--density, 1));--size-nav-row: calc(30px * var(--density, 1));--size-shell-rail: 236px;--size-shell-topbar: 52px;--size-shell-inset: calc(8px * var(--density, 1));--size-target-min: 24px;--size-measure: 68ch;--size-measure-narrow: 48ch;--size-content-max: 1600px;--size-focus-ring-inset-offset: -2px;--spacing-0: 0px;--spacing-1: calc(4px * var(--density, 1));--spacing-2: calc(8px * var(--density, 1));--spacing-3: calc(12px * var(--density, 1));--spacing-4: calc(16px * var(--density, 1));--spacing-5: calc(20px * var(--density, 1));--spacing-6: calc(24px * var(--density, 1));--spacing-7: calc(32px * var(--density, 1));--spacing-8: calc(40px * var(--density, 1));--spacing-9: calc(48px * var(--density, 1));--spacing-10: calc(64px * var(--density, 1));--spacing-11: calc(80px * var(--density, 1));--font-family-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--font-family-mono: "Geist Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-size-2xs: .6875rem;--font-size-xs: .75rem;--font-size-compact: .8125rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-display: 1.75rem;--font-size-3xl: 2rem;--font-size-4xl: 3rem;--font-size-5xl: 4rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-line-height-tight: 1.2;--font-line-height-snug: 1.4;--font-line-height-body: 1.45;--font-line-height-normal: 1.5;--font-line-height-relaxed: 1.7;--font-letter-spacing-tight: -.02em;--font-letter-spacing-snug: -.005em;--font-letter-spacing-normal: 0;--font-letter-spacing-wide: .04em;--font-letter-spacing-wider: .14em;--z-index-base: 0;--z-index-raised: 1;--z-index-sticky: 10;--z-index-presence: 20;--z-index-dropdown: 100;--z-index-overlay: 200;--z-index-layer-base: 9000;--z-index-layer-max: 9899;--z-index-modal: 9999;--z-index-popover: 10000;--z-index-toast: 10001;--color-change-mark: var(--color-brand-accent-soft-strong);--radius-chip: calc(var(--radius-md) - 1px);--shadow-cursor: var(--shadow-sm);--font-family-display: var(--font-family-sans)}:root{color-scheme:dark;--color-surface-frame: #07080d;--color-surface-background: #0c0e16;--color-surface-subtle: #11141d;--color-surface-elevated: #242833;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .098);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(17, 20, 29, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(7, 8, 13, .65);--color-surface-inverse: #fcfcfc;--color-text-primary: #e7eaf3;--color-text-secondary: #a9b0c3;--color-text-link-quiet: #a9b0ea;--color-text-tertiary: #9fa7bc;--color-text-muted: #5a6176;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #07080d;--color-brand-accent: #725be6;--color-brand-accent-hover: #674ee4;--color-brand-accent-active: #5b3dc7;--color-brand-accent-ink: #a9b0ff;--color-brand-accent-soft: rgba(114, 91, 230, .16);--color-brand-accent-rgb: 114, 91, 230;--color-brand-accent-soft-strong: rgba(114, 91, 230, .32);--color-border-default: #191b20;--color-border-hover: #2d3448;--color-border-strong: #2d3448;--color-border-strong-hover: #424f74;--color-border-hatch: #202534;--color-border-control: #7f879c;--color-focus: #8572fe;--color-feedback-success: #34c98b;--color-feedback-success-ink: #74dcae;--color-feedback-warning: #f0b425;--color-feedback-warning-ink: #f6cd72;--color-feedback-danger: #d73756;--color-feedback-danger-hover: #cc2b4e;--color-feedback-danger-ink: #ff9fb0;--color-feedback-info: #61d0ff;--color-feedback-info-ink: #8ad6fb;--color-feedback-success-soft: rgba(52, 201, 139, .12);--color-feedback-success-line: rgba(52, 201, 139, .3);--color-feedback-warning-soft: rgba(240, 180, 37, .12);--color-feedback-warning-line: rgba(240, 180, 37, .3);--color-feedback-danger-soft: rgba(215, 55, 86, .12);--color-feedback-danger-line: rgba(215, 55, 86, .3);--color-feedback-info-soft: rgba(97, 208, 255, .12);--color-feedback-info-line: rgba(97, 208, 255, .3);--color-data-1: #4d8ff6;--color-data-2: #e67737;--color-data-3: #26b582;--color-data-4: #eab106;--color-data-other: #6a7186;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #fcfcfc;--color-surface-elevated: #f1f2f6;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(252, 252, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3e4459;--color-text-link-quiet: #484e99;--color-text-tertiary: #585e73;--color-text-muted: #878d9f;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #735af2;--color-brand-accent-hover: #674ee4;--color-brand-accent-active: #5b3dc7;--color-brand-accent-ink: #4f51bd;--color-brand-accent-soft: rgba(115, 90, 242, .125);--color-brand-accent-rgb: 115, 90, 242;--color-brand-accent-soft-strong: rgba(115, 90, 242, .32);--color-border-default: #e7e8ec;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #acb6cc;--color-border-hatch: #dbdfe8;--color-border-control: #777a83;--color-focus: #735af2;--color-feedback-success: #0b9a74;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #c17300;--color-feedback-warning-ink: #8c4e00;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ad0023;--color-feedback-danger-ink: #b20d23;--color-feedback-info: #2f92b4;--color-feedback-info-ink: #1a6588;--color-feedback-success-soft: rgba(11, 154, 116, .12);--color-feedback-success-line: rgba(11, 154, 116, .3);--color-feedback-warning-soft: rgba(193, 115, 0, .12);--color-feedback-warning-line: rgba(193, 115, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(47, 146, 180, .12);--color-feedback-info-line: rgba(47, 146, 180, .3);--color-data-1: #5c76c3;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #85868d;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-theme=light]{color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #fcfcfc;--color-surface-elevated: #f1f2f6;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(252, 252, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3e4459;--color-text-link-quiet: #484e99;--color-text-tertiary: #585e73;--color-text-muted: #878d9f;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #735af2;--color-brand-accent-hover: #674ee4;--color-brand-accent-active: #5b3dc7;--color-brand-accent-ink: #4f51bd;--color-brand-accent-soft: rgba(115, 90, 242, .125);--color-brand-accent-rgb: 115, 90, 242;--color-brand-accent-soft-strong: rgba(115, 90, 242, .32);--color-border-default: #e7e8ec;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #acb6cc;--color-border-hatch: #dbdfe8;--color-border-control: #777a83;--color-focus: #735af2;--color-feedback-success: #0b9a74;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #c17300;--color-feedback-warning-ink: #8c4e00;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ad0023;--color-feedback-danger-ink: #b20d23;--color-feedback-info: #2f92b4;--color-feedback-info-ink: #1a6588;--color-feedback-success-soft: rgba(11, 154, 116, .12);--color-feedback-success-line: rgba(11, 154, 116, .3);--color-feedback-warning-soft: rgba(193, 115, 0, .12);--color-feedback-warning-line: rgba(193, 115, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(47, 146, 180, .12);--color-feedback-info-line: rgba(47, 146, 180, .3);--color-data-1: #5c76c3;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #85868d;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=violet]{color-scheme:dark;--color-surface-frame: #09090b;--color-surface-background: #101013;--color-surface-subtle: #141418;--color-surface-elevated: #1b1b20;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .094);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(20, 20, 24, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(9, 9, 11, .65);--color-surface-inverse: #ffffff;--color-text-primary: #ededf0;--color-text-secondary: #b4b4bc;--color-text-link-quiet: #b3a9e8;--color-text-tertiary: #9797a1;--color-text-muted: #5f5f68;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #09090b;--color-brand-accent: #7c56ff;--color-brand-accent-hover: #744bf4;--color-brand-accent-active: #6c40e9;--color-brand-accent-ink: #b3a1ff;--color-brand-accent-soft: rgba(124, 86, 255, .16);--color-brand-accent-rgb: 124, 86, 255;--color-brand-accent-soft-strong: rgba(124, 86, 255, .32);--color-border-default: #232329;--color-border-hover: #303038;--color-border-strong: #303038;--color-border-strong-hover: #3e3e48;--color-border-hatch: #232329;--color-border-control: #797983;--color-focus: #7e5bff;--color-feedback-success: #3ecf8f;--color-feedback-success-ink: #72dead;--color-feedback-warning: #f4b221;--color-feedback-warning-ink: #f6c86f;--color-feedback-danger: #e50055;--color-feedback-danger-hover: #d6004f;--color-feedback-danger-ink: #ff9a9a;--color-feedback-info: #4c9dff;--color-feedback-info-ink: #86beff;--color-feedback-success-soft: rgba(62, 207, 143, .12);--color-feedback-success-line: rgba(62, 207, 143, .3);--color-feedback-warning-soft: rgba(244, 178, 33, .12);--color-feedback-warning-line: rgba(244, 178, 33, .3);--color-feedback-danger-soft: rgba(229, 0, 85, .12);--color-feedback-danger-line: rgba(229, 0, 85, .3);--color-feedback-info-soft: rgba(76, 157, 255, .12);--color-feedback-info-line: rgba(76, 157, 255, .3);--color-data-1: #458adc;--color-data-2: #e4631f;--color-data-3: #009c79;--color-data-4: #c98500;--color-data-other: #6e6e78;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=violet]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #ededea;--color-surface-background: #f9f9f8;--color-surface-subtle: #ffffff;--color-surface-elevated: #f3f3f1;--color-surface-hover: rgba(9, 9, 11, .044);--color-surface-pressed: rgba(9, 9, 11, .088);--color-surface-inset: rgba(9, 9, 11, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(237, 237, 234, .65);--color-surface-inverse: #09090b;--color-text-primary: #17171a;--color-text-secondary: #46464e;--color-text-link-quiet: #5043ab;--color-text-tertiary: #5f5e67;--color-text-muted: #8d8d94;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f9f9f8;--color-brand-accent: #6b45f0;--color-brand-accent-hover: #633ae5;--color-brand-accent-active: #5b2eda;--color-brand-accent-ink: #5a33de;--color-brand-accent-soft: rgba(107, 69, 240, .125);--color-brand-accent-rgb: 107, 69, 240;--color-brand-accent-soft-strong: rgba(107, 69, 240, .32);--color-border-default: #e4e4e0;--color-border-hover: #d3d3ce;--color-border-strong: #d3d3ce;--color-border-strong-hover: #c2c2bc;--color-border-hatch: #e2e2df;--color-border-control: #7b7a81;--color-focus: #6b45f0;--color-feedback-success: #009b74;--color-feedback-success-ink: #106d46;--color-feedback-warning: #c57600;--color-feedback-warning-ink: #8e5000;--color-feedback-danger: #c01d32;--color-feedback-danger-hover: #b50929;--color-feedback-danger-ink: #b61426;--color-feedback-info: #3081de;--color-feedback-info-ink: #1a5eb3;--color-feedback-success-soft: rgba(0, 155, 116, .12);--color-feedback-success-line: rgba(0, 155, 116, .3);--color-feedback-warning-soft: rgba(197, 118, 0, .12);--color-feedback-warning-line: rgba(197, 118, 0, .3);--color-feedback-danger-soft: rgba(192, 29, 50, .12);--color-feedback-danger-line: rgba(192, 29, 50, .3);--color-feedback-info-soft: rgba(48, 129, 222, .12);--color-feedback-info-line: rgba(48, 129, 222, .3);--color-data-1: #3879ce;--color-data-2: #e45f28;--color-data-3: #009b74;--color-data-4: #c57600;--color-data-other: #88888f;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=violet][data-theme=light]{color-scheme:light;--color-surface-frame: #ededea;--color-surface-background: #f9f9f8;--color-surface-subtle: #ffffff;--color-surface-elevated: #f3f3f1;--color-surface-hover: rgba(9, 9, 11, .044);--color-surface-pressed: rgba(9, 9, 11, .088);--color-surface-inset: rgba(9, 9, 11, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(237, 237, 234, .65);--color-surface-inverse: #09090b;--color-text-primary: #17171a;--color-text-secondary: #46464e;--color-text-link-quiet: #5043ab;--color-text-tertiary: #5f5e67;--color-text-muted: #8d8d94;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f9f9f8;--color-brand-accent: #6b45f0;--color-brand-accent-hover: #633ae5;--color-brand-accent-active: #5b2eda;--color-brand-accent-ink: #5a33de;--color-brand-accent-soft: rgba(107, 69, 240, .125);--color-brand-accent-rgb: 107, 69, 240;--color-brand-accent-soft-strong: rgba(107, 69, 240, .32);--color-border-default: #e4e4e0;--color-border-hover: #d3d3ce;--color-border-strong: #d3d3ce;--color-border-strong-hover: #c2c2bc;--color-border-hatch: #e2e2df;--color-border-control: #7b7a81;--color-focus: #6b45f0;--color-feedback-success: #009b74;--color-feedback-success-ink: #106d46;--color-feedback-warning: #c57600;--color-feedback-warning-ink: #8e5000;--color-feedback-danger: #c01d32;--color-feedback-danger-hover: #b50929;--color-feedback-danger-ink: #b61426;--color-feedback-info: #3081de;--color-feedback-info-ink: #1a5eb3;--color-feedback-success-soft: rgba(0, 155, 116, .12);--color-feedback-success-line: rgba(0, 155, 116, .3);--color-feedback-warning-soft: rgba(197, 118, 0, .12);--color-feedback-warning-line: rgba(197, 118, 0, .3);--color-feedback-danger-soft: rgba(192, 29, 50, .12);--color-feedback-danger-line: rgba(192, 29, 50, .3);--color-feedback-info-soft: rgba(48, 129, 222, .12);--color-feedback-info-line: rgba(48, 129, 222, .3);--color-data-1: #3879ce;--color-data-2: #e45f28;--color-data-3: #009b74;--color-data-4: #c57600;--color-data-other: #88888f;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=origin]{color-scheme:dark;--color-surface-frame: #15171c;--color-surface-background: #0e0f13;--color-surface-subtle: #1c1e24;--color-surface-elevated: #23262c;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .098);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(28, 30, 36, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(21, 23, 28, .65);--color-surface-inverse: #f8f8f9;--color-text-primary: #ececee;--color-text-secondary: #c9ced8;--color-text-link-quiet: #a4b1e8;--color-text-tertiary: #9ba5b9;--color-text-muted: #60646b;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #15171c;--color-brand-accent: #5469d4;--color-brand-accent-hover: #4759c2;--color-brand-accent-active: #3b4caa;--color-brand-accent-ink: #91a1ef;--color-brand-accent-soft: rgba(84, 105, 212, .158);--color-brand-accent-rgb: 84, 105, 212;--color-brand-accent-soft-strong: rgba(84, 105, 212, .32);--color-border-default: #2e2e30;--color-border-hover: #3f4145;--color-border-strong: #4a4d52;--color-border-strong-hover: #4a4d52;--color-border-hatch: #323439;--color-border-control: #828ca0;--color-focus: #7d8fe8;--color-feedback-success: #3eba82;--color-feedback-success-ink: #5db76d;--color-feedback-warning: #f59e0b;--color-feedback-warning-ink: #f59e0b;--color-feedback-danger: #d6364c;--color-feedback-danger-hover: #c22a42;--color-feedback-danger-ink: #fb8085;--color-feedback-info: #3a8ff4;--color-feedback-info-ink: #6aa7f9;--color-feedback-success-soft: rgba(62, 186, 130, .12);--color-feedback-success-line: rgba(62, 186, 130, .3);--color-feedback-warning-soft: rgba(245, 158, 11, .12);--color-feedback-warning-line: rgba(245, 158, 11, .3);--color-feedback-danger-soft: rgba(214, 54, 76, .12);--color-feedback-danger-line: rgba(214, 54, 76, .3);--color-feedback-info-soft: rgba(58, 143, 244, .12);--color-feedback-info-line: rgba(58, 143, 244, .3);--color-data-1: #4d8ff6;--color-data-2: #e67737;--color-data-3: #26b582;--color-data-4: #eab106;--color-data-other: #6a7186;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=origin]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #f4f4f5;--color-surface-background: #ffffff;--color-surface-subtle: #f7f7f8;--color-surface-elevated: #ececef;--color-surface-hover: rgba(21, 23, 28, .047);--color-surface-pressed: rgba(21, 23, 28, .098);--color-surface-inset: rgba(21, 23, 28, .026);--color-surface-glass: rgba(248, 248, 249, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(244, 244, 245, .65);--color-surface-inverse: #15171c;--color-text-primary: #09090b;--color-text-secondary: #5d5d66;--color-text-link-quiet: #425095;--color-text-tertiary: #5d5d64;--color-text-muted: #929294;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #ffffff;--color-brand-accent: #5469d4;--color-brand-accent-hover: #4759c2;--color-brand-accent-active: #3b4caa;--color-brand-accent-ink: #4254bd;--color-brand-accent-soft: rgba(84, 105, 212, .139);--color-brand-accent-rgb: 84, 105, 212;--color-brand-accent-soft-strong: rgba(84, 105, 212, .32);--color-border-default: #e2e2e5;--color-border-hover: #c4c4ca;--color-border-strong: #d4d4d8;--color-border-strong-hover: #b4b4bc;--color-border-hatch: #e5e5e8;--color-border-control: #71717a;--color-focus: #5469d4;--color-feedback-success: #0f9a73;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #c57500;--color-feedback-warning-ink: #894f01;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ad0023;--color-feedback-danger-ink: #ac222e;--color-feedback-info: #3190c5;--color-feedback-info-ink: #1b638a;--color-feedback-success-soft: rgba(15, 154, 115, .12);--color-feedback-success-line: rgba(15, 154, 115, .3);--color-feedback-warning-soft: rgba(197, 117, 0, .12);--color-feedback-warning-line: rgba(197, 117, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(49, 144, 197, .12);--color-feedback-info-line: rgba(49, 144, 197, .3);--color-data-1: #1d84a9;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #85868d;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=origin][data-theme=light]{color-scheme:light;--color-surface-frame: #f4f4f5;--color-surface-background: #ffffff;--color-surface-subtle: #f7f7f8;--color-surface-elevated: #ececef;--color-surface-hover: rgba(21, 23, 28, .047);--color-surface-pressed: rgba(21, 23, 28, .098);--color-surface-inset: rgba(21, 23, 28, .026);--color-surface-glass: rgba(248, 248, 249, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(244, 244, 245, .65);--color-surface-inverse: #15171c;--color-text-primary: #09090b;--color-text-secondary: #5d5d66;--color-text-link-quiet: #425095;--color-text-tertiary: #5d5d64;--color-text-muted: #929294;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #ffffff;--color-brand-accent: #5469d4;--color-brand-accent-hover: #4759c2;--color-brand-accent-active: #3b4caa;--color-brand-accent-ink: #4254bd;--color-brand-accent-soft: rgba(84, 105, 212, .139);--color-brand-accent-rgb: 84, 105, 212;--color-brand-accent-soft-strong: rgba(84, 105, 212, .32);--color-border-default: #e2e2e5;--color-border-hover: #c4c4ca;--color-border-strong: #d4d4d8;--color-border-strong-hover: #b4b4bc;--color-border-hatch: #e5e5e8;--color-border-control: #71717a;--color-focus: #5469d4;--color-feedback-success: #0f9a73;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #c57500;--color-feedback-warning-ink: #894f01;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ad0023;--color-feedback-danger-ink: #ac222e;--color-feedback-info: #3190c5;--color-feedback-info-ink: #1b638a;--color-feedback-success-soft: rgba(15, 154, 115, .12);--color-feedback-success-line: rgba(15, 154, 115, .3);--color-feedback-warning-soft: rgba(197, 117, 0, .12);--color-feedback-warning-line: rgba(197, 117, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(49, 144, 197, .12);--color-feedback-info-line: rgba(49, 144, 197, .3);--color-data-1: #1d84a9;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #85868d;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=abyss]{color-scheme:dark;--color-surface-frame: #090019;--color-surface-background: #120425;--color-surface-subtle: #180b2c;--color-surface-elevated: #1e1430;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .094);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(24, 11, 44, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(9, 0, 25, .65);--color-surface-inverse: #fdfcff;--color-text-primary: #ebe6f8;--color-text-secondary: #b4aec6;--color-text-link-quiet: #cbb9eb;--color-text-tertiary: #9994a8;--color-text-muted: #62577c;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #090019;--color-brand-accent: #8633fe;--color-brand-accent-hover: #7a26f0;--color-brand-accent-active: #6d1edb;--color-brand-accent-ink: #d7beff;--color-brand-accent-soft: rgba(134, 51, 254, .16);--color-brand-accent-rgb: 134, 51, 254;--color-brand-accent-soft-strong: rgba(134, 51, 254, .32);--color-border-default: #2b1f41;--color-border-hover: #3c3054;--color-border-strong: #3c3054;--color-border-strong-hover: #4a3e64;--color-border-hatch: #2b1e41;--color-border-control: #7b738e;--color-focus: #8e4eff;--color-feedback-success: #16d297;--color-feedback-success-ink: #70e7b5;--color-feedback-warning: #ffb22f;--color-feedback-warning-ink: #ffca7c;--color-feedback-danger: #dd2c5b;--color-feedback-danger-hover: #d21d53;--color-feedback-danger-ink: #ff8c8a;--color-feedback-info: #1281c3;--color-feedback-info-ink: #30aff8;--color-feedback-success-soft: rgba(22, 210, 151, .12);--color-feedback-success-line: rgba(22, 210, 151, .3);--color-feedback-warning-soft: rgba(255, 178, 47, .12);--color-feedback-warning-line: rgba(255, 178, 47, .3);--color-feedback-danger-soft: rgba(221, 44, 91, .12);--color-feedback-danger-line: rgba(221, 44, 91, .3);--color-feedback-info-soft: rgba(18, 129, 195, .12);--color-feedback-info-line: rgba(18, 129, 195, .3);--color-data-1: #798fd3;--color-data-2: #f48221;--color-data-3: #00a086;--color-data-4: #b38d00;--color-data-other: #6f6782;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=abyss]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e8e3f3;--color-surface-background: #f8f6fd;--color-surface-subtle: #fdfcff;--color-surface-elevated: #edeaf7;--color-surface-hover: rgba(9, 0, 25, .044);--color-surface-pressed: rgba(9, 0, 25, .088);--color-surface-inset: rgba(9, 0, 25, .026);--color-surface-glass: rgba(253, 252, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(232, 227, 243, .65);--color-surface-inverse: #090019;--color-text-primary: #1d132f;--color-text-secondary: #403654;--color-text-link-quiet: #5d2aa2;--color-text-tertiary: #5b5767;--color-text-muted: #8d83a2;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f8f6fd;--color-brand-accent: #6b11da;--color-brand-accent-hover: #6008c6;--color-brand-accent-active: #5403af;--color-brand-accent-ink: #6e00ce;--color-brand-accent-soft: rgba(107, 17, 218, .125);--color-brand-accent-rgb: 107, 17, 218;--color-brand-accent-soft-strong: rgba(107, 17, 218, .32);--color-border-default: #dfd9eb;--color-border-hover: #cdc7dc;--color-border-strong: #cdc7dc;--color-border-strong-hover: #bcb5cc;--color-border-hatch: #dedae9;--color-border-control: #78708b;--color-focus: #6b11da;--color-feedback-success: #019472;--color-feedback-success-ink: #074f35;--color-feedback-warning: #c16f00;--color-feedback-warning-ink: #8e4500;--color-feedback-danger: #9a0028;--color-feedback-danger-hover: #8c0024;--color-feedback-danger-ink: #80041a;--color-feedback-info: #287ac2;--color-feedback-info-ink: #005a9d;--color-feedback-success-soft: rgba(1, 148, 114, .12);--color-feedback-success-line: rgba(1, 148, 114, .3);--color-feedback-warning-soft: rgba(193, 111, 0, .12);--color-feedback-warning-line: rgba(193, 111, 0, .3);--color-feedback-danger-soft: rgba(154, 0, 40, .12);--color-feedback-danger-line: rgba(154, 0, 40, .3);--color-feedback-info-soft: rgba(40, 122, 194, .12);--color-feedback-info-line: rgba(40, 122, 194, .3);--color-data-1: #5877f4;--color-data-2: #c96003;--color-data-3: #007c5d;--color-data-4: #9e8000;--color-data-other: #7d7590;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=abyss][data-theme=light]{color-scheme:light;--color-surface-frame: #e8e3f3;--color-surface-background: #f8f6fd;--color-surface-subtle: #fdfcff;--color-surface-elevated: #edeaf7;--color-surface-hover: rgba(9, 0, 25, .044);--color-surface-pressed: rgba(9, 0, 25, .088);--color-surface-inset: rgba(9, 0, 25, .026);--color-surface-glass: rgba(253, 252, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(232, 227, 243, .65);--color-surface-inverse: #090019;--color-text-primary: #1d132f;--color-text-secondary: #403654;--color-text-link-quiet: #5d2aa2;--color-text-tertiary: #5b5767;--color-text-muted: #8d83a2;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f8f6fd;--color-brand-accent: #6b11da;--color-brand-accent-hover: #6008c6;--color-brand-accent-active: #5403af;--color-brand-accent-ink: #6e00ce;--color-brand-accent-soft: rgba(107, 17, 218, .125);--color-brand-accent-rgb: 107, 17, 218;--color-brand-accent-soft-strong: rgba(107, 17, 218, .32);--color-border-default: #dfd9eb;--color-border-hover: #cdc7dc;--color-border-strong: #cdc7dc;--color-border-strong-hover: #bcb5cc;--color-border-hatch: #dedae9;--color-border-control: #78708b;--color-focus: #6b11da;--color-feedback-success: #019472;--color-feedback-success-ink: #074f35;--color-feedback-warning: #c16f00;--color-feedback-warning-ink: #8e4500;--color-feedback-danger: #9a0028;--color-feedback-danger-hover: #8c0024;--color-feedback-danger-ink: #80041a;--color-feedback-info: #287ac2;--color-feedback-info-ink: #005a9d;--color-feedback-success-soft: rgba(1, 148, 114, .12);--color-feedback-success-line: rgba(1, 148, 114, .3);--color-feedback-warning-soft: rgba(193, 111, 0, .12);--color-feedback-warning-line: rgba(193, 111, 0, .3);--color-feedback-danger-soft: rgba(154, 0, 40, .12);--color-feedback-danger-line: rgba(154, 0, 40, .3);--color-feedback-info-soft: rgba(40, 122, 194, .12);--color-feedback-info-line: rgba(40, 122, 194, .3);--color-data-1: #5877f4;--color-data-2: #c96003;--color-data-3: #007c5d;--color-data-4: #9e8000;--color-data-other: #7d7590;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=iris]{color-scheme:dark;--color-surface-frame: #09011a;--color-surface-background: #110b1e;--color-surface-subtle: #141021;--color-surface-elevated: #1c0f34;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .094);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(20, 16, 33, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(9, 1, 26, .65);--color-surface-inverse: #ffffff;--color-text-primary: #eae7f7;--color-text-secondary: #bab5ca;--color-text-link-quiet: #aaa4eb;--color-text-tertiary: #a398b3;--color-text-muted: #645d76;--color-text-on-accent: #09011a;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #09011a;--color-brand-accent: #9584ff;--color-brand-accent-hover: #9f92ff;--color-brand-accent-active: #a9a0ff;--color-brand-accent-ink: #a39afc;--color-brand-accent-soft: rgba(149, 132, 255, .16);--color-brand-accent-rgb: 149, 132, 255;--color-brand-accent-soft-strong: rgba(149, 132, 255, .32);--color-border-default: #292339;--color-border-hover: #39334b;--color-border-strong: #39334b;--color-border-strong-hover: #48415d;--color-border-hatch: #292339;--color-border-control: #767285;--color-focus: #9584ff;--color-feedback-success: #27cf9b;--color-feedback-success-ink: #65e8c7;--color-feedback-warning: #f9ad26;--color-feedback-warning-ink: #fbd26c;--color-feedback-danger: #db3845;--color-feedback-danger-hover: #d02c3d;--color-feedback-danger-ink: #fda1a0;--color-feedback-info: #0279a9;--color-feedback-info-ink: #71c9ff;--color-feedback-success-soft: rgba(39, 207, 155, .12);--color-feedback-success-line: rgba(39, 207, 155, .3);--color-feedback-warning-soft: rgba(249, 173, 38, .12);--color-feedback-warning-line: rgba(249, 173, 38, .3);--color-feedback-danger-soft: rgba(219, 56, 69, .12);--color-feedback-danger-line: rgba(219, 56, 69, .3);--color-feedback-info-soft: rgba(2, 121, 169, .12);--color-feedback-info-line: rgba(2, 121, 169, .3);--color-data-1: #4a7bc8;--color-data-2: #ee8a54;--color-data-3: #1cc8cc;--color-data-4: #b876a2;--color-data-other: #686477;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=iris]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e8e4f6;--color-surface-background: #f8f6fd;--color-surface-subtle: #ffffff;--color-surface-elevated: #efecf9;--color-surface-hover: rgba(9, 1, 26, .044);--color-surface-pressed: rgba(9, 1, 26, .088);--color-surface-inset: rgba(9, 1, 26, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(232, 228, 246, .65);--color-surface-inverse: #09011a;--color-text-primary: #181128;--color-text-secondary: #47405d;--color-text-link-quiet: #47389b;--color-text-tertiary: #5c5771;--color-text-muted: #8b859d;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f8f6fd;--color-brand-accent: #4a2abd;--color-brand-accent-hover: #4123aa;--color-brand-accent-active: #391a9a;--color-brand-accent-ink: #4a2abd;--color-brand-accent-soft: rgba(74, 42, 189, .125);--color-brand-accent-rgb: 74, 42, 189;--color-brand-accent-soft-strong: rgba(74, 42, 189, .32);--color-border-default: #dddaea;--color-border-hover: #c8c4d8;--color-border-strong: #c8c4d8;--color-border-strong-hover: #b6b2c8;--color-border-hatch: #dbd8e7;--color-border-control: #4c495b;--color-focus: #4a2abd;--color-feedback-success: #039571;--color-feedback-success-ink: #055e47;--color-feedback-warning: #be6e02;--color-feedback-warning-ink: #884206;--color-feedback-danger: #9a0b35;--color-feedback-danger-hover: #8e002e;--color-feedback-danger-ink: #79021b;--color-feedback-info: #0585b9;--color-feedback-info-ink: #045c93;--color-feedback-success-soft: rgba(3, 149, 113, .12);--color-feedback-success-line: rgba(3, 149, 113, .3);--color-feedback-warning-soft: rgba(190, 110, 2, .12);--color-feedback-warning-line: rgba(190, 110, 2, .3);--color-feedback-danger-soft: rgba(154, 11, 53, .12);--color-feedback-danger-line: rgba(154, 11, 53, .3);--color-feedback-info-soft: rgba(5, 133, 185, .12);--color-feedback-info-line: rgba(5, 133, 185, .3);--color-data-1: #5482d5;--color-data-2: #b74c02;--color-data-3: #037267;--color-data-4: #b86b9b;--color-data-other: #4c495b;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=iris][data-theme=light]{color-scheme:light;--color-surface-frame: #e8e4f6;--color-surface-background: #f8f6fd;--color-surface-subtle: #ffffff;--color-surface-elevated: #efecf9;--color-surface-hover: rgba(9, 1, 26, .044);--color-surface-pressed: rgba(9, 1, 26, .088);--color-surface-inset: rgba(9, 1, 26, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(232, 228, 246, .65);--color-surface-inverse: #09011a;--color-text-primary: #181128;--color-text-secondary: #47405d;--color-text-link-quiet: #47389b;--color-text-tertiary: #5c5771;--color-text-muted: #8b859d;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f8f6fd;--color-brand-accent: #4a2abd;--color-brand-accent-hover: #4123aa;--color-brand-accent-active: #391a9a;--color-brand-accent-ink: #4a2abd;--color-brand-accent-soft: rgba(74, 42, 189, .125);--color-brand-accent-rgb: 74, 42, 189;--color-brand-accent-soft-strong: rgba(74, 42, 189, .32);--color-border-default: #dddaea;--color-border-hover: #c8c4d8;--color-border-strong: #c8c4d8;--color-border-strong-hover: #b6b2c8;--color-border-hatch: #dbd8e7;--color-border-control: #4c495b;--color-focus: #4a2abd;--color-feedback-success: #039571;--color-feedback-success-ink: #055e47;--color-feedback-warning: #be6e02;--color-feedback-warning-ink: #884206;--color-feedback-danger: #9a0b35;--color-feedback-danger-hover: #8e002e;--color-feedback-danger-ink: #79021b;--color-feedback-info: #0585b9;--color-feedback-info-ink: #045c93;--color-feedback-success-soft: rgba(3, 149, 113, .12);--color-feedback-success-line: rgba(3, 149, 113, .3);--color-feedback-warning-soft: rgba(190, 110, 2, .12);--color-feedback-warning-line: rgba(190, 110, 2, .3);--color-feedback-danger-soft: rgba(154, 11, 53, .12);--color-feedback-danger-line: rgba(154, 11, 53, .3);--color-feedback-info-soft: rgba(5, 133, 185, .12);--color-feedback-info-line: rgba(5, 133, 185, .3);--color-data-1: #5482d5;--color-data-2: #b74c02;--color-data-3: #037267;--color-data-4: #b86b9b;--color-data-other: #4c495b;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=dusk]{color-scheme:dark;--color-surface-frame: #090311;--color-surface-background: #110c18;--color-surface-subtle: #17111d;--color-surface-elevated: #1f1827;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .094);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(23, 17, 29, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(9, 3, 17, .65);--color-surface-inverse: #faf8fc;--color-text-primary: #e6e2ec;--color-text-secondary: #c4becc;--color-text-link-quiet: #cdabee;--color-text-tertiary: #a69faf;--color-text-muted: #66606f;--color-text-on-accent: #090019;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #090311;--color-brand-accent: #d6b7fc;--color-brand-accent-hover: #dec3ff;--color-brand-accent-active: #e4cfff;--color-brand-accent-ink: #d29fff;--color-brand-accent-soft: rgba(214, 183, 252, .16);--color-brand-accent-rgb: 214, 183, 252;--color-brand-accent-soft-strong: rgba(214, 183, 252, .32);--color-border-default: #282031;--color-border-hover: #393044;--color-border-strong: #393044;--color-border-strong-hover: #473e53;--color-border-hatch: #292232;--color-border-control: #837b92;--color-focus: #d6b7fc;--color-feedback-success: #8ec899;--color-feedback-success-ink: #65af76;--color-feedback-warning: #f4b73b;--color-feedback-warning-ink: #f3cb7a;--color-feedback-danger: #ca4d48;--color-feedback-danger-hover: #bf433f;--color-feedback-danger-ink: #f096ac;--color-feedback-info: #3185b8;--color-feedback-info-ink: #71b7d7;--color-feedback-success-soft: rgba(142, 200, 153, .12);--color-feedback-success-line: rgba(142, 200, 153, .3);--color-feedback-warning-soft: rgba(244, 183, 59, .12);--color-feedback-warning-line: rgba(244, 183, 59, .3);--color-feedback-danger-soft: rgba(202, 77, 72, .12);--color-feedback-danger-line: rgba(202, 77, 72, .3);--color-feedback-info-soft: rgba(49, 133, 184, .12);--color-feedback-info-line: rgba(49, 133, 184, .3);--color-data-1: #6b94d7;--color-data-2: #e79b6d;--color-data-3: #3d9785;--color-data-4: #c18d02;--color-data-other: #716a80;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=dusk]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e9e5f0;--color-surface-background: #f4f1f8;--color-surface-subtle: #faf8fc;--color-surface-elevated: #efebf4;--color-surface-hover: rgba(9, 3, 17, .044);--color-surface-pressed: rgba(9, 3, 17, .088);--color-surface-inset: rgba(9, 3, 17, .026);--color-surface-glass: rgba(250, 248, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 229, 240, .65);--color-surface-inverse: #090311;--color-text-primary: #221a2a;--color-text-secondary: #433b4f;--color-text-link-quiet: #5d4092;--color-text-tertiary: #5e5669;--color-text-muted: #8d8697;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f4f1f8;--color-brand-accent: #4e247e;--color-brand-accent-hover: #451b73;--color-brand-accent-active: #3d1168;--color-brand-accent-ink: #6c3fb7;--color-brand-accent-soft: rgba(78, 36, 126, .125);--color-brand-accent-rgb: 78, 36, 126;--color-brand-accent-soft-strong: rgba(78, 36, 126, .32);--color-border-default: #e0dbe6;--color-border-hover: #ccc5d5;--color-border-strong: #ccc5d5;--color-border-strong-hover: #bbb4c4;--color-border-hatch: #dcd7e3;--color-border-control: #7d7089;--color-focus: #4e247e;--color-feedback-success: #527b67;--color-feedback-success-ink: #026452;--color-feedback-warning: #af6901;--color-feedback-warning-ink: #814d0e;--color-feedback-danger: #8a0d15;--color-feedback-danger-hover: #7e000d;--color-feedback-danger-ink: #80041a;--color-feedback-info: #1b86bf;--color-feedback-info-ink: #21558e;--color-feedback-success-soft: rgba(82, 123, 103, .12);--color-feedback-success-line: rgba(82, 123, 103, .3);--color-feedback-warning-soft: rgba(175, 105, 1, .12);--color-feedback-warning-line: rgba(175, 105, 1, .3);--color-feedback-danger-soft: rgba(138, 13, 21, .12);--color-feedback-danger-line: rgba(138, 13, 21, .3);--color-feedback-info-soft: rgba(27, 134, 191, .12);--color-feedback-info-line: rgba(27, 134, 191, .3);--color-data-1: #5b84c9;--color-data-2: #a65831;--color-data-3: #097779;--color-data-4: #9f7f12;--color-data-other: #8b7e98;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=dusk][data-theme=light]{color-scheme:light;--color-surface-frame: #e9e5f0;--color-surface-background: #f4f1f8;--color-surface-subtle: #faf8fc;--color-surface-elevated: #efebf4;--color-surface-hover: rgba(9, 3, 17, .044);--color-surface-pressed: rgba(9, 3, 17, .088);--color-surface-inset: rgba(9, 3, 17, .026);--color-surface-glass: rgba(250, 248, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 229, 240, .65);--color-surface-inverse: #090311;--color-text-primary: #221a2a;--color-text-secondary: #433b4f;--color-text-link-quiet: #5d4092;--color-text-tertiary: #5e5669;--color-text-muted: #8d8697;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f4f1f8;--color-brand-accent: #4e247e;--color-brand-accent-hover: #451b73;--color-brand-accent-active: #3d1168;--color-brand-accent-ink: #6c3fb7;--color-brand-accent-soft: rgba(78, 36, 126, .125);--color-brand-accent-rgb: 78, 36, 126;--color-brand-accent-soft-strong: rgba(78, 36, 126, .32);--color-border-default: #e0dbe6;--color-border-hover: #ccc5d5;--color-border-strong: #ccc5d5;--color-border-strong-hover: #bbb4c4;--color-border-hatch: #dcd7e3;--color-border-control: #7d7089;--color-focus: #4e247e;--color-feedback-success: #527b67;--color-feedback-success-ink: #026452;--color-feedback-warning: #af6901;--color-feedback-warning-ink: #814d0e;--color-feedback-danger: #8a0d15;--color-feedback-danger-hover: #7e000d;--color-feedback-danger-ink: #80041a;--color-feedback-info: #1b86bf;--color-feedback-info-ink: #21558e;--color-feedback-success-soft: rgba(82, 123, 103, .12);--color-feedback-success-line: rgba(82, 123, 103, .3);--color-feedback-warning-soft: rgba(175, 105, 1, .12);--color-feedback-warning-line: rgba(175, 105, 1, .3);--color-feedback-danger-soft: rgba(138, 13, 21, .12);--color-feedback-danger-line: rgba(138, 13, 21, .3);--color-feedback-info-soft: rgba(27, 134, 191, .12);--color-feedback-info-line: rgba(27, 134, 191, .3);--color-data-1: #5b84c9;--color-data-2: #a65831;--color-data-3: #097779;--color-data-4: #9f7f12;--color-data-other: #8b7e98;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=nocturne]{color-scheme:dark;--color-surface-frame: #07080d;--color-surface-background: #0c0e16;--color-surface-subtle: #11141d;--color-surface-elevated: #181c28;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .095);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(17, 20, 29, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(7, 8, 13, .65);--color-surface-inverse: #ffffff;--color-text-primary: #e6e9f2;--color-text-secondary: #a9b0c3;--color-text-link-quiet: #a9b0ea;--color-text-tertiary: #9199ae;--color-text-muted: #5a6176;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #07080d;--color-brand-accent: #5a62f0;--color-brand-accent-hover: #5058e4;--color-brand-accent-active: #464ed8;--color-brand-accent-ink: #a9b0ff;--color-brand-accent-soft: rgba(90, 98, 240, .16);--color-brand-accent-rgb: 90, 98, 240;--color-brand-accent-soft-strong: rgba(90, 98, 240, .32);--color-border-default: #1f2433;--color-border-hover: #2b3245;--color-border-strong: #2b3245;--color-border-strong-hover: #384158;--color-border-hatch: #1f2432;--color-border-control: #727a8f;--color-focus: #606af8;--color-feedback-success: #34c98b;--color-feedback-success-ink: #74dcae;--color-feedback-warning: #f0b425;--color-feedback-warning-ink: #f6cd72;--color-feedback-danger: #de2f5b;--color-feedback-danger-hover: #d32152;--color-feedback-danger-ink: #ff9fb0;--color-feedback-info: #38bdf8;--color-feedback-info-ink: #8ad6fb;--color-feedback-success-soft: rgba(52, 201, 139, .12);--color-feedback-success-line: rgba(52, 201, 139, .3);--color-feedback-warning-soft: rgba(240, 180, 37, .12);--color-feedback-warning-line: rgba(240, 180, 37, .3);--color-feedback-danger-soft: rgba(222, 47, 91, .12);--color-feedback-danger-line: rgba(222, 47, 91, .3);--color-feedback-info-soft: rgba(56, 189, 248, .12);--color-feedback-info-line: rgba(56, 189, 248, .3);--color-data-1: #4f9cf0;--color-data-2: #f07f3c;--color-data-3: #2bb59a;--color-data-4: #d4a017;--color-data-other: #6a7186;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=nocturne]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #ffffff;--color-surface-elevated: #eff1f7;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3e4459;--color-text-link-quiet: #3947a1;--color-text-tertiary: #585e73;--color-text-muted: #878d9f;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4c55e6;--color-brand-accent-hover: #424bd9;--color-brand-accent-active: #3841cc;--color-brand-accent-ink: #3a42c9;--color-brand-accent-soft: rgba(76, 85, 230, .125);--color-brand-accent-rgb: 76, 85, 230;--color-brand-accent-soft-strong: rgba(76, 85, 230, .32);--color-border-default: #dde1ea;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #b5bdce;--color-border-hatch: #dbdfe8;--color-border-control: #74798c;--color-focus: #4c55e6;--color-feedback-success: #00916f;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #b86e00;--color-feedback-warning-ink: #8a4f00;--color-feedback-danger: #b8002e;--color-feedback-danger-hover: #aa002a;--color-feedback-danger-ink: #ad1c3d;--color-feedback-info: #0b84c6;--color-feedback-info-ink: #09629f;--color-feedback-success-soft: rgba(0, 145, 111, .12);--color-feedback-success-line: rgba(0, 145, 111, .3);--color-feedback-warning-soft: rgba(184, 110, 0, .12);--color-feedback-warning-line: rgba(184, 110, 0, .3);--color-feedback-danger-soft: rgba(184, 0, 46, .12);--color-feedback-danger-line: rgba(184, 0, 46, .3);--color-feedback-info-soft: rgba(11, 132, 198, .12);--color-feedback-info-line: rgba(11, 132, 198, .3);--color-data-1: #3876c4;--color-data-2: #dd5f1f;--color-data-3: #0b9278;--color-data-4: #b17f00;--color-data-other: #82879a;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=nocturne][data-theme=light]{color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #ffffff;--color-surface-elevated: #eff1f7;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3e4459;--color-text-link-quiet: #3947a1;--color-text-tertiary: #585e73;--color-text-muted: #878d9f;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4c55e6;--color-brand-accent-hover: #424bd9;--color-brand-accent-active: #3841cc;--color-brand-accent-ink: #3a42c9;--color-brand-accent-soft: rgba(76, 85, 230, .125);--color-brand-accent-rgb: 76, 85, 230;--color-brand-accent-soft-strong: rgba(76, 85, 230, .32);--color-border-default: #dde1ea;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #b5bdce;--color-border-hatch: #dbdfe8;--color-border-control: #74798c;--color-focus: #4c55e6;--color-feedback-success: #00916f;--color-feedback-success-ink: #0b6a4b;--color-feedback-warning: #b86e00;--color-feedback-warning-ink: #8a4f00;--color-feedback-danger: #b8002e;--color-feedback-danger-hover: #aa002a;--color-feedback-danger-ink: #ad1c3d;--color-feedback-info: #0b84c6;--color-feedback-info-ink: #09629f;--color-feedback-success-soft: rgba(0, 145, 111, .12);--color-feedback-success-line: rgba(0, 145, 111, .3);--color-feedback-warning-soft: rgba(184, 110, 0, .12);--color-feedback-warning-line: rgba(184, 110, 0, .3);--color-feedback-danger-soft: rgba(184, 0, 46, .12);--color-feedback-danger-line: rgba(184, 0, 46, .3);--color-feedback-info-soft: rgba(11, 132, 198, .12);--color-feedback-info-line: rgba(11, 132, 198, .3);--color-data-1: #3876c4;--color-data-2: #dd5f1f;--color-data-3: #0b9278;--color-data-4: #b17f00;--color-data-other: #82879a;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=nightshade]{color-scheme:dark;--color-surface-frame: #07080d;--color-surface-background: #0d0f16;--color-surface-subtle: #11141d;--color-surface-elevated: #171b27;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .094);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(17, 20, 29, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(7, 8, 13, .65);--color-surface-inverse: #ffffff;--color-text-primary: #e8ebf4;--color-text-secondary: #c5ccdf;--color-text-link-quiet: #aeacf3;--color-text-tertiary: #9fa7c4;--color-text-muted: #5a6176;--color-text-on-accent: #07080d;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #07080d;--color-brand-accent: #9584ff;--color-brand-accent-hover: #9f92ff;--color-brand-accent-active: #a9a0ff;--color-brand-accent-ink: #a39afc;--color-brand-accent-soft: rgba(149, 132, 255, .16);--color-brand-accent-rgb: 149, 132, 255;--color-brand-accent-soft-strong: rgba(149, 132, 255, .32);--color-border-default: #1f2433;--color-border-hover: #2b3245;--color-border-strong: #2b3245;--color-border-strong-hover: #38405a;--color-border-hatch: #1f2432;--color-border-control: #72798b;--color-focus: #9584ff;--color-feedback-success: #20cc98;--color-feedback-success-ink: #65e8c7;--color-feedback-warning: #f9ad26;--color-feedback-warning-ink: #fbd26c;--color-feedback-danger: #db3845;--color-feedback-danger-hover: #d02c3d;--color-feedback-danger-ink: #fda1a0;--color-feedback-info: #0279a9;--color-feedback-info-ink: #71c9ff;--color-feedback-success-soft: rgba(32, 204, 152, .12);--color-feedback-success-line: rgba(32, 204, 152, .3);--color-feedback-warning-soft: rgba(249, 173, 38, .12);--color-feedback-warning-line: rgba(249, 173, 38, .3);--color-feedback-danger-soft: rgba(219, 56, 69, .12);--color-feedback-danger-line: rgba(219, 56, 69, .3);--color-feedback-info-soft: rgba(2, 121, 169, .12);--color-feedback-info-line: rgba(2, 121, 169, .3);--color-data-1: #4a7bc8;--color-data-2: #ee8a54;--color-data-3: #1cc8cc;--color-data-4: #b876a2;--color-data-other: #61687a;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=nightshade]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e7eaf1;--color-surface-background: #f6f7fb;--color-surface-subtle: #ffffff;--color-surface-elevated: #eef0f6;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(231, 234, 241, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3d4358;--color-text-link-quiet: #433a99;--color-text-tertiary: #53596e;--color-text-muted: #878a9d;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4a2abd;--color-brand-accent-hover: #4123aa;--color-brand-accent-active: #391a9a;--color-brand-accent-ink: #4a2abd;--color-brand-accent-soft: rgba(74, 42, 189, .125);--color-brand-accent-rgb: 74, 42, 189;--color-brand-accent-soft-strong: rgba(74, 42, 189, .32);--color-border-default: #dde1ea;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #b7becd;--color-border-hatch: #dbdfe8;--color-border-control: #464b5c;--color-focus: #4a2abd;--color-feedback-success: #039571;--color-feedback-success-ink: #055e47;--color-feedback-warning: #be6e02;--color-feedback-warning-ink: #884206;--color-feedback-danger: #9a0b35;--color-feedback-danger-hover: #8e002e;--color-feedback-danger-ink: #79021b;--color-feedback-info: #0585b9;--color-feedback-info-ink: #045c93;--color-feedback-success-soft: rgba(3, 149, 113, .12);--color-feedback-success-line: rgba(3, 149, 113, .3);--color-feedback-warning-soft: rgba(190, 110, 2, .12);--color-feedback-warning-line: rgba(190, 110, 2, .3);--color-feedback-danger-soft: rgba(154, 11, 53, .12);--color-feedback-danger-line: rgba(154, 11, 53, .3);--color-feedback-info-soft: rgba(5, 133, 185, .12);--color-feedback-info-line: rgba(5, 133, 185, .3);--color-data-1: #5482d5;--color-data-2: #b74c02;--color-data-3: #037267;--color-data-4: #b86b9b;--color-data-other: #464b5c;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=nightshade][data-theme=light]{color-scheme:light;--color-surface-frame: #e7eaf1;--color-surface-background: #f6f7fb;--color-surface-subtle: #ffffff;--color-surface-elevated: #eef0f6;--color-surface-hover: rgba(7, 8, 13, .044);--color-surface-pressed: rgba(7, 8, 13, .088);--color-surface-inset: rgba(7, 8, 13, .026);--color-surface-glass: rgba(255, 255, 255, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(231, 234, 241, .65);--color-surface-inverse: #07080d;--color-text-primary: #121625;--color-text-secondary: #3d4358;--color-text-link-quiet: #433a99;--color-text-tertiary: #53596e;--color-text-muted: #878a9d;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4a2abd;--color-brand-accent-hover: #4123aa;--color-brand-accent-active: #391a9a;--color-brand-accent-ink: #4a2abd;--color-brand-accent-soft: rgba(74, 42, 189, .125);--color-brand-accent-rgb: 74, 42, 189;--color-brand-accent-soft-strong: rgba(74, 42, 189, .32);--color-border-default: #dde1ea;--color-border-hover: #c9cfdc;--color-border-strong: #c9cfdc;--color-border-strong-hover: #b7becd;--color-border-hatch: #dbdfe8;--color-border-control: #464b5c;--color-focus: #4a2abd;--color-feedback-success: #039571;--color-feedback-success-ink: #055e47;--color-feedback-warning: #be6e02;--color-feedback-warning-ink: #884206;--color-feedback-danger: #9a0b35;--color-feedback-danger-hover: #8e002e;--color-feedback-danger-ink: #79021b;--color-feedback-info: #0585b9;--color-feedback-info-ink: #045c93;--color-feedback-success-soft: rgba(3, 149, 113, .12);--color-feedback-success-line: rgba(3, 149, 113, .3);--color-feedback-warning-soft: rgba(190, 110, 2, .12);--color-feedback-warning-line: rgba(190, 110, 2, .3);--color-feedback-danger-soft: rgba(154, 11, 53, .12);--color-feedback-danger-line: rgba(154, 11, 53, .3);--color-feedback-info-soft: rgba(5, 133, 185, .12);--color-feedback-info-line: rgba(5, 133, 185, .3);--color-data-1: #5482d5;--color-data-2: #b74c02;--color-data-3: #037267;--color-data-4: #b86b9b;--color-data-other: #464b5c;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=ledger]{color-scheme:dark;--color-surface-frame: #0d0c0a;--color-surface-background: #141310;--color-surface-subtle: #191814;--color-surface-elevated: #211f1b;--color-surface-hover: rgba(255, 255, 255, .061);--color-surface-pressed: rgba(255, 255, 255, .095);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(25, 24, 20, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(13, 12, 10, .65);--color-surface-inverse: #fffefb;--color-text-primary: #ece8df;--color-text-secondary: #b9b3a6;--color-text-link-quiet: #abb5e1;--color-text-tertiary: #a29c8e;--color-text-muted: #67625a;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #0d0c0a;--color-brand-accent: #4d6bef;--color-brand-accent-hover: #4361e4;--color-brand-accent-active: #3956d8;--color-brand-accent-ink: #a3b5ff;--color-brand-accent-soft: rgba(77, 107, 239, .161);--color-brand-accent-rgb: 77, 107, 239;--color-brand-accent-soft-strong: rgba(77, 107, 239, .32);--color-border-default: #2a2823;--color-border-hover: #3a3730;--color-border-strong: #3a3730;--color-border-strong-hover: #4b473e;--color-border-hatch: #2b2923;--color-border-control: #827d74;--color-focus: #5272f6;--color-feedback-success: #53cc8f;--color-feedback-success-ink: #95d6a3;--color-feedback-warning: #e2a132;--color-feedback-warning-ink: #efc27c;--color-feedback-danger: #d6403d;--color-feedback-danger-hover: #cb3534;--color-feedback-danger-ink: #f59b95;--color-feedback-info: #2fb3b0;--color-feedback-info-ink: #7fd6d3;--color-feedback-success-soft: rgba(83, 204, 143, .12);--color-feedback-success-line: rgba(83, 204, 143, .3);--color-feedback-warning-soft: rgba(226, 161, 50, .12);--color-feedback-warning-line: rgba(226, 161, 50, .3);--color-feedback-danger-soft: rgba(214, 64, 61, .12);--color-feedback-danger-line: rgba(214, 64, 61, .3);--color-feedback-info-soft: rgba(47, 179, 176, .12);--color-feedback-info-line: rgba(47, 179, 176, .3);--color-data-1: #5b8fd6;--color-data-2: #dc8028;--color-data-3: #4aa784;--color-data-4: #c49a2e;--color-data-other: #77726a;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=ledger]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #ebe8e1;--color-surface-background: #f6f5f1;--color-surface-subtle: #fffefb;--color-surface-elevated: #f0ede6;--color-surface-hover: rgba(13, 12, 10, .045);--color-surface-pressed: rgba(13, 12, 10, .09);--color-surface-inset: rgba(13, 12, 10, .026);--color-surface-glass: rgba(255, 254, 251, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(235, 232, 225, .65);--color-surface-inverse: #0d0c0a;--color-text-primary: #1c1a16;--color-text-secondary: #4a463e;--color-text-link-quiet: #32498e;--color-text-tertiary: #605c53;--color-text-muted: #908a7e;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f5f1;--color-brand-accent: #2f50d8;--color-brand-accent-hover: #2845c7;--color-brand-accent-active: #213ab6;--color-brand-accent-ink: #2643b8;--color-brand-accent-soft: rgba(47, 80, 216, .125);--color-brand-accent-rgb: 47, 80, 216;--color-brand-accent-soft-strong: rgba(47, 80, 216, .32);--color-border-default: #e0dbd0;--color-border-hover: #cdc6b8;--color-border-strong: #cdc6b8;--color-border-strong-hover: #bab1a0;--color-border-hatch: #ddd9cf;--color-border-control: #7e776b;--color-focus: #2f50d8;--color-feedback-success: #1a9368;--color-feedback-success-ink: #246937;--color-feedback-warning: #a86900;--color-feedback-warning-ink: #7f4f00;--color-feedback-danger: #9c332b;--color-feedback-danger-hover: #922923;--color-feedback-danger-ink: #a02d21;--color-feedback-info: #007883;--color-feedback-info-ink: #0d6461;--color-feedback-success-soft: rgba(26, 147, 104, .12);--color-feedback-success-line: rgba(26, 147, 104, .3);--color-feedback-warning-soft: rgba(168, 105, 0, .12);--color-feedback-warning-line: rgba(168, 105, 0, .3);--color-feedback-danger-soft: rgba(156, 51, 43, .12);--color-feedback-danger-line: rgba(156, 51, 43, .3);--color-feedback-info-soft: rgba(0, 120, 131, .12);--color-feedback-info-line: rgba(0, 120, 131, .3);--color-data-1: #3d6fb7;--color-data-2: #c8612a;--color-data-3: #1b4200;--color-data-4: #a87e10;--color-data-other: #8b8479;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=ledger][data-theme=light]{color-scheme:light;--color-surface-frame: #ebe8e1;--color-surface-background: #f6f5f1;--color-surface-subtle: #fffefb;--color-surface-elevated: #f0ede6;--color-surface-hover: rgba(13, 12, 10, .045);--color-surface-pressed: rgba(13, 12, 10, .09);--color-surface-inset: rgba(13, 12, 10, .026);--color-surface-glass: rgba(255, 254, 251, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(235, 232, 225, .65);--color-surface-inverse: #0d0c0a;--color-text-primary: #1c1a16;--color-text-secondary: #4a463e;--color-text-link-quiet: #32498e;--color-text-tertiary: #605c53;--color-text-muted: #908a7e;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f5f1;--color-brand-accent: #2f50d8;--color-brand-accent-hover: #2845c7;--color-brand-accent-active: #213ab6;--color-brand-accent-ink: #2643b8;--color-brand-accent-soft: rgba(47, 80, 216, .125);--color-brand-accent-rgb: 47, 80, 216;--color-brand-accent-soft-strong: rgba(47, 80, 216, .32);--color-border-default: #e0dbd0;--color-border-hover: #cdc6b8;--color-border-strong: #cdc6b8;--color-border-strong-hover: #bab1a0;--color-border-hatch: #ddd9cf;--color-border-control: #7e776b;--color-focus: #2f50d8;--color-feedback-success: #1a9368;--color-feedback-success-ink: #246937;--color-feedback-warning: #a86900;--color-feedback-warning-ink: #7f4f00;--color-feedback-danger: #9c332b;--color-feedback-danger-hover: #922923;--color-feedback-danger-ink: #a02d21;--color-feedback-info: #007883;--color-feedback-info-ink: #0d6461;--color-feedback-success-soft: rgba(26, 147, 104, .12);--color-feedback-success-line: rgba(26, 147, 104, .3);--color-feedback-warning-soft: rgba(168, 105, 0, .12);--color-feedback-warning-line: rgba(168, 105, 0, .3);--color-feedback-danger-soft: rgba(156, 51, 43, .12);--color-feedback-danger-line: rgba(156, 51, 43, .3);--color-feedback-info-soft: rgba(0, 120, 131, .12);--color-feedback-info-line: rgba(0, 120, 131, .3);--color-data-1: #3d6fb7;--color-data-2: #c8612a;--color-data-3: #1b4200;--color-data-4: #a87e10;--color-data-other: #8b8479;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root[data-palette=high-contrast]{color-scheme:dark;--color-surface-frame: #000000;--color-surface-background: #0b0b10;--color-surface-subtle: #0f0f16;--color-surface-elevated: #16161d;--color-surface-hover: rgba(255, 255, 255, .039);--color-surface-pressed: rgba(255, 255, 255, .07);--color-surface-inset: rgba(255, 255, 255, .028);--color-surface-glass: rgba(15, 15, 21, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(0, 0, 0, .65);--color-surface-inverse: #fcfcfc;--color-text-primary: #f8f8fb;--color-text-secondary: #e2e2ea;--color-text-link-quiet: #d1caf8;--color-text-tertiary: #b1b1bc;--color-text-muted: #9696a6;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #000000;--color-brand-accent: #6c55e6;--color-brand-accent-hover: #6249de;--color-brand-accent-active: #573dd0;--color-brand-accent-ink: #c9bdff;--color-brand-accent-soft: rgba(108, 85, 230, .16);--color-brand-accent-rgb: 108, 85, 230;--color-brand-accent-soft-strong: rgba(108, 85, 230, .32);--color-border-default: #7c7c90;--color-border-hover: #9a9aae;--color-border-strong: #9a9aae;--color-border-strong-hover: #b8b8c8;--color-border-hatch: #61616f;--color-border-control: #a2a2b4;--color-focus: #ffe066;--color-feedback-success: #34c98b;--color-feedback-success-ink: #8cefc4;--color-feedback-warning: #f0b425;--color-feedback-warning-ink: #ffd98a;--color-feedback-danger: #d73756;--color-feedback-danger-hover: #cc2b4e;--color-feedback-danger-ink: #ffb4c1;--color-feedback-info: #61d0ff;--color-feedback-info-ink: #a6e5ff;--color-feedback-success-soft: rgba(52, 201, 139, .12);--color-feedback-success-line: rgba(52, 201, 139, .3);--color-feedback-warning-soft: rgba(240, 180, 37, .12);--color-feedback-warning-line: rgba(240, 180, 37, .3);--color-feedback-danger-soft: rgba(215, 55, 86, .12);--color-feedback-danger-line: rgba(215, 55, 86, .3);--color-feedback-info-soft: rgba(97, 208, 255, .12);--color-feedback-info-line: rgba(97, 208, 255, .3);--color-data-1: #4d8ff6;--color-data-2: #e67737;--color-data-3: #26b582;--color-data-4: #eab106;--color-data-other: #9a9aab;--color-node-purple: #8e6ed4;--color-node-purple-ink: #cabae0;--color-node-cyan: #5ca8be;--color-node-cyan-ink: #b3d7e0;--color-node-green: #62a578;--color-node-green-ink: #b8d8c0;--color-node-amber: #c89866;--color-node-amber-ink: #e0c89e;--color-node-rose: #c8757f;--color-node-rose-ink: #e0bfc4;--color-node-blue: #5b7fc7;--color-node-blue-ink: #b9c5e0;--color-node-purple-fill: rgba(142, 110, 212, .12);--color-node-purple-line: rgba(142, 110, 212, .38);--color-node-purple-halo: rgba(142, 110, 212, .16);--color-node-cyan-fill: rgba(92, 168, 190, .12);--color-node-cyan-line: rgba(92, 168, 190, .38);--color-node-cyan-halo: rgba(92, 168, 190, .16);--color-node-green-fill: rgba(98, 165, 120, .12);--color-node-green-line: rgba(98, 165, 120, .38);--color-node-green-halo: rgba(98, 165, 120, .16);--color-node-amber-fill: rgba(200, 152, 102, .12);--color-node-amber-line: rgba(200, 152, 102, .38);--color-node-amber-halo: rgba(200, 152, 102, .16);--color-node-rose-fill: rgba(200, 117, 127, .12);--color-node-rose-line: rgba(200, 117, 127, .38);--color-node-rose-halo: rgba(200, 117, 127, .16);--color-node-blue-fill: rgba(91, 127, 199, .12);--color-node-blue-line: rgba(91, 127, 199, .38);--color-node-blue-halo: rgba(91, 127, 199, .16);--color-presence-flag-text: #07080d;--color-scrollbar: rgba(255, 255, 255, .16);--color-scrollbar-hover: rgba(255, 255, 255, .26);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .4);--shadow-sheet: -8px 0 32px rgba(0, 0, 0, .4);--shadow-2xl: 0 16px 64px rgba(0, 0, 0, .6);--shadow-card: 0 8px 24px rgba(0, 0, 0, .1);--shadow-rim-lit: 0 4px 24px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-hairline: inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .3)}@media(prefers-color-scheme:light){:root[data-palette=high-contrast]:not([data-theme=dark]){color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #fcfcfc;--color-surface-elevated: #f1f2f6;--color-surface-hover: rgba(0, 0, 0, .044);--color-surface-pressed: rgba(0, 0, 0, .086);--color-surface-inset: rgba(0, 0, 0, .026);--color-surface-glass: rgba(252, 252, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #000000;--color-text-primary: #000000;--color-text-secondary: #17171f;--color-text-link-quiet: #2b227a;--color-text-tertiary: #403f4c;--color-text-muted: #5b5b69;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4424c4;--color-brand-accent-hover: #3a1db0;--color-brand-accent-active: #31169c;--color-brand-accent-ink: #3a1db0;--color-brand-accent-soft: rgba(68, 36, 196, .125);--color-brand-accent-rgb: 68, 36, 196;--color-brand-accent-soft-strong: rgba(68, 36, 196, .32);--color-border-default: #6f6f82;--color-border-hover: #4f4f60;--color-border-strong: #4f4f60;--color-border-strong-hover: #383846;--color-border-hatch: #92929e;--color-border-control: #5b5b69;--color-focus: #4424c4;--color-feedback-success: #0b9a74;--color-feedback-success-ink: #004b30;--color-feedback-warning: #c17300;--color-feedback-warning-ink: #673300;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ac0025;--color-feedback-danger-ink: #87001f;--color-feedback-info: #2f92b4;--color-feedback-info-ink: #00446d;--color-feedback-success-soft: rgba(11, 154, 116, .12);--color-feedback-success-line: rgba(11, 154, 116, .3);--color-feedback-warning-soft: rgba(193, 115, 0, .12);--color-feedback-warning-line: rgba(193, 115, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(47, 146, 180, .12);--color-feedback-info-line: rgba(47, 146, 180, .3);--color-data-1: #5c76c3;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #5b5b69;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}}:root[data-palette=high-contrast][data-theme=light]{color-scheme:light;--color-surface-frame: #e9ecf3;--color-surface-background: #f6f7fb;--color-surface-subtle: #fcfcfc;--color-surface-elevated: #f1f2f6;--color-surface-hover: rgba(0, 0, 0, .044);--color-surface-pressed: rgba(0, 0, 0, .086);--color-surface-inset: rgba(0, 0, 0, .026);--color-surface-glass: rgba(252, 252, 252, .9);--color-surface-scrim: rgba(0, 0, 0, .6);--color-surface-veil: rgba(233, 236, 243, .65);--color-surface-inverse: #000000;--color-text-primary: #000000;--color-text-secondary: #17171f;--color-text-link-quiet: #2b227a;--color-text-tertiary: #403f4c;--color-text-muted: #5b5b69;--color-text-on-accent: #ffffff;--color-text-on-danger: #ffffff;--color-text-on-scrim: #ffffff;--color-text-inverse: #f6f7fb;--color-brand-accent: #4424c4;--color-brand-accent-hover: #3a1db0;--color-brand-accent-active: #31169c;--color-brand-accent-ink: #3a1db0;--color-brand-accent-soft: rgba(68, 36, 196, .125);--color-brand-accent-rgb: 68, 36, 196;--color-brand-accent-soft-strong: rgba(68, 36, 196, .32);--color-border-default: #6f6f82;--color-border-hover: #4f4f60;--color-border-strong: #4f4f60;--color-border-strong-hover: #383846;--color-border-hatch: #92929e;--color-border-control: #5b5b69;--color-focus: #4424c4;--color-feedback-success: #0b9a74;--color-feedback-success-ink: #004b30;--color-feedback-warning: #c17300;--color-feedback-warning-ink: #673300;--color-feedback-danger: #b9112c;--color-feedback-danger-hover: #ac0025;--color-feedback-danger-ink: #87001f;--color-feedback-info: #2f92b4;--color-feedback-info-ink: #00446d;--color-feedback-success-soft: rgba(11, 154, 116, .12);--color-feedback-success-line: rgba(11, 154, 116, .3);--color-feedback-warning-soft: rgba(193, 115, 0, .12);--color-feedback-warning-line: rgba(193, 115, 0, .3);--color-feedback-danger-soft: rgba(185, 17, 44, .12);--color-feedback-danger-line: rgba(185, 17, 44, .3);--color-feedback-info-soft: rgba(47, 146, 180, .12);--color-feedback-info-line: rgba(47, 146, 180, .3);--color-data-1: #5c76c3;--color-data-2: #dd5920;--color-data-3: #00956e;--color-data-4: #c27600;--color-data-other: #5b5b69;--color-node-purple: #7150b3;--color-node-purple-ink: #573394;--color-node-cyan: #166b80;--color-node-cyan-ink: #004f62;--color-node-green: #2c7046;--color-node-green-ink: #05532b;--color-node-amber: #865a28;--color-node-amber-ink: #683e03;--color-node-rose: #984a55;--color-node-rose-ink: #7a2f3c;--color-node-blue: #4062a7;--color-node-blue-ink: #264588;--color-node-purple-fill: rgba(113, 80, 179, .12);--color-node-purple-line: rgba(113, 80, 179, .38);--color-node-purple-halo: rgba(113, 80, 179, .16);--color-node-cyan-fill: rgba(22, 107, 128, .12);--color-node-cyan-line: rgba(22, 107, 128, .38);--color-node-cyan-halo: rgba(22, 107, 128, .16);--color-node-green-fill: rgba(44, 112, 70, .12);--color-node-green-line: rgba(44, 112, 70, .38);--color-node-green-halo: rgba(44, 112, 70, .16);--color-node-amber-fill: rgba(134, 90, 40, .12);--color-node-amber-line: rgba(134, 90, 40, .38);--color-node-amber-halo: rgba(134, 90, 40, .16);--color-node-rose-fill: rgba(152, 74, 85, .12);--color-node-rose-line: rgba(152, 74, 85, .38);--color-node-rose-halo: rgba(152, 74, 85, .16);--color-node-blue-fill: rgba(64, 98, 167, .12);--color-node-blue-line: rgba(64, 98, 167, .38);--color-node-blue-halo: rgba(64, 98, 167, .16);--color-presence-flag-text: #ffffff;--color-scrollbar: rgba(7, 8, 13, .2);--color-scrollbar-hover: rgba(7, 8, 13, .32);--shadow-xs: 0 1px 2px rgba(7, 8, 13, .06);--shadow-sm: 0 2px 8px rgba(7, 8, 13, .07);--shadow-md: 0 4px 12px rgba(7, 8, 13, .08), 0 1px 3px rgba(7, 8, 13, .06);--shadow-lg: 0 8px 24px rgba(7, 8, 13, .12);--shadow-xl: 0 16px 40px rgba(7, 8, 13, .16), 0 2px 8px rgba(7, 8, 13, .08);--shadow-sheet: -16px 0 40px rgba(7, 8, 13, .16), -2px 0 8px rgba(7, 8, 13, .08);--shadow-2xl: 0 16px 64px rgba(7, 8, 13, .2);--shadow-card: 0 8px 24px rgba(7, 8, 13, .07);--shadow-rim-lit: 0 4px 24px rgba(7, 8, 13, .1), inset 0 1px 0 rgba(255, 255, 255, .6);--shadow-hairline: none;--shadow-focus: 0 0 0 2px var(--color-surface-background), 0 0 0 4px var(--color-focus);--shadow-selection: inset 0 0 0 2px var(--color-brand-accent);--shadow-glow: 0 4px 24px rgba(var(--color-brand-accent-rgb), .22)}:root{--density: 1}:root[data-density=compact]{--density: .82}:root[data-density=comfortable]{--density: 1.16}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url("./fonts/geist-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url("./fonts/geist-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url("./fonts/geist-mono-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url("./fonts/geist-mono-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--color-surface-frame);color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:var(--font-size-compact);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-tight);letter-spacing:var(--font-letter-spacing-tight)}p,figure,pre{margin:0}a{color:var(--color-brand-accent-ink);text-decoration:none}a:hover{text-decoration:underline}button,input,optgroup,select,textarea{font:inherit;color:inherit;margin:0}button{background:none;border:none;padding:0;cursor:pointer}code,kbd,pre,samp{font-family:var(--font-family-mono);font-variant-ligatures:none;font-variant-numeric:tabular-nums}hr{border:none;border-top:1px solid var(--color-border-default);margin:0}table{border-collapse:collapse;width:100%}svg{display:block;flex:none}img{max-width:100%}:focus{outline:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--color-brand-accent-soft)}*{scrollbar-color:var(--color-scrollbar) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border:3px solid transparent;background-clip:content-box;border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-hover);background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
|
|
2
2
|
|
|
3
|
-
crewlet-sheet{display:block;min-width:0}crewlet-column{display:none}.crewlet-kit-sheet{display:flex;flex-direction:column;gap:var(--spacing-2);min-width:0}.crewlet-kit-sheet__presence{display:flex;justify-content:flex-end}.crewlet-callout{--crewlet-callout-fill: var(--color-surface-inset);--crewlet-callout-ink: var(--color-text-secondary);--crewlet-callout-line: transparent;display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--crewlet-callout-line);border-radius:var(--radius-md);background:var(--crewlet-callout-fill);color:var(--crewlet-callout-ink);font-family:var(--font-family-sans);font-size:var(--font-size-compact);line-height:var(--font-line-height-normal)}.crewlet-callout__icon{display:inline-flex;flex:none;margin-top:2px}.crewlet-callout__content{min-width:0;flex:1}.crewlet-callout__title{display:block;font-weight:var(--font-weight-semibold)}.crewlet-callout__action{flex:none;align-self:center}.crewlet-callout code,.crewlet-callout .crewlet-inline-code{color:inherit}.crewlet-callout--info{--crewlet-callout-fill: var(--color-feedback-info-soft);--crewlet-callout-ink: var(--color-feedback-info-ink)}.crewlet-callout--success{--crewlet-callout-fill: var(--color-feedback-success-soft);--crewlet-callout-ink: var(--color-feedback-success-ink)}.crewlet-callout--warning{--crewlet-callout-fill: var(--color-feedback-warning-soft);--crewlet-callout-ink: var(--color-feedback-warning-ink)}.crewlet-callout--danger{--crewlet-callout-fill: var(--color-feedback-danger-soft);--crewlet-callout-ink: var(--color-feedback-danger-ink)}.crewlet-callout--banner{border-radius:var(--radius-none);border-width:0 0 1px;border-bottom-color:var(--color-border-default);padding:var(--spacing-2) var(--spacing-4)}.crewlet-presence-hue--purple{--crewlet-presence-hue: var(--color-node-purple)}.crewlet-presence-hue--cyan{--crewlet-presence-hue: var(--color-node-cyan)}.crewlet-presence-hue--green{--crewlet-presence-hue: var(--color-node-green)}.crewlet-presence-hue--amber{--crewlet-presence-hue: var(--color-node-amber)}.crewlet-presence-hue--rose{--crewlet-presence-hue: var(--color-node-rose)}.crewlet-presence-hue--blue{--crewlet-presence-hue: var(--color-node-blue)}.crewlet-presence-hue--neutral{--crewlet-presence-hue: var(--color-border-strong)}.crewlet-presence-ring{--crewlet-presence-ring-inset: 1px;position:relative;display:inline-block}.crewlet-presence-ring:after{position:absolute;inset:var(--crewlet-presence-ring-inset);z-index:var(--z-index-presence);border:2px solid var(--crewlet-presence-hue);border-radius:inherit;content:"";pointer-events:none}.crewlet-presence-ring--idle:after{border-style:dashed}@media(forced-colors:active){.crewlet-presence-ring:after{border-color:Highlight}}.crewlet-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.crewlet-presence-stack>.crewlet-presence-stack__member{display:inline-flex;flex:none;padding:0;border:0;background:none;box-shadow:none;color:inherit;font:inherit}.crewlet-presence-stack>.crewlet-presence-stack__member--human{border-radius:var(--radius-circle)}.crewlet-presence-stack>.crewlet-presence-stack__member--agent{border-radius:var(--radius-sm)}button.crewlet-presence-stack__member{cursor:pointer}button.crewlet-presence-stack__member:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-presence-stack .crewlet-presence-stack__badge{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground)}.crewlet-presence-stack .crewlet-presence-stack__badge--present{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground),0 0 0 4px var(--crewlet-presence-hue)}.crewlet-presence-stack .crewlet-presence-stack__badge--idle{opacity:.5}@media(forced-colors:active){.crewlet-presence-stack .crewlet-presence-stack__badge--present{outline:2px solid Highlight;outline-offset:2px}}.crewlet-avatar{--crewlet-avatar-size: 32px;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--crewlet-avatar-size);height:var(--crewlet-avatar-size);overflow:hidden;object-fit:cover;font-family:var(--font-family-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--font-letter-spacing-wide);line-height:var(--font-line-height-body);text-transform:uppercase;user-select:none;box-sizing:border-box}.crewlet-avatar--xs{--crewlet-avatar-size: 20px;font-size:var(--font-size-2xs)}.crewlet-avatar--sm{--crewlet-avatar-size: 26px;font-size:var(--font-size-2xs)}.crewlet-avatar--md{--crewlet-avatar-size: 32px;font-size:var(--font-size-xs)}.crewlet-avatar--lg{--crewlet-avatar-size: 40px;font-size:var(--font-size-sm)}.crewlet-avatar--agent{border-radius:calc(var(--crewlet-avatar-size) * .29);font-family:var(--font-family-mono)}@supports (corner-shape: squircle){.crewlet-avatar--agent{corner-shape:squircle;border-radius:var(--radius-circle)}}.crewlet-avatar--human{border-radius:var(--radius-circle);font-family:var(--font-family-sans)}.crewlet-avatar--image{display:block;object-fit:cover}.crewlet-avatar__icon{display:inline-flex;align-items:center;justify-content:center;width:55%;height:55%}.crewlet-avatar__icon>*{width:100%;height:100%}.crewlet-avatar--fallback{border:1px solid transparent}.crewlet-avatar--neutral{background:var(--color-surface-elevated);border-color:var(--color-border-strong);color:var(--color-text-secondary)}.crewlet-avatar--seeded{color:var(--color-text-on-scrim)}.crewlet-avatar--tint-0{background:var(--color-avatar-tint-0)}.crewlet-avatar--tint-1{background:var(--color-avatar-tint-1)}.crewlet-avatar--tint-2{background:var(--color-avatar-tint-2)}.crewlet-avatar--tint-3{background:var(--color-avatar-tint-3)}.crewlet-avatar--tint-4{background:var(--color-avatar-tint-4)}.crewlet-avatar--tint-5{background:var(--color-avatar-tint-5)}.crewlet-avatar--tint-6{background:var(--color-avatar-tint-6)}.crewlet-avatar--tint-7{background:var(--color-avatar-tint-7)}.crewlet-avatar--tint-8{background:var(--color-avatar-tint-8)}.crewlet-avatar--tint-9{background:var(--color-avatar-tint-9)}.crewlet-avatar--character{border:1px solid transparent}.crewlet-avatar__character{display:block;flex:none;width:74%;height:74%}.crewlet-avatar--hue-purple{background:var(--color-node-purple-fill);border-color:var(--color-node-purple-line);color:var(--color-node-purple)}.crewlet-avatar--hue-cyan{background:var(--color-node-cyan-fill);border-color:var(--color-node-cyan-line);color:var(--color-node-cyan)}.crewlet-avatar--hue-green{background:var(--color-node-green-fill);border-color:var(--color-node-green-line);color:var(--color-node-green)}.crewlet-avatar--hue-amber{background:var(--color-node-amber-fill);border-color:var(--color-node-amber-line);color:var(--color-node-amber)}.crewlet-avatar--hue-rose{background:var(--color-node-rose-fill);border-color:var(--color-node-rose-line);color:var(--color-node-rose)}.crewlet-avatar--hue-blue{background:var(--color-node-blue-fill);border-color:var(--color-node-blue-line);color:var(--color-node-blue)}.crewlet-avatar--ring-brand{outline-style:solid;outline-width:1.5px;outline-offset:2px;outline-color:var(--color-brand-accent)}.crewlet-avatar-frame{--crewlet-avatar-status-size: max(10px, calc(var(--crewlet-avatar-size) * .42));--crewlet-avatar-status-overhang: 2px;--crewlet-avatar-status-gap: 1.5px;position:relative;display:inline-flex;flex:none;width:var(--crewlet-avatar-size);height:var(--crewlet-avatar-size);vertical-align:middle}.crewlet-avatar--notched{--crewlet-avatar-status-centre: calc( 100% + var(--crewlet-avatar-status-overhang) - var(--crewlet-avatar-status-size) / 2 );--crewlet-avatar-status-cut: calc(var(--crewlet-avatar-status-size) / 2 + var(--crewlet-avatar-status-gap));-webkit-mask-image:radial-gradient(circle at var(--crewlet-avatar-status-centre) var(--crewlet-avatar-status-centre),transparent var(--crewlet-avatar-status-cut),#000 calc(var(--crewlet-avatar-status-cut) + .5px));mask-image:radial-gradient(circle at var(--crewlet-avatar-status-centre) var(--crewlet-avatar-status-centre),transparent var(--crewlet-avatar-status-cut),#000 calc(var(--crewlet-avatar-status-cut) + .5px))}.crewlet-avatar__status{position:absolute;right:calc(var(--crewlet-avatar-status-overhang) * -1);bottom:calc(var(--crewlet-avatar-status-overhang) * -1);display:grid;place-items:center;width:var(--crewlet-avatar-status-size);height:var(--crewlet-avatar-status-size);border-radius:var(--radius-circle);outline:1px solid transparent;color:var(--color-text-inverse);pointer-events:none}.crewlet-avatar__status>svg{display:block;width:100%;height:100%}.crewlet-avatar__status--working{background:var(--color-feedback-info)}.crewlet-avatar__status--needs{background:var(--color-feedback-warning)}.crewlet-avatar__status--stopped{background:var(--color-feedback-danger)}.crewlet-avatar__status--mark{padding:1px;background:var(--color-surface-elevated);outline-color:var(--color-border-strong);outline-offset:-1px;color:var(--color-text-secondary)}.crewlet-avatar-stack{--crewlet-avatar-stack-ground: var(--color-surface-background);--crewlet-avatar-stack-size: 26px;display:inline-flex;flex:none;align-items:center;vertical-align:middle}.crewlet-avatar-stack>.crewlet-avatar-stack__member{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground)}.crewlet-avatar-stack>.crewlet-avatar-stack__member+.crewlet-avatar-stack__member{margin-inline-start:-6px}.crewlet-avatar-stack>.crewlet-avatar-stack__more{display:inline-flex;flex:none;align-items:center;justify-content:center;box-sizing:border-box;min-width:var(--crewlet-avatar-stack-size);height:var(--crewlet-avatar-stack-size);padding-inline:var(--spacing-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-elevated);color:var(--color-text-secondary);font-family:var(--font-family-sans);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:var(--font-line-height-tight);white-space:nowrap;user-select:none}.crewlet-status-dot{display:inline-block;width:7px;height:7px;border-radius:var(--radius-circle);background:var(--color-text-tertiary);--crewlet-status-dot-halo: var(--color-surface-pressed);flex:none}.crewlet-status-dot--info{background:var(--color-feedback-info);--crewlet-status-dot-halo: var(--color-feedback-info-soft)}.crewlet-status-dot--success{background:var(--color-feedback-success);--crewlet-status-dot-halo: var(--color-feedback-success-soft)}.crewlet-status-dot--warning{background:var(--color-feedback-warning);--crewlet-status-dot-halo: var(--color-feedback-warning-soft)}.crewlet-status-dot--danger{background:var(--color-feedback-danger);--crewlet-status-dot-halo: var(--color-feedback-danger-soft)}.crewlet-status-dot--brand{background:var(--color-brand-accent);--crewlet-status-dot-halo: var(--color-brand-accent-soft)}:where(.crewlet-status-dot.is-pulsing){position:relative}.crewlet-status-dot.is-pulsing:after{content:"";position:absolute;inset:-2px;border-radius:var(--radius-circle);pointer-events:none;animation:crewlet-status-dot-pulse var(--motion-duration-breath) var(--motion-easing-in-out) infinite}@keyframes crewlet-status-dot-pulse{0%,to{box-shadow:0 0 0 0 var(--crewlet-status-dot-halo)}50%{box-shadow:0 0 0 3px var(--crewlet-status-dot-halo)}}.crewlet-status{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%}.crewlet-status__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(prefers-reduced-motion:reduce){.crewlet-status-dot.is-pulsing:after{animation:none}}.crewlet-tag{--crewlet-tag-height: calc(22px * var(--density, 1));--crewlet-tag-floor: 0px;--crewlet-tag-pad: calc(var(--spacing-2) + var(--spacing-1) / 4);--crewlet-tag-fill: var(--color-surface-elevated);--crewlet-tag-ink: var(--color-text-secondary);--crewlet-tag-line: var(--color-border-hover);--crewlet-tag-edge: transparent;display:inline-flex;align-items:center;gap:calc(var(--spacing-1) * 1.5);height:max(var(--crewlet-tag-height),var(--crewlet-tag-floor));padding:0 var(--crewlet-tag-pad);border:1px solid var(--crewlet-tag-edge);border-radius:var(--radius-pill);background:var(--crewlet-tag-fill);color:var(--crewlet-tag-ink);font-family:var(--font-family-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--font-letter-spacing-normal);line-height:1;white-space:nowrap;max-width:100%;vertical-align:middle;box-sizing:border-box}.crewlet-tag__label{overflow:hidden;text-overflow:ellipsis}.crewlet-tag__icon{display:inline-flex;align-items:center;flex:none}.crewlet-tag .crewlet-tag__dot{flex:none;background:currentColor}.crewlet-tag__count{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold);flex:none}.crewlet-tag--xs{--crewlet-tag-height: calc(18px * var(--density, 1));--crewlet-tag-pad: calc(var(--spacing-1) * 1.5);gap:var(--spacing-1);font-size:var(--font-size-2xs)}.crewlet-tag--sm{--crewlet-tag-height: calc(22px * var(--density, 1))}.crewlet-tag--md{--crewlet-tag-height: var(--size-control-sm)}.crewlet-tag--acts{--crewlet-tag-floor: max(24px, calc(24px * var(--density, 1)))}.crewlet-tag--monospace .crewlet-tag__label{font-family:var(--font-family-mono);font-size:var(--font-size-2xs)}.crewlet-tag--info{--crewlet-tag-fill: var(--color-feedback-info-soft);--crewlet-tag-ink: var(--color-feedback-info-ink);--crewlet-tag-line: var(--color-feedback-info-line)}.crewlet-tag--success{--crewlet-tag-fill: var(--color-feedback-success-soft);--crewlet-tag-ink: var(--color-feedback-success-ink);--crewlet-tag-line: var(--color-feedback-success-line)}.crewlet-tag--warning{--crewlet-tag-fill: var(--color-feedback-warning-soft);--crewlet-tag-ink: var(--color-feedback-warning-ink);--crewlet-tag-line: var(--color-feedback-warning-line)}.crewlet-tag--danger{--crewlet-tag-fill: var(--color-feedback-danger-soft);--crewlet-tag-ink: var(--color-feedback-danger-ink);--crewlet-tag-line: var(--color-feedback-danger-line)}.crewlet-tag--brand{--crewlet-tag-fill: var(--color-brand-accent-soft);--crewlet-tag-ink: var(--color-brand-accent-ink);--crewlet-tag-line: var(--color-brand-accent-soft-strong)}.crewlet-tag--hue-purple{--crewlet-tag-fill: var(--color-node-purple-fill);--crewlet-tag-ink: var(--color-node-purple-ink);--crewlet-tag-line: var(--color-node-purple-line)}.crewlet-tag--hue-cyan{--crewlet-tag-fill: var(--color-node-cyan-fill);--crewlet-tag-ink: var(--color-node-cyan-ink);--crewlet-tag-line: var(--color-node-cyan-line)}.crewlet-tag--hue-green{--crewlet-tag-fill: var(--color-node-green-fill);--crewlet-tag-ink: var(--color-node-green-ink);--crewlet-tag-line: var(--color-node-green-line)}.crewlet-tag--hue-amber{--crewlet-tag-fill: var(--color-node-amber-fill);--crewlet-tag-ink: var(--color-node-amber-ink);--crewlet-tag-line: var(--color-node-amber-line)}.crewlet-tag--hue-rose{--crewlet-tag-fill: var(--color-node-rose-fill);--crewlet-tag-ink: var(--color-node-rose-ink);--crewlet-tag-line: var(--color-node-rose-line)}.crewlet-tag--hue-blue{--crewlet-tag-fill: var(--color-node-blue-fill);--crewlet-tag-ink: var(--color-node-blue-ink);--crewlet-tag-line: var(--color-node-blue-line)}.crewlet-tag--outline{background:transparent;border-color:var(--crewlet-tag-line)}.crewlet-tag--neutral.crewlet-tag--soft{--crewlet-tag-edge: var(--color-border-strong);--crewlet-tag-line: var(--color-border-strong-hover)}.crewlet-tag--neutral.crewlet-tag--outline{border-color:var(--color-border-default);--crewlet-tag-ink: var(--color-text-tertiary)}.crewlet-tag--actionable{cursor:pointer;font-family:inherit;transition:border-color var(--motion-duration-fast) var(--motion-easing-default),box-shadow var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag--actionable:hover{border-color:var(--crewlet-tag-line)}.crewlet-tag--actionable[aria-pressed=true]{border-color:var(--crewlet-tag-ink);box-shadow:inset 0 0 0 1px var(--crewlet-tag-ink)}.crewlet-tag--actionable:focus-visible,.crewlet-tag__press:focus-visible,.crewlet-tag__remove:focus-visible{outline:2px solid var(--color-focus)}.crewlet-tag--actionable:focus-visible,.crewlet-tag__remove:focus-visible{outline-offset:-1px}.crewlet-tag__press:focus-visible{outline-offset:0}.crewlet-tag--split{padding:0;transition:border-color var(--motion-duration-fast) var(--motion-easing-default),box-shadow var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag--split .crewlet-tag__press{display:inline-flex;align-items:center;align-self:stretch;gap:inherit;min-width:0;padding:0 var(--crewlet-tag-pad);border:0;border-radius:var(--radius-pill) 0 0 var(--radius-pill);background:transparent;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;cursor:pointer}.crewlet-tag--split .crewlet-tag__remove{margin-right:0}.crewlet-tag--split:hover{border-color:var(--crewlet-tag-line)}.crewlet-tag--split.is-pressed{border-color:var(--crewlet-tag-ink);box-shadow:inset 0 0 0 1px var(--crewlet-tag-ink)}.crewlet-tag__remove{display:inline-flex;align-items:center;justify-content:center;align-self:stretch;min-width:24px;margin-block-start:-1px;margin-block-end:-1px;margin-right:calc(var(--crewlet-tag-pad) * -1);padding:0 var(--spacing-1);border:0;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:transparent;color:inherit;cursor:pointer;opacity:.7;transition:opacity var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag__remove:hover{opacity:1}.crewlet-tag--animate-in{animation:crewlet-tag-in var(--motion-duration-base) var(--motion-easing-emphasized)}@keyframes crewlet-tag-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.crewlet-tag--animate-in{animation:none}.crewlet-tag--actionable,.crewlet-tag--split,.crewlet-tag__remove{transition:none}}.crewlet-cursor-flag{display:inline-flex;align-items:center;gap:var(--spacing-1);box-sizing:border-box;max-width:16em;padding:0 calc(var(--spacing-1) * 1.5);border-radius:var(--radius-pill);background:var(--crewlet-presence-hue);box-shadow:var(--shadow-cursor);color:var(--color-presence-flag-text);font-family:var(--font-family-sans);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-normal);white-space:nowrap;pointer-events:none;user-select:none}.crewlet-cursor-flag--agent{border-radius:var(--radius-xs)}.crewlet-cursor-flag__name{overflow:hidden;text-overflow:ellipsis}.crewlet-cursor-flag__glyph{flex:none}.crewlet-cursor-flag--top-end,.crewlet-cursor-flag--bottom-end{position:absolute;inset-inline-end:0;z-index:var(--z-index-presence)}.crewlet-cursor-flag--top-end{bottom:100%}.crewlet-cursor-flag--bottom-end{top:100%}@media(forced-colors:active){.crewlet-cursor-flag{border:1px solid CanvasText;background:Canvas;color:CanvasText}}.crewlet-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-family-sans);font-weight:var(--font-weight-medium);letter-spacing:var(--font-letter-spacing-normal);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-easing-default),color var(--motion-duration-fast) var(--motion-easing-default),border-color var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-btn,.crewlet-btn:hover{text-decoration:none}.crewlet-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.crewlet-btn--secondary:focus-visible,.crewlet-btn--outline:focus-visible,.crewlet-btn--danger:focus-visible,.crewlet-btn[aria-pressed=true]:focus-visible{outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-btn:disabled,.crewlet-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.crewlet-btn:disabled{pointer-events:none}.crewlet-btn--small{min-height:var(--size-control-sm);padding:0 var(--spacing-2);font-size:var(--font-size-xs)}.crewlet-btn--medium{min-height:var(--size-control-md);padding:0 var(--spacing-3);font-size:var(--font-size-compact)}.crewlet-btn--large{min-height:var(--size-control-lg);padding:0 var(--spacing-4);font-size:var(--font-size-sm)}.crewlet-btn--square{border-radius:var(--radius-md)}.crewlet-btn--pill{border-radius:var(--radius-pill)}.crewlet-btn--pill.crewlet-btn--small{padding:0 var(--spacing-3)}.crewlet-btn--pill.crewlet-btn--medium{padding:0 var(--spacing-4)}.crewlet-btn--pill.crewlet-btn--large{padding:0 var(--spacing-5)}.crewlet-btn--block{width:100%}.crewlet-btn--primary,.crewlet-btn--accent{background:var(--color-brand-accent);color:var(--color-text-on-accent);border-color:transparent}.crewlet-btn--primary:hover:not(:disabled):not([aria-disabled=true]),.crewlet-btn--accent:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-hover);border-color:transparent}.crewlet-btn--primary:active:not(:disabled):not([aria-disabled=true]),.crewlet-btn--accent:active:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-active);border-color:transparent}.crewlet-btn--secondary{background:var(--color-surface-subtle);color:var(--color-text-primary);border-color:var(--color-border-strong)}.crewlet-btn--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-elevated);border-color:var(--color-border-strong-hover)}.crewlet-btn--secondary:active:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-pressed)}.crewlet-btn--outline{background:transparent;color:var(--color-brand-accent-ink);border-color:var(--color-brand-accent)}.crewlet-btn--outline:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-soft)}.crewlet-btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.crewlet-btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-hover);color:var(--color-text-primary)}.crewlet-btn--ghost:active:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-pressed)}.crewlet-btn--danger{background:var(--color-surface-subtle);color:var(--color-feedback-danger-ink);border-color:var(--color-border-strong)}.crewlet-btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-feedback-danger-soft);border-color:var(--color-feedback-danger)}.crewlet-btn--danger:active:not(:disabled):not([aria-disabled=true]){background:var(--color-feedback-danger-soft);border-color:var(--color-feedback-danger-hover)}.crewlet-btn[aria-pressed=true]{background:var(--color-brand-accent-soft);color:var(--color-brand-accent-ink);border-color:var(--color-brand-accent-soft-strong)}.crewlet-btn__icon,.crewlet-btn__label{display:inline-flex;align-items:center}.crewlet-btn__icon .crewlet-glyph{width:1em;height:1em}.crewlet-btn__spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-circle);opacity:.7;animation:crewlet-btn-spin var(--motion-duration-slow) linear infinite;flex:none}@keyframes crewlet-btn-spin{to{transform:rotate(360deg)}}.crewlet-btn--loading{cursor:progress}@media(prefers-reduced-motion:reduce){.crewlet-btn{transition:none}.crewlet-btn__spinner{animation:none}}.crewlet-layer-host{position:absolute;inset:0;pointer-events:none}.crewlet-layer-host>*{pointer-events:auto}.crewlet-tooltip{position:fixed;max-width:260px;padding:var(--spacing-1) var(--spacing-2);background:var(--color-surface-subtle);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--font-size-xs);line-height:var(--font-line-height-snug);overflow-wrap:break-word;animation:crewlet-tooltip-in var(--motion-duration-base) var(--motion-easing-emphasized)}.crewlet-tooltip--in-host{position:absolute}@keyframes crewlet-tooltip-in{0%{opacity:0;transform:translateY(var(--spacing-1))}}@media(prefers-reduced-motion:reduce){.crewlet-tooltip{animation:none}}.crewlet-change-mark{position:absolute;top:0;inset-inline-end:0;width:0;height:0;border-top:var(--spacing-2) solid var(--color-change-mark);border-inline-start:var(--spacing-2) solid transparent;pointer-events:auto}@media(forced-colors:active){.crewlet-change-mark{border-top-color:CanvasText}}.crewlet-sheet-grid{--crewlet-sheet-row-height: var(--size-sheet-row);position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:var(--font-size-sm)}.crewlet-sheet-grid__probe{position:absolute;width:0;height:var(--size-sheet-row);visibility:hidden;pointer-events:none}.crewlet-sheet-grid__scroller{position:relative;flex:1 1 auto;min-height:0;max-width:100%;overflow:auto;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-background)}.crewlet-sheet-grid__grid{position:relative;min-width:100%}.crewlet-sheet-grid__row{display:grid;grid-template-columns:var(--crewlet-sheet-columns);height:var(--crewlet-sheet-row-height)}.crewlet-sheet-grid__head{position:sticky;top:0;z-index:var(--z-index-sticky)}.crewlet-sheet-grid__body{position:relative}.crewlet-sheet-grid__body>.crewlet-sheet-grid__row{position:absolute;right:0;left:0}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__header,.crewlet-sheet-grid__rownum,.crewlet-sheet-grid__cell{position:relative;display:flex;align-items:center;box-sizing:border-box;min-width:0;border-right:1px solid var(--color-border-default);border-bottom:1px solid var(--color-border-default);background:var(--color-surface-background)}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__header{background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__rownum{position:sticky;inset-inline-start:0;z-index:var(--z-index-raised);justify-content:center}.crewlet-sheet-grid__corner{z-index:var(--z-index-sticky)}.crewlet-sheet-grid__header{gap:var(--spacing-1);padding:0 var(--spacing-2);cursor:default;user-select:none}.crewlet-sheet-grid__header-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-grid__sort{display:inline-flex;flex:none;color:var(--color-text-tertiary)}.crewlet-sheet-grid__header-presence{display:inline-flex;flex:none;gap:var(--spacing-1);margin-inline-start:auto}.crewlet-sheet-grid .crewlet-sheet-grid__header-badge{box-shadow:0 0 0 2px var(--crewlet-presence-hue)}.crewlet-sheet-grid__rownum{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.crewlet-sheet-grid__rownum--present:before{position:absolute;top:0;bottom:0;inset-inline-start:0;width:3px;background:var(--crewlet-presence-hue);content:""}.crewlet-sheet-grid__cell{padding:0 var(--spacing-2);outline:none}.crewlet-sheet-grid__cell--frozen,.crewlet-sheet-grid__header.crewlet-sheet-grid__cell--frozen{position:sticky;z-index:var(--z-index-raised)}.crewlet-sheet-grid__header.crewlet-sheet-grid__cell--frozen{z-index:var(--z-index-sticky)}.crewlet-sheet-grid__cell--number,.crewlet-sheet-grid__cell--rating{justify-content:flex-end}.crewlet-sheet-grid__cell--checkbox{justify-content:center}.crewlet-sheet-grid__cell--selected{background:var(--color-brand-accent-soft)}.crewlet-sheet-grid__cell:focus-visible,.crewlet-sheet-grid__header:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-grid__cell--editing{z-index:var(--z-index-presence);overflow:visible}.crewlet-sheet-grid__value{display:flex;align-items:center;min-width:0;max-width:100%;overflow:hidden}.crewlet-sheet-grid__cell--editing>.crewlet-sheet-grid__value{visibility:hidden}.crewlet-sheet-grid__cell--pending>.crewlet-sheet-grid__value{text-decoration:underline dashed var(--color-text-tertiary);text-underline-offset:3px}.crewlet-sheet-grid__cell--pending>.crewlet-sheet-grid__value:after{position:absolute;right:var(--spacing-1);bottom:2px;left:var(--spacing-1);border-bottom:1px dashed var(--color-text-tertiary);content:""}.crewlet-sheet-grid__refused{display:inline-flex;flex:none;margin-inline-start:auto;padding-inline-start:var(--spacing-1);color:var(--color-feedback-danger-ink)}.crewlet-sheet-grid__message{position:absolute;top:100%;inset-inline-start:0;z-index:var(--z-index-presence);box-sizing:border-box;width:max-content;max-width:20rem;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--color-feedback-danger-line);border-radius:var(--radius-sm);background:var(--color-surface-elevated);box-shadow:var(--shadow-md);color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs);white-space:normal}.crewlet-sheet-grid__history{position:absolute;top:50%;inset-inline-end:var(--spacing-1);display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-1);border:0;border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text-secondary);transform:translateY(-50%);cursor:pointer}.crewlet-sheet-grid__history:hover{color:var(--color-text-primary)}.crewlet-sheet-grid__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-2);padding:var(--spacing-2) 0;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.crewlet-sheet-grid__sync{display:inline-flex;align-items:center;gap:var(--spacing-2);margin-inline-start:auto}.crewlet-sheet-grid__sync--failed{color:var(--color-feedback-danger-ink)}.crewlet-sheet-cell__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-cell__number{font-variant-numeric:tabular-nums}.crewlet-sheet-cell__muted{color:var(--color-text-tertiary)}.crewlet-sheet-cell__chips{display:inline-flex;gap:var(--spacing-1);min-width:0;overflow:hidden}.crewlet-sheet-cell__person{display:inline-flex;align-items:center;gap:var(--spacing-1);min-width:0}.crewlet-sheet-cell__link{overflow:hidden;color:var(--color-text-link-quiet);text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-cell__link:hover{color:var(--color-brand-accent-ink)}.crewlet-sheet-cell__checkbox{display:inline-flex;align-items:center}.crewlet-sheet-cell__check{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--spacing-4);height:var(--spacing-4);border:1px solid var(--color-border-control);border-radius:var(--radius-xs);background:var(--color-surface-background);color:var(--color-text-on-accent)}.crewlet-sheet-cell__check--on{border-color:var(--color-brand-accent);background:var(--color-brand-accent)}.crewlet-sheet-cell__rating,.crewlet-sheet-cell__stars{display:inline-flex;align-items:center}.crewlet-sheet-cell__star{color:var(--color-text-tertiary)}.crewlet-sheet-cell__star--on{color:var(--color-feedback-warning)}.crewlet-sheet-cell{position:relative;display:inline-flex;flex-direction:column;gap:var(--spacing-1);min-width:0}.crewlet-sheet-cell__face{display:inline-flex;align-items:center;box-sizing:border-box;min-height:var(--size-control-md);padding:0 var(--spacing-2);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-surface-background);color:inherit;font:inherit;text-align:start;cursor:pointer}.crewlet-sheet-cell__face[aria-disabled=true]{cursor:default}.crewlet-sheet-cell__face:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-cell--pending .crewlet-sheet-cell__face{border-style:dashed}.crewlet-sheet-cell__refusal{display:inline-flex;align-items:center;gap:var(--spacing-1);color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs)}.crewlet-sheet-editor{position:absolute;inset:0;z-index:var(--z-index-presence)}.crewlet-sheet-cell .crewlet-sheet-editor{position:relative;inset:auto}.crewlet-sheet-editor__input{box-sizing:border-box;width:100%;height:100%;min-height:var(--size-control-md);padding:0 var(--spacing-2);border:0;border-radius:0;background:var(--color-surface-elevated);box-shadow:inset 0 0 0 2px var(--color-focus);color:var(--color-text-primary);font:inherit}.crewlet-sheet-editor__input:focus-visible,.crewlet-sheet-editor__filter:focus-visible,.crewlet-sheet-editor__textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-editor__panel{position:absolute;top:100%;inset-inline-start:0;z-index:var(--z-index-presence);display:flex;flex-direction:column;gap:var(--spacing-2);box-sizing:border-box;min-width:100%;width:max-content;max-width:min(24rem,90vw);padding:var(--spacing-2);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-lg)}.crewlet-sheet-editor--above .crewlet-sheet-editor__panel{top:auto;bottom:100%}.crewlet-sheet-editor--list .crewlet-sheet-editor__panel,.crewlet-sheet-editor--long .crewlet-sheet-editor__panel{top:0;min-width:max(100%,14rem)}.crewlet-sheet-editor--list.crewlet-sheet-editor--above .crewlet-sheet-editor__panel,.crewlet-sheet-editor--long.crewlet-sheet-editor--above .crewlet-sheet-editor__panel{top:auto;bottom:0}.crewlet-sheet-editor__filter,.crewlet-sheet-editor__textarea{box-sizing:border-box;width:100%;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-surface-background);color:var(--color-text-primary);font:inherit}.crewlet-sheet-editor__textarea{min-width:20rem;max-width:100%;resize:vertical}.crewlet-sheet-editor__list{display:flex;flex-direction:column;max-height:16rem;margin:0;padding:0;overflow-y:auto;list-style:none}.crewlet-sheet-editor__option{display:flex;align-items:center;gap:var(--spacing-2);min-height:var(--size-row-sm);padding:0 var(--spacing-2);border-radius:var(--radius-sm);cursor:pointer}.crewlet-sheet-editor__option--highlight{background:var(--color-surface-hover)}.crewlet-sheet-editor__mark{display:inline-flex;flex:none;width:var(--spacing-3);color:var(--color-brand-accent-ink)}.crewlet-sheet-editor__empty{padding:var(--spacing-2);color:var(--color-text-tertiary)}.crewlet-sheet-editor__error{display:flex;align-items:center;gap:var(--spacing-1);margin:0;color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs)}.crewlet-sheet-editor__conflict{display:flex;flex-direction:column;gap:var(--spacing-2);padding-top:var(--spacing-2);border-top:1px solid var(--color-border-default)}.crewlet-sheet-editor__conflict-text{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-xs)}.crewlet-sheet-editor__conflict-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}@media(width<640px){.crewlet-sheet-grid .crewlet-sheet-editor--list .crewlet-sheet-editor__panel,.crewlet-sheet-grid .crewlet-sheet-editor--long .crewlet-sheet-editor__panel{position:fixed;inset:auto 0 0;width:auto;max-width:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.crewlet-sheet-editor__textarea{min-width:0}}@media(forced-colors:active){.crewlet-sheet-grid__cell--selected{background:Highlight;color:HighlightText}.crewlet-sheet-grid__rownum--present:before{background:Highlight}}
|
|
3
|
+
crewlet-sheet{display:block;min-width:0}crewlet-column{display:none}.crewlet-kit-sheet{display:flex;flex-direction:column;gap:var(--spacing-2);min-width:0}.crewlet-kit-sheet__presence{display:flex;justify-content:flex-end}.crewlet-callout{--crewlet-callout-fill: var(--color-surface-inset);--crewlet-callout-ink: var(--color-text-secondary);--crewlet-callout-line: transparent;display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--crewlet-callout-line);border-radius:var(--radius-md);background:var(--crewlet-callout-fill);color:var(--crewlet-callout-ink);font-family:var(--font-family-sans);font-size:var(--font-size-compact);line-height:var(--font-line-height-normal)}.crewlet-callout__icon{display:inline-flex;flex:none;margin-top:2px}.crewlet-callout__content{min-width:0;flex:1}.crewlet-callout__title{display:block;font-weight:var(--font-weight-semibold)}.crewlet-callout__action{flex:none;align-self:center}.crewlet-callout code,.crewlet-callout .crewlet-inline-code{color:inherit}.crewlet-callout--info{--crewlet-callout-fill: var(--color-feedback-info-soft);--crewlet-callout-ink: var(--color-feedback-info-ink)}.crewlet-callout--success{--crewlet-callout-fill: var(--color-feedback-success-soft);--crewlet-callout-ink: var(--color-feedback-success-ink)}.crewlet-callout--warning{--crewlet-callout-fill: var(--color-feedback-warning-soft);--crewlet-callout-ink: var(--color-feedback-warning-ink)}.crewlet-callout--danger{--crewlet-callout-fill: var(--color-feedback-danger-soft);--crewlet-callout-ink: var(--color-feedback-danger-ink)}.crewlet-callout--banner{border-radius:var(--radius-none);border-width:0 0 1px;border-bottom-color:var(--color-border-default);padding:var(--spacing-2) var(--spacing-4)}.crewlet-presence-hue--purple{--crewlet-presence-hue: var(--color-node-purple)}.crewlet-presence-hue--cyan{--crewlet-presence-hue: var(--color-node-cyan)}.crewlet-presence-hue--green{--crewlet-presence-hue: var(--color-node-green)}.crewlet-presence-hue--amber{--crewlet-presence-hue: var(--color-node-amber)}.crewlet-presence-hue--rose{--crewlet-presence-hue: var(--color-node-rose)}.crewlet-presence-hue--blue{--crewlet-presence-hue: var(--color-node-blue)}.crewlet-presence-hue--neutral{--crewlet-presence-hue: var(--color-border-strong)}.crewlet-presence-ring{--crewlet-presence-ring-inset: 1px;position:relative;display:inline-block}.crewlet-presence-ring:after{position:absolute;inset:var(--crewlet-presence-ring-inset);z-index:var(--z-index-presence);border:2px solid var(--crewlet-presence-hue);border-radius:inherit;content:"";pointer-events:none}.crewlet-presence-ring--idle:after{border-style:dashed}@media(forced-colors:active){.crewlet-presence-ring:after{border-color:Highlight}}.crewlet-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.crewlet-presence-stack>.crewlet-presence-stack__member{display:inline-flex;flex:none;padding:0;border:0;background:none;box-shadow:none;color:inherit;font:inherit}.crewlet-presence-stack>.crewlet-presence-stack__member--human{border-radius:var(--radius-circle)}.crewlet-presence-stack>.crewlet-presence-stack__member--agent{border-radius:var(--radius-sm)}button.crewlet-presence-stack__member{cursor:pointer}button.crewlet-presence-stack__member:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-presence-stack .crewlet-presence-stack__badge{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground)}.crewlet-presence-stack .crewlet-presence-stack__badge--present{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground),0 0 0 4px var(--crewlet-presence-hue)}.crewlet-presence-stack .crewlet-presence-stack__badge--idle{opacity:.5}@media(forced-colors:active){.crewlet-presence-stack .crewlet-presence-stack__badge--present{outline:2px solid Highlight;outline-offset:2px}}.crewlet-avatar{--crewlet-avatar-size: 32px;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--crewlet-avatar-size);height:var(--crewlet-avatar-size);overflow:hidden;object-fit:cover;font-family:var(--font-family-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--font-letter-spacing-wide);line-height:var(--font-line-height-body);text-transform:uppercase;user-select:none;box-sizing:border-box}.crewlet-avatar--xs{--crewlet-avatar-size: 20px;font-size:var(--font-size-2xs)}.crewlet-avatar--sm{--crewlet-avatar-size: 26px;font-size:var(--font-size-2xs)}.crewlet-avatar--md{--crewlet-avatar-size: 32px;font-size:var(--font-size-xs)}.crewlet-avatar--lg{--crewlet-avatar-size: 40px;font-size:var(--font-size-sm)}.crewlet-avatar--agent{border-radius:calc(var(--crewlet-avatar-size) * .29);font-family:var(--font-family-mono)}@supports (corner-shape: squircle){.crewlet-avatar--agent{corner-shape:squircle;border-radius:var(--radius-circle)}}.crewlet-avatar--human{border-radius:var(--radius-circle);font-family:var(--font-family-sans)}.crewlet-avatar--image{display:block;object-fit:cover}.crewlet-avatar__icon{display:inline-flex;align-items:center;justify-content:center;width:55%;height:55%}.crewlet-avatar__icon>*{width:100%;height:100%}.crewlet-avatar--fallback{border:1px solid transparent}.crewlet-avatar--neutral{background:var(--color-surface-elevated);border-color:var(--color-border-strong);color:var(--color-text-secondary)}.crewlet-avatar--seeded{color:var(--color-text-on-scrim)}.crewlet-avatar--tint-0{background:var(--color-avatar-tint-0)}.crewlet-avatar--tint-1{background:var(--color-avatar-tint-1)}.crewlet-avatar--tint-2{background:var(--color-avatar-tint-2)}.crewlet-avatar--tint-3{background:var(--color-avatar-tint-3)}.crewlet-avatar--tint-4{background:var(--color-avatar-tint-4)}.crewlet-avatar--tint-5{background:var(--color-avatar-tint-5)}.crewlet-avatar--tint-6{background:var(--color-avatar-tint-6)}.crewlet-avatar--tint-7{background:var(--color-avatar-tint-7)}.crewlet-avatar--tint-8{background:var(--color-avatar-tint-8)}.crewlet-avatar--tint-9{background:var(--color-avatar-tint-9)}.crewlet-avatar--character{border:1px solid transparent}.crewlet-avatar__character{display:block;flex:none;width:74%;height:74%}.crewlet-avatar--hue-purple{background:var(--color-node-purple-fill);border-color:var(--color-node-purple-line);color:var(--color-node-purple)}.crewlet-avatar--hue-cyan{background:var(--color-node-cyan-fill);border-color:var(--color-node-cyan-line);color:var(--color-node-cyan)}.crewlet-avatar--hue-green{background:var(--color-node-green-fill);border-color:var(--color-node-green-line);color:var(--color-node-green)}.crewlet-avatar--hue-amber{background:var(--color-node-amber-fill);border-color:var(--color-node-amber-line);color:var(--color-node-amber)}.crewlet-avatar--hue-rose{background:var(--color-node-rose-fill);border-color:var(--color-node-rose-line);color:var(--color-node-rose)}.crewlet-avatar--hue-blue{background:var(--color-node-blue-fill);border-color:var(--color-node-blue-line);color:var(--color-node-blue)}.crewlet-avatar--ring-brand{outline-style:solid;outline-width:1.5px;outline-offset:2px;outline-color:var(--color-brand-accent)}.crewlet-avatar-frame{--crewlet-avatar-status-size: max(10px, calc(var(--crewlet-avatar-size) * .42));--crewlet-avatar-status-overhang: 2px;--crewlet-avatar-status-gap: 1.5px;position:relative;display:inline-flex;flex:none;width:var(--crewlet-avatar-size);height:var(--crewlet-avatar-size);vertical-align:middle}.crewlet-avatar--notched{--crewlet-avatar-status-centre: calc( 100% + var(--crewlet-avatar-status-overhang) - var(--crewlet-avatar-status-size) / 2 );--crewlet-avatar-status-cut: calc(var(--crewlet-avatar-status-size) / 2 + var(--crewlet-avatar-status-gap));-webkit-mask-image:radial-gradient(circle at var(--crewlet-avatar-status-centre) var(--crewlet-avatar-status-centre),transparent var(--crewlet-avatar-status-cut),#000 calc(var(--crewlet-avatar-status-cut) + .5px));mask-image:radial-gradient(circle at var(--crewlet-avatar-status-centre) var(--crewlet-avatar-status-centre),transparent var(--crewlet-avatar-status-cut),#000 calc(var(--crewlet-avatar-status-cut) + .5px))}.crewlet-avatar__status{position:absolute;right:calc(var(--crewlet-avatar-status-overhang) * -1);bottom:calc(var(--crewlet-avatar-status-overhang) * -1);display:grid;place-items:center;width:var(--crewlet-avatar-status-size);height:var(--crewlet-avatar-status-size);border-radius:var(--radius-circle);outline:1px solid transparent;color:var(--color-text-inverse);pointer-events:none}.crewlet-avatar__status>svg{display:block;width:100%;height:100%}.crewlet-avatar__status--working{background:var(--color-feedback-info)}.crewlet-avatar__status--needs{background:var(--color-feedback-warning)}.crewlet-avatar__status--stopped{background:var(--color-feedback-danger)}.crewlet-avatar__status--mark{padding:1px;background:var(--color-surface-elevated);outline-color:var(--color-border-strong);outline-offset:-1px;color:var(--color-text-secondary)}.crewlet-avatar-stack{--crewlet-avatar-stack-ground: var(--color-surface-background);--crewlet-avatar-stack-size: 26px;display:inline-flex;flex:none;align-items:center;vertical-align:middle}.crewlet-avatar-stack>.crewlet-avatar-stack__member{box-shadow:0 0 0 2px var(--crewlet-avatar-stack-ground)}.crewlet-avatar-stack>.crewlet-avatar-stack__member+.crewlet-avatar-stack__member{margin-inline-start:-6px}.crewlet-avatar-stack>.crewlet-avatar-stack__more{display:inline-flex;flex:none;align-items:center;justify-content:center;box-sizing:border-box;min-width:var(--crewlet-avatar-stack-size);height:var(--crewlet-avatar-stack-size);padding-inline:var(--spacing-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-elevated);color:var(--color-text-secondary);font-family:var(--font-family-sans);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:var(--font-line-height-tight);white-space:nowrap;user-select:none}.crewlet-status-dot{display:inline-block;width:7px;height:7px;border-radius:var(--radius-circle);background:var(--color-text-tertiary);--crewlet-status-dot-halo: var(--color-surface-pressed);flex:none}.crewlet-status-dot--info{background:var(--color-feedback-info);--crewlet-status-dot-halo: var(--color-feedback-info-soft)}.crewlet-status-dot--success{background:var(--color-feedback-success);--crewlet-status-dot-halo: var(--color-feedback-success-soft)}.crewlet-status-dot--warning{background:var(--color-feedback-warning);--crewlet-status-dot-halo: var(--color-feedback-warning-soft)}.crewlet-status-dot--danger{background:var(--color-feedback-danger);--crewlet-status-dot-halo: var(--color-feedback-danger-soft)}.crewlet-status-dot--brand{background:var(--color-brand-accent);--crewlet-status-dot-halo: var(--color-brand-accent-soft)}:where(.crewlet-status-dot.is-pulsing){position:relative}.crewlet-status-dot.is-pulsing:after{content:"";position:absolute;inset:-2px;border-radius:var(--radius-circle);pointer-events:none;animation:crewlet-status-dot-pulse var(--motion-duration-breath) var(--motion-easing-in-out) infinite}@keyframes crewlet-status-dot-pulse{0%,to{box-shadow:0 0 0 0 var(--crewlet-status-dot-halo)}50%{box-shadow:0 0 0 3px var(--crewlet-status-dot-halo)}}.crewlet-status{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%}.crewlet-status__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(prefers-reduced-motion:reduce){.crewlet-status-dot.is-pulsing:after{animation:none}}.crewlet-tag{--crewlet-tag-height: calc(22px * var(--density, 1));--crewlet-tag-floor: 0px;--crewlet-tag-pad: calc(var(--spacing-2) + var(--spacing-1) / 4);--crewlet-tag-fill: var(--color-surface-elevated);--crewlet-tag-ink: var(--color-text-secondary);--crewlet-tag-line: var(--color-border-hover);--crewlet-tag-edge: transparent;display:inline-flex;align-items:center;gap:calc(var(--spacing-1) * 1.5);height:max(var(--crewlet-tag-height),var(--crewlet-tag-floor));padding:0 var(--crewlet-tag-pad);border:1px solid var(--crewlet-tag-edge);border-radius:var(--radius-pill);background:var(--crewlet-tag-fill);color:var(--crewlet-tag-ink);font-family:var(--font-family-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--font-letter-spacing-normal);line-height:1;white-space:nowrap;max-width:100%;vertical-align:middle;box-sizing:border-box}.crewlet-tag__label{overflow:hidden;text-overflow:ellipsis}.crewlet-tag__icon{display:inline-flex;align-items:center;flex:none}.crewlet-tag .crewlet-tag__dot{flex:none;background:currentColor}.crewlet-tag__count{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold);flex:none}.crewlet-tag--xs{--crewlet-tag-height: calc(18px * var(--density, 1));--crewlet-tag-pad: calc(var(--spacing-1) * 1.5);gap:var(--spacing-1);font-size:var(--font-size-2xs)}.crewlet-tag--sm{--crewlet-tag-height: calc(22px * var(--density, 1))}.crewlet-tag--md{--crewlet-tag-height: var(--size-control-sm)}.crewlet-tag--acts{--crewlet-tag-floor: max(24px, calc(24px * var(--density, 1)))}.crewlet-tag--monospace .crewlet-tag__label{font-family:var(--font-family-mono);font-size:var(--font-size-2xs)}.crewlet-tag--info{--crewlet-tag-fill: var(--color-feedback-info-soft);--crewlet-tag-ink: var(--color-feedback-info-ink);--crewlet-tag-line: var(--color-feedback-info-line)}.crewlet-tag--success{--crewlet-tag-fill: var(--color-feedback-success-soft);--crewlet-tag-ink: var(--color-feedback-success-ink);--crewlet-tag-line: var(--color-feedback-success-line)}.crewlet-tag--warning{--crewlet-tag-fill: var(--color-feedback-warning-soft);--crewlet-tag-ink: var(--color-feedback-warning-ink);--crewlet-tag-line: var(--color-feedback-warning-line)}.crewlet-tag--danger{--crewlet-tag-fill: var(--color-feedback-danger-soft);--crewlet-tag-ink: var(--color-feedback-danger-ink);--crewlet-tag-line: var(--color-feedback-danger-line)}.crewlet-tag--brand{--crewlet-tag-fill: var(--color-brand-accent-soft);--crewlet-tag-ink: var(--color-brand-accent-ink);--crewlet-tag-line: var(--color-brand-accent-soft-strong)}.crewlet-tag--hue-purple{--crewlet-tag-fill: var(--color-node-purple-fill);--crewlet-tag-ink: var(--color-node-purple-ink);--crewlet-tag-line: var(--color-node-purple-line)}.crewlet-tag--hue-cyan{--crewlet-tag-fill: var(--color-node-cyan-fill);--crewlet-tag-ink: var(--color-node-cyan-ink);--crewlet-tag-line: var(--color-node-cyan-line)}.crewlet-tag--hue-green{--crewlet-tag-fill: var(--color-node-green-fill);--crewlet-tag-ink: var(--color-node-green-ink);--crewlet-tag-line: var(--color-node-green-line)}.crewlet-tag--hue-amber{--crewlet-tag-fill: var(--color-node-amber-fill);--crewlet-tag-ink: var(--color-node-amber-ink);--crewlet-tag-line: var(--color-node-amber-line)}.crewlet-tag--hue-rose{--crewlet-tag-fill: var(--color-node-rose-fill);--crewlet-tag-ink: var(--color-node-rose-ink);--crewlet-tag-line: var(--color-node-rose-line)}.crewlet-tag--hue-blue{--crewlet-tag-fill: var(--color-node-blue-fill);--crewlet-tag-ink: var(--color-node-blue-ink);--crewlet-tag-line: var(--color-node-blue-line)}.crewlet-tag--outline{background:transparent;border-color:var(--crewlet-tag-line)}.crewlet-tag--neutral.crewlet-tag--soft{--crewlet-tag-edge: var(--color-border-strong);--crewlet-tag-line: var(--color-border-strong-hover)}.crewlet-tag--neutral.crewlet-tag--outline{border-color:var(--color-border-default);--crewlet-tag-ink: var(--color-text-tertiary)}.crewlet-tag--actionable{cursor:pointer;font-family:inherit;transition:border-color var(--motion-duration-fast) var(--motion-easing-default),box-shadow var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag--actionable:hover{border-color:var(--crewlet-tag-line)}.crewlet-tag--actionable[aria-pressed=true]{border-color:var(--crewlet-tag-ink);box-shadow:inset 0 0 0 1px var(--crewlet-tag-ink)}.crewlet-tag--actionable:focus-visible,.crewlet-tag__press:focus-visible,.crewlet-tag__remove:focus-visible{outline:2px solid var(--color-focus)}.crewlet-tag--actionable:focus-visible,.crewlet-tag__remove:focus-visible{outline-offset:-1px}.crewlet-tag__press:focus-visible{outline-offset:0}.crewlet-tag--split{padding:0;transition:border-color var(--motion-duration-fast) var(--motion-easing-default),box-shadow var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag--split .crewlet-tag__press{display:inline-flex;align-items:center;align-self:stretch;gap:inherit;min-width:0;padding:0 var(--crewlet-tag-pad);border:0;border-radius:var(--radius-pill) 0 0 var(--radius-pill);background:transparent;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;cursor:pointer}.crewlet-tag--split .crewlet-tag__remove{margin-right:0}.crewlet-tag--split:hover{border-color:var(--crewlet-tag-line)}.crewlet-tag--split.is-pressed{border-color:var(--crewlet-tag-ink);box-shadow:inset 0 0 0 1px var(--crewlet-tag-ink)}.crewlet-tag__remove{display:inline-flex;align-items:center;justify-content:center;align-self:stretch;min-width:24px;margin-block-start:-1px;margin-block-end:-1px;margin-right:calc(var(--crewlet-tag-pad) * -1);padding:0 var(--spacing-1);border:0;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:transparent;color:inherit;cursor:pointer;opacity:.7;transition:opacity var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-tag__remove:hover{opacity:1}.crewlet-tag--animate-in{animation:crewlet-tag-in var(--motion-duration-base) var(--motion-easing-emphasized)}@keyframes crewlet-tag-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.crewlet-tag--animate-in{animation:none}.crewlet-tag--actionable,.crewlet-tag--split,.crewlet-tag__remove{transition:none}}.crewlet-cursor-flag{display:inline-flex;align-items:center;gap:var(--spacing-1);box-sizing:border-box;max-width:16em;padding:0 calc(var(--spacing-1) * 1.5);border-radius:var(--radius-pill);background:var(--crewlet-presence-hue);box-shadow:var(--shadow-cursor);color:var(--color-presence-flag-text);font-family:var(--font-family-sans);font-size:var(--font-size-2xs);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-normal);white-space:nowrap;pointer-events:none;user-select:none}.crewlet-cursor-flag--agent{border-radius:var(--radius-xs)}.crewlet-cursor-flag__name{overflow:hidden;text-overflow:ellipsis}.crewlet-cursor-flag__glyph{flex:none}.crewlet-cursor-flag--top-end,.crewlet-cursor-flag--bottom-end{position:absolute;inset-inline-end:0;z-index:var(--z-index-presence)}.crewlet-cursor-flag--top-end{bottom:100%}.crewlet-cursor-flag--bottom-end{top:100%}@media(forced-colors:active){.crewlet-cursor-flag{border:1px solid CanvasText;background:Canvas;color:CanvasText}}.crewlet-layer-host{position:absolute;inset:0;pointer-events:none}.crewlet-layer-host>*{pointer-events:auto}.crewlet-tooltip{position:fixed;max-width:260px;padding:var(--spacing-1) var(--spacing-2);background:var(--color-surface-subtle);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--font-size-xs);line-height:var(--font-line-height-snug);overflow-wrap:break-word;animation:crewlet-tooltip-in var(--motion-duration-base) var(--motion-easing-emphasized)}.crewlet-tooltip--in-host{position:absolute}@keyframes crewlet-tooltip-in{0%{opacity:0;transform:translateY(var(--spacing-1))}}@media(prefers-reduced-motion:reduce){.crewlet-tooltip{animation:none}}.crewlet-change-mark{position:absolute;top:0;inset-inline-end:0;width:0;height:0;border-top:var(--spacing-2) solid var(--color-change-mark);border-inline-start:var(--spacing-2) solid transparent;pointer-events:auto}@media(forced-colors:active){.crewlet-change-mark{border-top-color:CanvasText}}.crewlet-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-family-sans);font-weight:var(--font-weight-medium);letter-spacing:var(--font-letter-spacing-normal);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-easing-default),color var(--motion-duration-fast) var(--motion-easing-default),border-color var(--motion-duration-fast) var(--motion-easing-default)}.crewlet-btn,.crewlet-btn:hover{text-decoration:none}.crewlet-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.crewlet-btn--secondary:focus-visible,.crewlet-btn--outline:focus-visible,.crewlet-btn--danger:focus-visible,.crewlet-btn[aria-pressed=true]:focus-visible{outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-btn:disabled,.crewlet-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.crewlet-btn:disabled{pointer-events:none}.crewlet-btn--small{min-height:var(--size-control-sm);padding:0 var(--spacing-2);font-size:var(--font-size-xs)}.crewlet-btn--medium{min-height:var(--size-control-md);padding:0 var(--spacing-3);font-size:var(--font-size-compact)}.crewlet-btn--large{min-height:var(--size-control-lg);padding:0 var(--spacing-4);font-size:var(--font-size-sm)}.crewlet-btn--square{border-radius:var(--radius-md)}.crewlet-btn--pill{border-radius:var(--radius-pill)}.crewlet-btn--pill.crewlet-btn--small{padding:0 var(--spacing-3)}.crewlet-btn--pill.crewlet-btn--medium{padding:0 var(--spacing-4)}.crewlet-btn--pill.crewlet-btn--large{padding:0 var(--spacing-5)}.crewlet-btn--block{width:100%}.crewlet-btn--primary,.crewlet-btn--accent{background:var(--color-brand-accent);color:var(--color-text-on-accent);border-color:transparent}.crewlet-btn--primary:hover:not(:disabled):not([aria-disabled=true]),.crewlet-btn--accent:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-hover);border-color:transparent}.crewlet-btn--primary:active:not(:disabled):not([aria-disabled=true]),.crewlet-btn--accent:active:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-active);border-color:transparent}.crewlet-btn--secondary{background:var(--color-surface-subtle);color:var(--color-text-primary);border-color:var(--color-border-strong)}.crewlet-btn--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-elevated);border-color:var(--color-border-strong-hover)}.crewlet-btn--secondary:active:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-pressed)}.crewlet-btn--outline{background:transparent;color:var(--color-brand-accent-ink);border-color:var(--color-brand-accent)}.crewlet-btn--outline:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-accent-soft)}.crewlet-btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.crewlet-btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-hover);color:var(--color-text-primary)}.crewlet-btn--ghost:active:not(:disabled):not([aria-disabled=true]){background:var(--color-surface-pressed)}.crewlet-btn--danger{background:var(--color-surface-subtle);color:var(--color-feedback-danger-ink);border-color:var(--color-border-strong)}.crewlet-btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-feedback-danger-soft);border-color:var(--color-feedback-danger)}.crewlet-btn--danger:active:not(:disabled):not([aria-disabled=true]){background:var(--color-feedback-danger-soft);border-color:var(--color-feedback-danger-hover)}.crewlet-btn[aria-pressed=true]{background:var(--color-brand-accent-soft);color:var(--color-brand-accent-ink);border-color:var(--color-brand-accent-soft-strong)}.crewlet-btn__icon,.crewlet-btn__label{display:inline-flex;align-items:center}.crewlet-btn__icon .crewlet-glyph{width:1em;height:1em}.crewlet-btn__spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-circle);opacity:.7;animation:crewlet-btn-spin var(--motion-duration-slow) linear infinite;flex:none}@keyframes crewlet-btn-spin{to{transform:rotate(360deg)}}.crewlet-btn--loading{cursor:progress}@media(prefers-reduced-motion:reduce){.crewlet-btn{transition:none}.crewlet-btn__spinner{animation:none}}.crewlet-sheet-grid{--crewlet-sheet-row-height: var(--size-sheet-row);position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;color:var(--color-text-primary);font-family:var(--font-family-sans);font-size:var(--font-size-sm)}.crewlet-sheet-grid__probe{position:absolute;width:0;height:var(--size-sheet-row);visibility:hidden;pointer-events:none}.crewlet-sheet-grid__scroller{position:relative;flex:1 1 auto;min-height:0;max-width:100%;overflow:auto;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-background)}.crewlet-sheet-grid__grid{position:relative;min-width:100%}.crewlet-sheet-grid__row{display:grid;grid-template-columns:var(--crewlet-sheet-columns);height:var(--crewlet-sheet-row-height)}.crewlet-sheet-grid__head{position:sticky;top:0;z-index:var(--z-index-sticky)}.crewlet-sheet-grid__body{position:relative}.crewlet-sheet-grid__body>.crewlet-sheet-grid__row{position:absolute;right:0;left:0}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__header,.crewlet-sheet-grid__rownum,.crewlet-sheet-grid__cell{position:relative;display:flex;align-items:center;box-sizing:border-box;min-width:0;border-right:1px solid var(--color-border-default);border-bottom:1px solid var(--color-border-default);background:var(--color-surface-background)}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__header{background:var(--color-surface-subtle);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.crewlet-sheet-grid__corner,.crewlet-sheet-grid__rownum{position:sticky;inset-inline-start:0;z-index:var(--z-index-raised);justify-content:center}.crewlet-sheet-grid__corner{z-index:var(--z-index-sticky)}.crewlet-sheet-grid__header{gap:var(--spacing-1);padding:0 var(--spacing-2);cursor:default;user-select:none}.crewlet-sheet-grid__header-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-grid__sort{display:inline-flex;flex:none;color:var(--color-text-tertiary)}.crewlet-sheet-grid__header-presence{display:inline-flex;flex:none;gap:var(--spacing-1);margin-inline-start:auto}.crewlet-sheet-grid .crewlet-sheet-grid__header-badge{box-shadow:0 0 0 2px var(--crewlet-presence-hue)}.crewlet-sheet-grid__rownum{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.crewlet-sheet-grid__rownum--present:before{position:absolute;top:0;bottom:0;inset-inline-start:0;width:3px;background:var(--crewlet-presence-hue);content:""}.crewlet-sheet-grid__cell{padding:0 var(--spacing-2);outline:none}.crewlet-sheet-grid__cell--frozen,.crewlet-sheet-grid__header.crewlet-sheet-grid__cell--frozen{position:sticky;z-index:var(--z-index-raised)}.crewlet-sheet-grid__header.crewlet-sheet-grid__cell--frozen{z-index:var(--z-index-sticky)}.crewlet-sheet-grid__cell--number,.crewlet-sheet-grid__cell--rating{justify-content:flex-end}.crewlet-sheet-grid__cell--checkbox{justify-content:center}.crewlet-sheet-grid__cell--selected{background:var(--color-brand-accent-soft)}.crewlet-sheet-grid__cell:focus-visible,.crewlet-sheet-grid__header:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-grid__cell--editing{z-index:var(--z-index-presence);overflow:visible}.crewlet-sheet-grid__value{display:flex;align-items:center;min-width:0;max-width:100%;overflow:hidden}.crewlet-sheet-grid__cell--editing>.crewlet-sheet-grid__value{visibility:hidden}.crewlet-sheet-grid__cell--pending>.crewlet-sheet-grid__value{text-decoration:underline dashed var(--color-text-tertiary);text-underline-offset:3px}.crewlet-sheet-grid__cell--pending>.crewlet-sheet-grid__value:after{position:absolute;right:var(--spacing-1);bottom:2px;left:var(--spacing-1);border-bottom:1px dashed var(--color-text-tertiary);content:""}.crewlet-sheet-grid__refused{display:inline-flex;flex:none;margin-inline-start:auto;padding-inline-start:var(--spacing-1);color:var(--color-feedback-danger-ink)}.crewlet-sheet-grid__message{position:absolute;top:100%;inset-inline-start:0;z-index:var(--z-index-presence);box-sizing:border-box;width:max-content;max-width:20rem;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--color-feedback-danger-line);border-radius:var(--radius-sm);background:var(--color-surface-elevated);box-shadow:var(--shadow-md);color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs);white-space:normal}.crewlet-sheet-grid__history{position:absolute;top:50%;inset-inline-end:var(--spacing-1);display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-1);border:0;border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text-secondary);transform:translateY(-50%);cursor:pointer}.crewlet-sheet-grid__history:hover{color:var(--color-text-primary)}.crewlet-sheet-grid__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-2);padding:var(--spacing-2) 0;color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.crewlet-sheet-grid__sync{display:inline-flex;align-items:center;gap:var(--spacing-2);margin-inline-start:auto}.crewlet-sheet-grid__sync--failed{color:var(--color-feedback-danger-ink)}.crewlet-sheet-cell__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-cell__number{font-variant-numeric:tabular-nums}.crewlet-sheet-cell__muted{color:var(--color-text-tertiary)}.crewlet-sheet-cell__chips{display:inline-flex;gap:var(--spacing-1);min-width:0;overflow:hidden}.crewlet-sheet-cell__person{display:inline-flex;align-items:center;gap:var(--spacing-1);min-width:0}.crewlet-sheet-cell__link{overflow:hidden;color:var(--color-text-link-quiet);text-overflow:ellipsis;white-space:nowrap}.crewlet-sheet-cell__link:hover{color:var(--color-brand-accent-ink)}.crewlet-sheet-cell__checkbox{display:inline-flex;align-items:center}.crewlet-sheet-cell__check{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--spacing-4);height:var(--spacing-4);border:1px solid var(--color-border-control);border-radius:var(--radius-xs);background:var(--color-surface-background);color:var(--color-text-on-accent)}.crewlet-sheet-cell__check--on{border-color:var(--color-brand-accent);background:var(--color-brand-accent)}.crewlet-sheet-cell__rating,.crewlet-sheet-cell__stars{display:inline-flex;align-items:center}.crewlet-sheet-cell__star{color:var(--color-text-tertiary)}.crewlet-sheet-cell__star--on{color:var(--color-feedback-warning)}.crewlet-sheet-cell{position:relative;display:inline-flex;flex-direction:column;gap:var(--spacing-1);min-width:0}.crewlet-sheet-cell__face{display:inline-flex;align-items:center;box-sizing:border-box;min-height:var(--size-control-md);padding:0 var(--spacing-2);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-surface-background);color:inherit;font:inherit;text-align:start;cursor:pointer}.crewlet-sheet-cell__face[aria-disabled=true]{cursor:default}.crewlet-sheet-cell__face:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-cell--pending .crewlet-sheet-cell__face{border-style:dashed}.crewlet-sheet-cell__refusal{display:inline-flex;align-items:center;gap:var(--spacing-1);color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs)}.crewlet-sheet-editor{position:absolute;inset:0;z-index:var(--z-index-presence)}.crewlet-sheet-cell .crewlet-sheet-editor{position:relative;inset:auto}.crewlet-sheet-editor__input{box-sizing:border-box;width:100%;height:100%;min-height:var(--size-control-md);padding:0 var(--spacing-2);border:0;border-radius:0;background:var(--color-surface-elevated);box-shadow:inset 0 0 0 2px var(--color-focus);color:var(--color-text-primary);font:inherit}.crewlet-sheet-editor__input:focus-visible,.crewlet-sheet-editor__filter:focus-visible,.crewlet-sheet-editor__textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:var(--size-focus-ring-inset-offset)}.crewlet-sheet-editor__panel{position:absolute;top:100%;inset-inline-start:0;z-index:var(--z-index-presence);display:flex;flex-direction:column;gap:var(--spacing-2);box-sizing:border-box;min-width:100%;width:max-content;max-width:min(24rem,90vw);padding:var(--spacing-2);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-lg)}.crewlet-sheet-editor--above .crewlet-sheet-editor__panel{top:auto;bottom:100%}.crewlet-sheet-editor--list .crewlet-sheet-editor__panel,.crewlet-sheet-editor--long .crewlet-sheet-editor__panel{top:0;min-width:max(100%,14rem)}.crewlet-sheet-editor--list.crewlet-sheet-editor--above .crewlet-sheet-editor__panel,.crewlet-sheet-editor--long.crewlet-sheet-editor--above .crewlet-sheet-editor__panel{top:auto;bottom:0}.crewlet-sheet-editor__filter,.crewlet-sheet-editor__textarea{box-sizing:border-box;width:100%;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-surface-background);color:var(--color-text-primary);font:inherit}.crewlet-sheet-editor__textarea{min-width:20rem;max-width:100%;resize:vertical}.crewlet-sheet-editor__list{display:flex;flex-direction:column;max-height:16rem;margin:0;padding:0;overflow-y:auto;list-style:none}.crewlet-sheet-editor__option{display:flex;align-items:center;gap:var(--spacing-2);min-height:var(--size-row-sm);padding:0 var(--spacing-2);border-radius:var(--radius-sm);cursor:pointer}.crewlet-sheet-editor__option--highlight{background:var(--color-surface-hover)}.crewlet-sheet-editor__mark{display:inline-flex;flex:none;width:var(--spacing-3);color:var(--color-brand-accent-ink)}.crewlet-sheet-editor__empty{padding:var(--spacing-2);color:var(--color-text-tertiary)}.crewlet-sheet-editor__error{display:flex;align-items:center;gap:var(--spacing-1);margin:0;color:var(--color-feedback-danger-ink);font-size:var(--font-size-xs)}.crewlet-sheet-editor__conflict{display:flex;flex-direction:column;gap:var(--spacing-2);padding-top:var(--spacing-2);border-top:1px solid var(--color-border-default)}.crewlet-sheet-editor__conflict-text{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-xs)}.crewlet-sheet-editor__conflict-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}@media(width<640px){.crewlet-sheet-grid .crewlet-sheet-editor--list .crewlet-sheet-editor__panel,.crewlet-sheet-grid .crewlet-sheet-editor--long .crewlet-sheet-editor__panel{position:fixed;inset:auto 0 0;width:auto;max-width:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.crewlet-sheet-editor__textarea{min-width:0}}@media(forced-colors:active){.crewlet-sheet-grid__cell--selected{background:Highlight;color:HighlightText}.crewlet-sheet-grid__rownum--present:before{background:Highlight}}
|
package/dist/kit.js
CHANGED
|
@@ -9,4 +9,4 @@ Error generating stack: `+n.message+`
|
|
|
9
9
|
`).replace($4,"")}function W2(e,t){return t=ep(t),ep(e)===t}function oe(e,t,l,n,a,i){switch(l){case"children":if(typeof n=="string")t==="body"||t==="textarea"&&n===""||Pa(e,n);else if(typeof n=="number"||typeof n=="bigint")t!=="body"&&Pa(e,""+n);else return;break;case"className":So(e,"class",n);break;case"tabIndex":So(e,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":So(e,l,n);break;case"style":Ip(e,n,i);return;case"data":if(t!=="object"){So(e,"data",n);break}case"src":case"href":if(n===""&&(t!=="a"||l!=="href")){e.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=Vo(n),e.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){e.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof i=="function"&&(l==="formAction"?(t!=="input"&&oe(e,t,"name",a.name,a,null),oe(e,t,"formEncType",a.formEncType,a,null),oe(e,t,"formMethod",a.formMethod,a,null),oe(e,t,"formTarget",a.formTarget,a,null)):(oe(e,t,"encType",a.encType,a,null),oe(e,t,"method",a.method,a,null),oe(e,t,"target",a.target,a,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=Vo(n),e.setAttribute(l,n);break;case"onClick":n!=null&&(e.onclick=gl);return;case"onScroll":n!=null&&J("scroll",e);return;case"onScrollEnd":n!=null&&J("scrollend",e);return;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(w(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(w(60));i?.__html!==l&&(e.innerHTML=l)}}break;case"multiple":e.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":e.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){e.removeAttribute("xlink:href");break}l=Vo(n),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,n):e.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,""):e.removeAttribute(l);break;case"capture":case"download":n===!0?e.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,n):e.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?e.setAttribute(l,n):e.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?e.removeAttribute(l):e.setAttribute(l,n);break;case"popover":J("beforetoggle",e),J("toggle",e),Bo(e,"popover",n);break;case"xlinkActuate":Nl(e,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Nl(e,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Nl(e,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Nl(e,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Nl(e,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Nl(e,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Nl(e,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Nl(e,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Nl(e,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":Bo(e,"is",n);break;case"innerText":case"textContent":return;default:if(!(2<l.length)||l[0]!=="o"&&l[0]!=="O"||l[1]!=="n"&&l[1]!=="N")l=vb.get(l)||l,Bo(e,l,n);else return}W=!0}function wf(e,t,l,n,a,i){switch(l){case"style":Ip(e,n,i);return;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(w(61));if(l=n.__html,l!=null){if(a.children!=null)throw Error(w(60));i?.__html!==l&&(e.innerHTML=l)}}break;case"children":if(typeof n=="string")Pa(e,n);else if(typeof n=="number"||typeof n=="bigint")Pa(e,""+n);else return;break;case"onScroll":n!=null&&J("scroll",e);return;case"onScrollEnd":n!=null&&J("scrollend",e);return;case"onClick":n!=null&&(e.onclick=gl);return;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":return;case"innerText":case"textContent":return;default:if(!jp.hasOwnProperty(l))e:{if(l[0]==="o"&&l[1]==="n"&&(a=l.endsWith("Capture"),i=l.slice(2,a?l.length-7:void 0),t=e[yt]||null,t=t!=null?t[l]:null,typeof t=="function"&&e.removeEventListener(i,t,a),typeof n=="function")){typeof t!="function"&&t!==null&&(l in e?e[l]=null:e.hasAttribute(l)&&e.removeAttribute(l)),e.addEventListener(i,n,a);break e}W=!0,l in e?e[l]=n:n===!0?e.setAttribute(l,""):Bo(e,l,n)}return}W=!0}function $e(e,t,l){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":J("error",e),J("load",e);var n=!1,a=!1,i;for(i in l)if(l.hasOwnProperty(i)){var r=l[i];if(r!=null)switch(i){case"src":n=!0;break;case"srcSet":a=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(w(137,t));default:oe(e,t,i,r,l,null)}}a&&oe(e,t,"srcSet",l.srcSet,l,null),n&&oe(e,t,"src",l.src,l,null);return;case"input":J("invalid",e);var o=i=r=a=null,u=null,c=null;for(n in l)if(l.hasOwnProperty(n)){var h=l[n];if(h!=null)switch(n){case"name":a=h;break;case"type":r=h;break;case"checked":u=h;break;case"defaultChecked":c=h;break;case"value":i=h;break;case"defaultValue":o=h;break;case"children":case"dangerouslySetInnerHTML":if(h!=null)throw Error(w(137,t));break;default:oe(e,t,n,h,l,null)}}Qp(e,i,o,u,c,r,a,!1);return;case"select":J("invalid",e),n=r=i=null;for(a in l)if(l.hasOwnProperty(a)&&(o=l[a],o!=null))switch(a){case"value":i=o;break;case"defaultValue":r=o;break;case"multiple":n=o;default:oe(e,t,a,o,l,null)}t=i,l=r,e.multiple=!!n,t!=null?Ya(e,!!n,t,!1):l!=null&&Ya(e,!!n,l,!0);return;case"textarea":J("invalid",e),i=a=n=null;for(r in l)if(l.hasOwnProperty(r)&&(o=l[r],o!=null))switch(r){case"value":n=o;break;case"defaultValue":a=o;break;case"children":i=o;break;case"dangerouslySetInnerHTML":if(o!=null)throw Error(w(91));break;default:oe(e,t,r,o,l,null)}Jp(e,n,a,i);return;case"option":for(u in l)l.hasOwnProperty(u)&&(n=l[u],n!=null)&&(u==="selected"?e.selected=n&&typeof n!="function"&&typeof n!="symbol":oe(e,t,u,n,l,null));return;case"dialog":J("beforetoggle",e),J("toggle",e),J("cancel",e),J("close",e);break;case"iframe":case"object":J("load",e);break;case"video":case"audio":for(n=0;n<wr.length;n++)J(wr[n],e);break;case"image":J("error",e),J("load",e);break;case"details":J("toggle",e);break;case"embed":case"source":case"link":J("error",e),J("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(c in l)if(l.hasOwnProperty(c)&&(n=l[c],n!=null))switch(c){case"children":case"dangerouslySetInnerHTML":throw Error(w(137,t));default:oe(e,t,c,n,l,null)}return;default:if(Uf(t)){for(h in l)l.hasOwnProperty(h)&&(n=l[h],n!==void 0&&wf(e,t,h,n,l,void 0));return}}for(o in l)l.hasOwnProperty(o)&&(n=l[o],n!=null&&oe(e,t,o,n,l,null))}var F4={};function W4(e,t,l,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var a=null,i=null,r=null,o=null,u=null,c=null,h=null;for(m in l){var g=l[m];if(l.hasOwnProperty(m)&&g!=null)switch(m){case"checked":break;case"value":break;case"defaultValue":u=g;default:n.hasOwnProperty(m)||oe(e,t,m,null,n,g)}}for(var d in n){var m=n[d];if(g=l[d],n.hasOwnProperty(d)&&(m!=null||g!=null))switch(d){case"type":m!==g&&(W=!0),i=m;break;case"name":m!==g&&(W=!0),a=m;break;case"checked":m!==g&&(W=!0),c=m;break;case"defaultChecked":m!==g&&(W=!0),h=m;break;case"value":m!==g&&(W=!0),r=m;break;case"defaultValue":m!==g&&(W=!0),o=m;break;case"children":case"dangerouslySetInnerHTML":if(m!=null)throw Error(w(137,t));break;default:m!==g&&oe(e,t,d,m,n,g)}}Cs(e,r,o,u,c,h,i,a);return;case"select":m=r=o=d=null;for(i in l)if(u=l[i],l.hasOwnProperty(i)&&u!=null)switch(i){case"value":break;case"multiple":m=u;default:n.hasOwnProperty(i)||oe(e,t,i,null,n,u)}for(a in n)if(i=n[a],u=l[a],n.hasOwnProperty(a)&&(i!=null||u!=null))switch(a){case"value":i!==u&&(W=!0),d=i;break;case"defaultValue":i!==u&&(W=!0),o=i;break;case"multiple":i!==u&&(W=!0),r=i;default:i!==u&&oe(e,t,a,i,n,u)}t=o,l=r,n=m,d!=null?Ya(e,!!l,d,!1):!!n!=!!l&&(t!=null?Ya(e,!!l,t,!0):Ya(e,!!l,l?[]:"",!1));return;case"textarea":m=d=null;for(o in l)if(a=l[o],l.hasOwnProperty(o)&&a!=null&&!n.hasOwnProperty(o))switch(o){case"value":break;case"children":break;default:oe(e,t,o,null,n,a)}for(r in n)if(a=n[r],i=l[r],n.hasOwnProperty(r)&&(a!=null||i!=null))switch(r){case"value":a!==i&&(W=!0),d=a;break;case"defaultValue":a!==i&&(W=!0),m=a;break;case"children":break;case"dangerouslySetInnerHTML":if(a!=null)throw Error(w(91));break;default:a!==i&&oe(e,t,r,a,n,i)}Zp(e,d,m);return;case"option":for(var b in l)d=l[b],l.hasOwnProperty(b)&&d!=null&&!n.hasOwnProperty(b)&&(b==="selected"?e.selected=!1:oe(e,t,b,null,n,d));for(u in n)d=n[u],m=l[u],n.hasOwnProperty(u)&&d!==m&&(d!=null||m!=null)&&(u==="selected"?(d!==m&&(W=!0),e.selected=d&&typeof d!="function"&&typeof d!="symbol"):oe(e,t,u,d,n,m));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var x in l)d=l[x],l.hasOwnProperty(x)&&d!=null&&!n.hasOwnProperty(x)&&oe(e,t,x,null,n,d);for(c in n)if(d=n[c],m=l[c],n.hasOwnProperty(c)&&d!==m&&(d!=null||m!=null))switch(c){case"children":case"dangerouslySetInnerHTML":if(d!=null)throw Error(w(137,t));break;default:oe(e,t,c,d,n,m)}return;default:if(Uf(t)){for(var N in l)d=l[N],l.hasOwnProperty(N)&&d!==void 0&&!n.hasOwnProperty(N)&&wf(e,t,N,void 0,n,d);for(h in n)d=n[h],m=l[h],!n.hasOwnProperty(h)||d===m||d===void 0&&m===void 0||wf(e,t,h,d,n,m);return}}for(var f in l)d=l[f],l.hasOwnProperty(f)&&d!=null&&!n.hasOwnProperty(f)&&oe(e,t,f,null,n,d);for(g in n)d=n[g],m=l[g],!n.hasOwnProperty(g)||d===m||d==null&&m==null||oe(e,t,g,d,n,m)}function tp(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function P4(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,l=performance.getEntriesByType("resource"),n=0;n<l.length;n++){var a=l[n],i=a.transferSize,r=a.initiatorType,o=a.duration;if(i&&o&&tp(r)){for(r=0,o=a.responseEnd,n+=1;n<l.length;n++){var u=l[n],c=u.startTime;if(c>o)break;var h=u.transferSize,g=u.initiatorType;h&&tp(g)&&(u=u.responseEnd,r+=h*(u<o?1:(o-c)/(u-c)))}if(--n,t+=8*(i+r)/(a.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var xf=null,Sf=null;function Sr(e){return e.nodeType===9?e:e.ownerDocument}function lp(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function P2(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function eg(e,t,l,n){return l=Sr(l).createElement(e),l[Qe]=n,l[yt]=t,$e(l,e,t),Ye(l),l}function _f(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var gs=null;function ew(){var e=window.event;return e&&e.type==="popstate"?e===gs?!1:(gs=e,!0):(gs=null,!1)}var Sd=typeof setTimeout=="function"?setTimeout:void 0,tw=typeof clearTimeout=="function"?clearTimeout:void 0,np=typeof Promise=="function"?Promise:void 0,ap=typeof requestAnimationFrame=="function"?requestAnimationFrame:Sd,lw=typeof queueMicrotask=="function"?queueMicrotask:typeof np<"u"?function(e){return np.resolve(null).then(e).catch(nw)}:Sd;function nw(e){setTimeout(function(){throw e})}function zn(e){return e==="head"}function ip(e,t){var l=t,n=0;do{var a=l.nextSibling;if(e.removeChild(l),a&&a.nodeType===8)if(l=a.data,l==="/$"||l==="/&"){if(n===0){e.removeChild(a),ci(t);return}n--}else if(l==="$"||l==="$?"||l==="$~"||l==="$!"||l==="&")n++;else if(l==="html")ys(e.ownerDocument.documentElement);else if(l==="head"){l=e.ownerDocument.head,ys(l);for(var i=l.firstChild;i;){var r=i.nextSibling,o=i.nodeName;i[Cr]||o==="SCRIPT"||o==="STYLE"||o==="LINK"&&i.rel.toLowerCase()==="stylesheet"||l.removeChild(i),i=r}}else l==="body"&&ys(e.ownerDocument.body);l=a}while(l);ci(t)}function rp(e,t){var l=e;e=0;do{var n=l.nextSibling;if(l.nodeType===1?t?(l._stashedDisplay=l.style.display,l.style.display="none"):(l.style.display=l._stashedDisplay||"",l.getAttribute("style")===""&&l.removeAttribute("style")):l.nodeType===3&&(t?(l._stashedText=l.nodeValue,l.nodeValue=""):l.nodeValue=l._stashedText||""),n&&n.nodeType===8)if(l=n.data,l==="/$"){if(e===0)break;e--}else l!=="$"&&l!=="$?"&&l!=="$~"&&l!=="$!"||e++;l=n}while(l)}function tg(e,t,l){if(t=CSS.escape(t)!==t?"r-"+btoa(t).replace(/=/g,""):t,e.style.viewTransitionName=t,l!=null&&(e.style.viewTransitionClass=l),l=getComputedStyle(e),l.display==="inline"){if(t=e.getClientRects(),t.length===1)var n=1;else for(var a=n=0;a<t.length;a++){var i=t[a];0<i.width&&0<i.height&&n++}n===1&&(e=e.style,e.display=t.length===1?"inline-block":"block",e.marginTop="-"+l.paddingTop,e.marginBottom="-"+l.paddingBottom)}}function lg(e,t){e=e.style,t=t.style;var l=t!=null?t.hasOwnProperty("viewTransitionName")?t.viewTransitionName:t.hasOwnProperty("view-transition-name")?t["view-transition-name"]:null:null;e.viewTransitionName=l==null||typeof l=="boolean"?"":(""+l).trim(),l=t!=null?t.hasOwnProperty("viewTransitionClass")?t.viewTransitionClass:t.hasOwnProperty("view-transition-class")?t["view-transition-class"]:null:null,e.viewTransitionClass=l==null||typeof l=="boolean"?"":(""+l).trim(),e.display==="inline-block"&&(t==null?e.display=e.margin="":(l=t.display,e.display=l==null||typeof l=="boolean"?"":l,l=t.margin,l!=null?e.margin=l:(l=t.hasOwnProperty("marginTop")?t.marginTop:t["margin-top"],e.marginTop=l==null||typeof l=="boolean"?"":l,t=t.hasOwnProperty("marginBottom")?t.marginBottom:t["margin-bottom"],e.marginBottom=t==null||typeof t=="boolean"?"":t)))}function ng(e,t,l){return l=l.ownerDocument.defaultView,{rect:e,abs:t.position==="absolute"||t.position==="fixed",clip:t.clipPath!=="none"||t.overflow!=="visible"||t.filter!=="none"||t.mask!=="none"||t.mask!=="none"||t.borderRadius!=="0px",view:0<=e.bottom&&0<=e.right&&e.top<=l.innerHeight&&e.left<=l.innerWidth}}function Ef(e){var t=e.getBoundingClientRect(),l=getComputedStyle(e);return ng(t,l,e)}function aw(e){var t=e.getBoundingClientRect();t=new DOMRect(t.x+2e4,t.y+2e4,t.width,t.height);var l=getComputedStyle(e);return ng(t,l,e)}function iw(e){return e.documentElement.clientHeight}function rw(e){this.addEventListener("load",e),this.addEventListener("error",e)}function ow(e,t,l,n,a,i,r,o,u){var c=t.nodeType===9?t:t.ownerDocument;try{var h=c.startViewTransition({update:function(){var d=c.defaultView,m=d.navigation&&d.navigation.transition,b=c.fonts.status;n();var x=[];if(b==="loaded"&&(iw(c),c.fonts.status==="loading"&&x.push(c.fonts.ready)),b=x.length,e!==null)for(var N=e.suspenseyImages,f=0,s=0;s<N.length;s++){var p=N[s];if(!p.complete){var y=p.getBoundingClientRect();if(0<y.bottom&&0<y.right&&y.top<d.innerHeight&&y.left<d.innerWidth){if(f+=mg(p),f>tu){x.length=b;break}p=new Promise(rw.bind(p)),x.push(p)}}}if(0<x.length)return d=Promise.race([Promise.all(x),new Promise(function(M){return setTimeout(M,500)})]).then(a,a),(m?Promise.allSettled([m.finished,d]):d).then(i,i);if(a(),m)return m.finished.then(i,i);i()},types:l});c.__reactViewTransition=h;var g=[];return h.ready.then(function(){for(var d=c.documentElement.getAnimations({subtree:!0}),m=0;m<d.length;m++){var b=d[m],x=b.effect,N=x.pseudoElement;if(N!=null&&N.startsWith("::view-transition")){g.push(b),b=x.getKeyframes();for(var f=N=void 0,s=!0,p=0;p<b.length;p++){var y=b[p],M=y.width;if(N===void 0)N=M;else if(N!==M){s=!1;break}if(M=y.height,f===void 0)f=M;else if(f!==M){s=!1;break}delete y.width,delete y.height,y.transform==="none"&&delete y.transform}s&&N!==void 0&&f!==void 0&&(x.setKeyframes(b),s=getComputedStyle(x.target,x.pseudoElement),s.width!==N||s.height!==f)&&(s=b[0],s.width=N,s.height=f,s=b[b.length-1],s.width=N,s.height=f,x.setKeyframes(b))}}r()},function(d){c.__reactViewTransition===h&&(c.__reactViewTransition=null);try{typeof d=="object"&&d!==null&&d.name==="InvalidStateError"&&(d.message==="View transition was skipped because document visibility state is hidden."||d.message==="Skipping view transition because document visibility state has become hidden."||d.message==="Skipping view transition because viewport size changed."||d.message==="Transition was aborted because of invalid state")&&(d=null),d!==null&&u(d)}finally{n(),a(),r()}}),h.finished.finally(function(){for(var d=0;d<g.length;d++)g[d].cancel();c.__reactViewTransition===h&&(c.__reactViewTransition=null),o()}),h}catch{return n(),a(),r(),null}}function Qn(e,t){this._scope=document.documentElement,this._selector="::view-transition-"+e+"("+t+")"}Qn.prototype.animate=function(e,t){return t=typeof t=="number"?{duration:t}:he({},t),t.pseudoElement=this._selector,this._scope.animate(e,t)};Qn.prototype.getAnimations=function(){for(var e=this._scope,t=this._selector,l=e.getAnimations({subtree:!0}),n=[],a=0;a<l.length;a++){var i=l[a].effect;i!==null&&i.target===e&&i.pseudoElement===t&&n.push(l[a])}return n};Qn.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function ag(e){return{name:e,group:new Qn("group",e),imagePair:new Qn("image-pair",e),old:new Qn("old",e),new:new Qn("new",e)}}function Gt(e){this._fragmentFiber=e,this._observers=this._eventListeners=null}Gt.prototype.addEventListener=function(e,t,l){var n=null,a=null;if(!(l!=null&&typeof l!="boolean"&&(n=l.signal||null,n!==null&&n.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var i=this._eventListeners;if(ig(i,e,t,l)===-1){var r=this,o=t;l!=null&&typeof l!="boolean"&&l.once===!0&&(o=function(u){r.removeEventListener(e,t,l),typeof t=="function"?t.call(this,u):t.handleEvent(u)}),n!==null&&(a=r.removeEventListener.bind(r,e,t,l),n.addEventListener("abort",a,{once:!0}),a=n.removeEventListener.bind(n,"abort",a)),n=ii(l),i.push({type:e,listener:t,optionsOrUseCapture:l,attachedListener:o,cleanup:a}),vt(this._fragmentFiber.child,!1,uw,e,o,n)}this._eventListeners=i}};function uw(e,t,l,n){return Ue(e).addEventListener(t,l,n),!1}Gt.prototype.removeEventListener=function(e,t,l){var n=this._eventListeners;if(n!==null&&(t=ig(n,e,t,l),t!==-1)){var a=n[t];l=a.attachedListener;var i=a.cleanup;a=ii(a.optionsOrUseCapture),vt(this._fragmentFiber.child,!1,cw,e,l,a),n.splice(t,1),i!==null&&i()}};function cw(e,t,l,n){return Ue(e).removeEventListener(t,l,n),!1}function ii(e){return e!=null&&typeof e!="boolean"&&(e.once===!0||e.signal instanceof AbortSignal)?{capture:e.capture,passive:e.passive}:e}function op(e){return e==null?"c=0":typeof e=="boolean"?"c="+(e?"1":"0"):"c="+(e.capture?"1":"0")}function ig(e,t,l,n){if(e.length===0)return-1;n=op(n);for(var a=0;a<e.length;a++){var i=e[a];if(i.type===t&&i.listener===l&&op(i.optionsOrUseCapture)===n)return a}return-1}Gt.prototype.dispatchEvent=function(e){var t=ra(this._fragmentFiber);if(t===null)return!0;t=Ue(t);var l=this._eventListeners;if(l!==null&&0<l.length||!e.bubbles){var n=t.nodeType===9?t.createComment(""):document.createTextNode("");if(l)for(var a=0;a<l.length;a++){var i=l[a];n.addEventListener(i.type,i.attachedListener,ii(i.optionsOrUseCapture))}if(t.appendChild(n),e=n.dispatchEvent(e),l)for(a=0;a<l.length;a++)i=l[a],n.removeEventListener(i.type,i.attachedListener,ii(i.optionsOrUseCapture));return t.removeChild(n),e}return t.dispatchEvent(e)};Gt.prototype.focus=function(e){vt(this._fragmentFiber.child,!0,rg,e,void 0,void 0)};function rg(e,t){return e.tag===6?!1:(e=Ue(e),xw(e,t))}Gt.prototype.focusLast=function(e){var t=[];vt(this._fragmentFiber.child,!0,_d,t,void 0,void 0);for(var l=t.length-1;0<=l&&!rg(t[l],e);l--);};function _d(e,t){return t.push(e),!1}Gt.prototype.blur=function(){var e=ra(this._fragmentFiber);e!==null&&(e=Ue(e),e=Sr(e).activeElement,e!==null&&vt(this._fragmentFiber.child,!1,sw,e,void 0,void 0))};function sw(e,t){return e.tag===6?!1:(e=Ue(e),e===t||e.contains(t)?(t.blur(),!0):!1)}Gt.prototype.observeUsing=function(e){this._observers===null&&(this._observers=new Set),this._observers.add(e),vt(this._fragmentFiber.child,!1,fw,e,void 0,void 0)};function fw(e,t){return e.tag===6||(e=Ue(e),t.observe(e)),!1}Gt.prototype.unobserveUsing=function(e){var t=this._observers;if(t!==null&&t.has(e)){t.delete(e),vt(this._fragmentFiber.child,!1,dw,e,void 0,void 0);for(var l=t=0;l<tl.length;l++){var n=tl[l];n.fragmentInstance===this&&n.observer===e?e.unobserve(n.instance):tl[t++]=n}tl.length=t}};function dw(e,t){return e.tag===6||(e=Ue(e),t.unobserve(e)),!1}var tl=[],vs=!1;function hw(e,t,l){tl.push({fragmentInstance:e,observer:t,instance:l}),vs||(vs=!0,Sw(function(){vs=!1;var n=tl;tl=[];for(var a=0;a<n.length;a++){var i=n[a];i.observer.unobserve(i.instance)}}))}Gt.prototype.getClientRects=function(){var e=[];return vt(this._fragmentFiber.child,!1,pw,e,void 0,void 0),e};function pw(e,t){if(e.tag===6){e=e.stateNode;var l=e.ownerDocument.createRange();l.selectNodeContents(e),t.push.apply(t,l.getClientRects())}else e=Ue(e),t.push.apply(t,e.getClientRects());return!1}Gt.prototype.getRootNode=function(e){var t=ra(this._fragmentFiber);return t===null?this:Ue(t).getRootNode(e)};Gt.prototype.compareDocumentPosition=function(e){var t=ra(this._fragmentFiber);if(t===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var l=[];vt(this._fragmentFiber.child,!1,_d,l,void 0,void 0);var n=Ue(t);if(l.length===0){if(l=n,V0(this._fragmentFiber)){e:{for(t=this._fragmentFiber.return;t!==null;){if(t.tag===4){t=t.stateNode.containerInfo;break e}if(t.tag===3||t.tag===5||t.tag===27)break;t=t.return}t=null}t!=null&&(l=t)}t=this._fragmentFiber;var a=n=l.compareDocumentPosition(e);return l===e?a=Node.DOCUMENT_POSITION_CONTAINS:n&Node.DOCUMENT_POSITION_CONTAINED_BY&&(l=Np(t)[1],l===null?a=Node.DOCUMENT_POSITION_PRECEDING:(e=Ue(l).compareDocumentPosition(e),a=e===0||e&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),a|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}t=Ue(l[0]),a=Ue(l[l.length-1]);var i=V0(this._fragmentFiber)?t.parentElement:n;if(i==null)return Node.DOCUMENT_POSITION_DISCONNECTED;n=i.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY,i=i.compareDocumentPosition(a)&Node.DOCUMENT_POSITION_CONTAINED_BY;var r=t.compareDocumentPosition(e),o=a.compareDocumentPosition(e),u=r&Node.DOCUMENT_POSITION_CONTAINED_BY||o&Node.DOCUMENT_POSITION_CONTAINED_BY;return o=n&&i&&r&Node.DOCUMENT_POSITION_FOLLOWING&&o&Node.DOCUMENT_POSITION_PRECEDING,t=n&&t===e||i&&a===e||u||o?Node.DOCUMENT_POSITION_CONTAINED_BY:!n&&t===e||!i&&a===e?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:r,t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||mw(t,this._fragmentFiber,l[0],l[l.length-1],e)?t:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function mw(e,t,l,n,a){var i=Xn(a);if(e&Node.DOCUMENT_POSITION_CONTAINED_BY){if(l=!!i)e:{for(;i!==null;){if(i.tag===7&&(i===t||i.alternate===t)){l=!0;break e}i=i.return}l=!1}return l}if(e&Node.DOCUMENT_POSITION_CONTAINS){if(i===null)return i=a.ownerDocument,a===i||a===i.documentElement||a===i.body;e:{for(i=t,t=ra(t);i!==null;){if(!(i.tag!==5&&i.tag!==3&&i.tag!==27||i!==t&&i.alternate!==t)){i=!0;break e}i=i.return}i=!1}return i}return e&Node.DOCUMENT_POSITION_PRECEDING?((t=!!i)&&!(t=i===l)&&(t=ws(l,i,q0),t===null?t=!1:(vt(t,!0,Xy,i,l),i=za,za=null,t=i!==null)),t):e&Node.DOCUMENT_POSITION_FOLLOWING?((t=!!i)&&!(t=i===n)&&(t=ws(n,i,q0),t===null?t=!1:(vt(t,!0,Qy,i,n),i=za,bs=za=null,t=i!==null)),t):!1}function up(e,t){var l=e.ownerDocument.createRange();l.selectNodeContents(e),e=l.getBoundingClientRect(),window.scrollTo(window.scrollX+e.left,t?window.scrollY+e.top:window.scrollY+e.bottom-window.innerHeight)}Gt.prototype.scrollIntoView=function(e){if(typeof e=="object")throw Error(w(566));var t=[];vt(this._fragmentFiber.child,!1,_d,t,void 0,void 0);var l=e!==!1;if(t.length===0){var n=Np(this._fragmentFiber);if(n=l?n[1]||n[0]||ra(this._fragmentFiber):n[0]||n[1],n===null)return;if(n.tag===6){e=Ue(n),up(e,l);return}if(n=Ue(n),n.nodeType!==9){if(n.nodeType===11){l="host"in n?n.host:null,l!==null&&l.scrollIntoView(e);return}n.scrollIntoView(e)}}for(n=l?t.length-1:0;n!==(l?-1:t.length);){var a=t[n];a.tag===6?(a=Ue(a),up(a,l)):Ue(a).scrollIntoView(e),n+=l?-1:1}};function gw(e,t){return e=Ue(e),og(e,t),!1}function og(e,t){e.reactFragments==null&&(e.reactFragments=new Set),e.reactFragments.add(t)}function ug(e,t){var l=t._eventListeners;if(l!==null)for(var n=0;n<l.length;n++){var a=l[n];e.addEventListener(a.type,a.attachedListener,ii(a.optionsOrUseCapture))}e.nodeType!==3&&(l=t._observers,l!==null&&l.forEach(function(i){for(var r=0,o=0;o<tl.length;o++){var u=tl[o];(u.fragmentInstance!==t||u.observer!==i||u.instance!==e)&&(tl[r++]=u)}tl.length=r,i.observe(e)}),og(e,t))}function vw(e,t){var l=t._eventListeners;if(l!==null)for(var n=0;n<l.length;n++){var a=l[n];e.removeEventListener(a.type,a.attachedListener,ii(a.optionsOrUseCapture))}e.nodeType!==3&&(l=t._observers,l!==null&&l.forEach(function(i){typeof i.rootMargin=="string"?hw(t,i,e):i.unobserve(e)}),e.reactFragments!=null&&e.reactFragments.delete(t))}function Tf(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var l=t;switch(t=t.nextSibling,l.nodeName){case"HTML":case"HEAD":case"BODY":Tf(l),Gu(l);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(l.rel.toLowerCase()==="stylesheet")continue}e.removeChild(l)}}function yw(e,t,l,n){for(;e.nodeType===1;){var a=l;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!n&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(n){if(!e[Cr])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(i=e.getAttribute("rel"),i==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(i!==a.rel||e.getAttribute("href")!==(a.href==null||a.href===""?null:a.href)||e.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin)||e.getAttribute("title")!==(a.title==null?null:a.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(i=e.getAttribute("src"),(i!==(a.src==null?null:a.src)||e.getAttribute("type")!==(a.type==null?null:a.type)||e.getAttribute("crossorigin")!==(a.crossOrigin==null?null:a.crossOrigin))&&i&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var i=a.name==null?null:""+a.name;if(a.type==="hidden"&&e.getAttribute("name")===i)return e}else return e;if(e=Zt(e.nextSibling),e===null)break}return null}function bw(e,t,l){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!l||(e=Zt(e.nextSibling),e===null))return null;return e}function cg(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=Zt(e.nextSibling),e===null))return null;return e}function Mf(e){return e.data==="$?"||e.data==="$~"}function Ed(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function ww(e,t){var l=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||l.readyState!=="loading")t();else{var n=function(){t(),l.removeEventListener("DOMContentLoaded",n)};l.addEventListener("DOMContentLoaded",n),e._reactRetry=n}}function Zt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Af=null;function cp(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="/$"||l==="/&"){if(t===0)return Zt(e.nextSibling);t--}else l!=="$"&&l!=="$!"&&l!=="$?"&&l!=="$~"&&l!=="&"||t++}e=e.nextSibling}return null}function sp(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"){if(t===0)return e;t--}else l!=="/$"&&l!=="/&"||t++}e=e.previousSibling}return null}function xw(e,t){function l(){n=!0}if(e.ownerDocument.activeElement===e)return!0;var n=!1;try{e.ownerDocument.addEventListener("focus",l,!0),(e.focus||HTMLElement.prototype.focus).call(e,t)}finally{e.ownerDocument.removeEventListener("focus",l,!0)}return n}function Sw(e){ap(function(){ap(function(t){return e(t)})})}function sg(e,t,l){switch(t=Sr(l),e){case"html":if(e=t.documentElement,!e)throw Error(w(452));return e;case"head":if(e=t.head,!e)throw Error(w(453));return e;case"body":if(e=t.body,!e)throw Error(w(454));return e;default:throw Error(w(451))}}function fg(e,t,l){for(var n in l){var a=l[n];l.hasOwnProperty(n)&&a!=null&&oe(e,t,n,null,F4,a)}l.dangerouslySetInnerHTML!=null&&(e.textContent=""),e.onclick===gl&&(e.onclick=null),Gu(e)}function ys(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Gu(e)}var Jt=new Map,fp=new Set;function _r(e){if(typeof e.getRootNode=="function"){var t=e.getRootNode();if(t.nodeType===9||t.nodeType===11)return t}return e.nodeType===9?e:e.ownerDocument}var Yl=te.d;te.d={f:_w,r:Ew,D:Tw,C:Mw,L:Aw,m:Nw,X:Ow,S:zw,M:Cw};function _w(){var e=Yl.f(),t=Ju();return e||t}function Ew(e){var t=fi(e);t!==null&&t.tag===5&&t.type==="form"?Im(t):Yl.r(e)}var mi=typeof document>"u"?null:document;function dg(e,t,l){var n=mi;if(n&&typeof t=="string"&&t){var a=Kt(t);a='link[rel="'+e+'"][href="'+a+'"]',typeof l=="string"&&(a+='[crossorigin="'+l+'"]'),fp.has(a)||(fp.add(a),e={rel:e,crossOrigin:l,href:t},n.querySelector(a)===null&&(t=n.createElement("link"),$e(t,"link",e),Ye(t),n.head.appendChild(t)))}}function Tw(e){Yl.D(e),dg("dns-prefetch",e,null)}function Mw(e,t){Yl.C(e,t),dg("preconnect",e,t)}function Aw(e,t,l){Yl.L(e,t,l);var n=mi;if(n&&e&&t){var a='link[rel="preload"][as="'+Kt(t)+'"]';t==="image"&&l&&l.imageSrcSet?(a+='[imagesrcset="'+Kt(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(a+='[imagesizes="'+Kt(l.imageSizes)+'"]')):a+='[href="'+Kt(e)+'"]';var i=a;switch(t){case"style":i=ri(e);break;case"script":i=gi(e)}if(!(Jt.has(i)||(e=he({rel:"preload",href:t==="image"&&l&&l.imageSrcSet?void 0:e,as:t},l),Jt.set(i,e),n.querySelector(a)!==null||t==="style"&&n.querySelector(Lr(i))||t==="script"&&n.querySelector(kr(i))))){var r=n.createElement("link");$e(r,"link",e),t==="style"&&(r[uu]=!0,r.onload=r.onerror=function(){qp(r)}),Ye(r),n.head.appendChild(r)}}}function Nw(e,t){Yl.m(e,t);var l=mi;if(l&&e){var n=t&&typeof t.as=="string"?t.as:"script",a='link[rel="modulepreload"][as="'+Kt(n)+'"][href="'+Kt(e)+'"]',i=a;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=gi(e)}if(!Jt.has(i)&&(e=he({rel:"modulepreload",href:e},t),Jt.set(i,e),l.querySelector(a)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(kr(i)))return}n=l.createElement("link"),$e(n,"link",e),Ye(n),l.head.appendChild(n)}}}function zw(e,t,l){Yl.S(e,t,l);var n=mi;if(n&&e){var a=qa(n).hoistableStyles,i=ri(e);t=t||"default";var r=a.get(i);if(!r){var o={loading:0,preload:null};if(r=n.querySelector(Lr(i)))o.loading=5;else{e=he({rel:"stylesheet",href:e,"data-precedence":t},l),(l=Jt.get(i))&&Td(e,l);var u=r=n.createElement("link");Ye(u),$e(u,"link",e),u._p=new Promise(function(c,h){u.onload=c,u.onerror=h}),u.addEventListener("load",function(){o.loading|=1}),u.addEventListener("error",function(){o.loading|=2}),o.loading|=4,Po(r,t,n)}r={type:"stylesheet",instance:r,count:1,state:o},a.set(i,r)}}}function Ow(e,t){Yl.X(e,t);var l=mi;if(l&&e){var n=qa(l).hoistableScripts,a=gi(e),i=n.get(a);i||(i=l.querySelector(kr(a)),i||(e=he({src:e,async:!0},t),(t=Jt.get(a))&&Md(e,t),i=l.createElement("script"),Ye(i),$e(i,"link",e),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function Cw(e,t){Yl.M(e,t);var l=mi;if(l&&e){var n=qa(l).hoistableScripts,a=gi(e),i=n.get(a);i||(i=l.querySelector(kr(a)),i||(e=he({src:e,async:!0,type:"module"},t),(t=Jt.get(a))&&Md(e,t),i=l.createElement("script"),Ye(i),$e(i,"link",e),l.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},n.set(a,i))}}function dp(e,t,l,n){var a=(a=hn.current)?_r(a):null;if(!a)throw Error(w(446));switch(e){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(l=ri(l.href),t=qa(a).hoistableStyles,n=t.get(l),n||(n={type:"style",instance:null,count:0,state:null},t.set(l,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){e=ri(l.href);var i=qa(a).hoistableStyles,r=i.get(e);if(r||(a=a.ownerDocument||a,r={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(e,r),(i=a.querySelector(Lr(e)))?i._p||(r.instance=i,r.state.loading=5):(i=Jt.get(e),i||(i={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Jt.set(e,i)),Rw(a,e,i,r.state))),t&&n===null)throw Error(w(528,""));return r}if(t&&n!==null)throw Error(w(529,""));return null;case"script":return t=l.async,l=l.src,typeof l=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(l=gi(l),t=qa(a).hoistableScripts,n=t.get(l),n||(n={type:"script",instance:null,count:0,state:null},t.set(l,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(w(444,e))}}function ri(e){return'href="'+Kt(e)+'"'}function Lr(e){return'link[rel="stylesheet"]['+e+"]"}function hg(e){return he({},e,{"data-precedence":e.precedence,precedence:null})}function Rw(e,t,l,n){if(t=e.querySelector('link[rel="preload"][as="style"]['+t+"]")){if(t[uu]!==!0){n.loading=1;return}}else t=e.createElement("link"),t[uu]=!0,t.onload=t.onerror=qp.bind(null,t),$e(t,"link",l),Ye(t),e.head.appendChild(t);n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2})}function gi(e){return'[src="'+Kt(e)+'"]'}function kr(e){return"script[async]"+e}function hp(e,t,l){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+Kt(l.href)+'"]');if(n)return t.instance=n,Ye(n),n;var a=he({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),Ye(n),$e(n,"style",a),Po(n,l.precedence,e),t.instance=n;case"stylesheet":a=ri(l.href);var i=e.querySelector(Lr(a));if(i)return t.state.loading|=4,t.instance=i,Ye(i),i;n=hg(l),(a=Jt.get(a))&&Td(n,a),i=(e.ownerDocument||e).createElement("link"),Ye(i);var r=i;return r._p=new Promise(function(o,u){r.onload=o,r.onerror=u}),$e(i,"link",n),t.state.loading|=4,Po(i,l.precedence,e),t.instance=i;case"script":return i=gi(l.src),(a=e.querySelector(kr(i)))?(t.instance=a,Ye(a),a):(n=l,(a=Jt.get(i))&&(n=he({},l),Md(n,a)),e=e.ownerDocument||e,a=e.createElement("script"),Ye(a),$e(a,"link",n),e.head.appendChild(a),t.instance=a);case"void":return null;default:throw Error(w(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,Po(n,l.precedence,e));return t.instance}function Po(e,t,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),a=n.length?n[n.length-1]:null,i=a,r=0;r<n.length;r++){var o=n[r];if(o.dataset.precedence===t)i=o;else if(i!==a)break}i?i.parentNode.insertBefore(e,i.nextSibling):(t=l.nodeType===9?l.head:l,t.insertBefore(e,t.firstChild))}function Td(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function Md(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var eu=null;function pp(e,t,l){if(eu===null){var n=new Map,a=eu=new Map;a.set(l,n)}else a=eu,n=a.get(l),n||(n=new Map,a.set(l,n));if(n.has(e))return n;for(n.set(e,null),l=l.getElementsByTagName(e),a=0;a<l.length;a++){var i=l[a];if(!(i[Cr]||i[Qe]||e==="link"&&i.getAttribute("rel")==="stylesheet")&&i.namespaceURI!=="http://www.w3.org/2000/svg"){var r=i.getAttribute(t)||"";r=e+r;var o=n.get(r);o?o.push(i):n.set(r,[i])}}return n}function Nf(e,t,l){e=e.ownerDocument||e,e.head.insertBefore(l,t==="title"?e.querySelector("head > title"):null)}function Dw(e,t,l){if(l===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function mp(e,t){return e==="img"&&t.src!=null&&t.src!==""&&t.onLoad==null&&t.loading!=="lazy"}function pg(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function mg(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function gp(e,t){typeof t.decode=="function"&&(e.imgCount++,t.complete||(e.imgBytes+=mg(t),e.suspenseyImages.push(t)),e=Uw.bind(e),t.decode().then(e,e))}function Gw(e,t,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var a=ri(n.href),i=t.querySelector(Lr(a));if(i){t=i._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Er.bind(e),t.then(e,e)),l.state.loading|=4,l.instance=i,Ye(i);return}i=t.ownerDocument||t,n=hg(n),(a=Jt.get(a))&&Td(n,a),i=i.createElement("link"),Ye(i);var r=i;r._p=new Promise(function(o,u){r.onload=o,r.onerror=u}),$e(i,"link",n),l.instance=i}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(l,t),(t=l.state.preload)&&(l.state.loading&3)===0&&(e.count++,l=Er.bind(e),t.addEventListener("load",l),t.addEventListener("error",l))}}var tu=0;function Hw(e,t){return e.stylesheets&&e.count===0&&lu(e,e.stylesheets),0<e.count||0<e.imgCount?function(l){var n=setTimeout(function(){if(e.stylesheets&&lu(e,e.stylesheets),e.unsuspend){var i=e.unsuspend;e.unsuspend=null,i()}},6e4+t);0<e.imgBytes&&tu===0&&(tu=62500*P4());var a=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&lu(e,e.stylesheets),e.unsuspend)){var i=e.unsuspend;e.unsuspend=null,i()}},(e.imgBytes>tu?50:800)+t);return e.unsuspend=l,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(a)}}:null}function gg(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)lu(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function Er(){this.count--,gg(this)}function Uw(){this.imgCount--,gg(this)}var Cu=null;function lu(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Cu=new Map,t.forEach(Lw,e),Cu=null,Er.call(e))}function Lw(e,t){if(!(t.state.loading&4)){var l=Cu.get(e);if(l)var n=l.get(null);else{l=new Map,Cu.set(e,l);for(var a=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i<a.length;i++){var r=a[i];(r.nodeName==="LINK"||r.getAttribute("media")!=="not all")&&(l.set(r.dataset.precedence,r),n=r)}n&&l.set(null,n)}a=t.instance,r=a.getAttribute("data-precedence"),i=l.get(r)||n,i===n&&l.set(null,a),l.set(r,a),this.count++,n=Er.bind(this),a.addEventListener("load",n),a.addEventListener("error",n),i?i.parentNode.insertBefore(a,i.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(a,e.firstChild)),t.state.loading|=4}}var oi={$$typeof:ml,Provider:null,Consumer:null,_currentValue:Zn,_currentValue2:Zn,_threadCount:0};function kw(e,t,l,n,a,i,r,o,u){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Qc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Qc(0),this.hiddenUpdates=Qc(null),this.identifierPrefix=n,this.onUncaughtError=a,this.onCaughtError=i,this.onRecoverableError=r,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=u,this.transitionTypes=null,this.incompleteTransitions=new Map}function vg(e,t,l,n,a,i,r,o,u,c,h,g){return e=new kw(e,t,l,r,u,c,h,g,o),t=1,i===!0&&(t|=24),i=mt(3,null,null,t),e.current=i,i.stateNode=e,t=Qf(),t.refCount++,e.pooledCache=t,t.refCount++,i.memoizedState={element:n,isDehydrated:l,cache:t},If(i),e}function yg(e){return e?(e=La,e):La}function bg(e,t,l,n,a,i){a=yg(a),n.context===null?n.context=a:n.pendingContext=a,n=mn(t),n.payload={element:l},i=i===void 0?null:i,i!==null&&(n.callback=i),l=gn(e,n,t),l!==null&&(gt(l,e,t),lr(l,e,t))}function vp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var l=e.retryLane;e.retryLane=l!==0&&l<t?l:t}}function Ad(e,t){vp(e,t),(e=e.alternate)&&vp(e,t)}function wg(e){if(e.tag===13||e.tag===31){var t=ca(e,67108864);t!==null&>(t,e,67108864),Ad(e,67108864)}}function yp(e){if(e.tag===13||e.tag===31){var t=Rt();t=Gf(t);var l=ca(e,t);l!==null&>(l,e,t),Ad(e,t)}}var ui=!0;function Bw(e,t,l,n){var a=U.T;U.T=null;var i=te.p;try{te.p=2,Nd(e,t,l,n)}finally{te.p=i,U.T=a}}function Vw(e,t,l,n){var a=U.T;U.T=null;var i=te.p;try{te.p=8,Nd(e,t,l,n)}finally{te.p=i,U.T=a}}function Nd(e,t,l,n){if(ui){var a=zf(n);if(a===null)ms(e,t,n,Ru,l),bp(e,n);else if(Yw(a,e,t,l,n))n.stopPropagation();else if(bp(e,n),t&4&&-1<qw.indexOf(e)){for(;a!==null;){var i=fi(a);if(i!==null)switch(i.tag){case 3:if(i=i.stateNode,i.current.memoizedState.isDehydrated){var r=Yn(i.pendingLanes);if(r!==0){var o=i;for(o.pendingLanes|=2,o.entangledLanes|=2;r;){var u=1<<31-Ct(r);o.entanglements[1]|=u,r&=~u}_l(i),(ee&6)===0&&(Mu=zt()+500,Ur(0,!1))}}break;case 31:case 13:o=ca(i,2),o!==null&>(o,i,2),Ju(),Ad(i,2)}if(i=zf(n),i===null&&ms(e,t,n,Ru,l),i===a)break;a=i}a!==null&&n.stopPropagation()}else ms(e,t,n,null,l)}}function zf(e){return e=Lf(e),zd(e)}var Ru=null;function zd(e){if(Ru=null,e=Xn(e),e!==null){var t=Ar(e);if(t===null)e=null;else{var l=t.tag;if(l===13){if(e=Tp(t),e!==null)return e;e=null}else if(l===31){if(e=Mp(t),e!==null)return e;e=null}else if(l===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Ru=e,null}function xg(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"fullscreenerror":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"resize":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(tb()){case Rp:return 2;case Dp:return 8;case ou:case lb:return 32;case Gp:return 268435456;default:return 32}default:return 32}}var Of=!1,wn=null,xn=null,Sn=null,Tr=new Map,Mr=new Map,rn=[],qw="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function bp(e,t){switch(e){case"focusin":case"focusout":wn=null;break;case"dragenter":case"dragleave":xn=null;break;case"mouseover":case"mouseout":Sn=null;break;case"pointerover":case"pointerout":Tr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Mr.delete(t.pointerId)}}function Xi(e,t,l,n,a,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:l,eventSystemFlags:n,nativeEvent:i,targetContainers:[a]},t!==null&&(t=fi(t),t!==null&&wg(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function Yw(e,t,l,n,a){switch(t){case"focusin":return wn=Xi(wn,e,t,l,n,a),!0;case"dragenter":return xn=Xi(xn,e,t,l,n,a),!0;case"mouseover":return Sn=Xi(Sn,e,t,l,n,a),!0;case"pointerover":var i=a.pointerId;return Tr.set(i,Xi(Tr.get(i)||null,e,t,l,n,a)),!0;case"gotpointercapture":return i=a.pointerId,Mr.set(i,Xi(Mr.get(i)||null,e,t,l,n,a)),!0}return!1}function Sg(e){var t=Xn(e.target);if(t!==null){var l=Ar(t);if(l!==null){if(t=l.tag,t===13){if(t=Tp(l),t!==null){e.blockedOn=t,X0(e.priority,function(){yp(l)});return}}else if(t===31){if(t=Mp(l),t!==null){e.blockedOn=t,X0(e.priority,function(){yp(l)});return}}else if(t===3&&l.stateNode.current.memoizedState.isDehydrated){e.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}e.blockedOn=null}function nu(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var l=zf(e.nativeEvent);if(l===null){l=e.nativeEvent;var n=new l.constructor(l.type,l);Rs=n,l.target.dispatchEvent(n),Rs=null}else return t=fi(l),t!==null&&wg(t),e.blockedOn=l,!1;t.shift()}return!0}function wp(e,t,l){nu(e)&&l.delete(t)}function jw(){Of=!1,wn!==null&&nu(wn)&&(wn=null),xn!==null&&nu(xn)&&(xn=null),Sn!==null&&nu(Sn)&&(Sn=null),Tr.forEach(wp),Mr.forEach(wp)}function Lo(e,t){e.blockedOn===t&&(e.blockedOn=null,Of||(Of=!0,Le.unstable_scheduleCallback(Le.unstable_NormalPriority,jw)))}var ko=null;function xp(e){ko!==e&&(ko=e,Le.unstable_scheduleCallback(Le.unstable_NormalPriority,function(){ko===e&&(ko=null);for(var t=0;t<e.length;t+=3){var l=e[t],n=e[t+1],a=e[t+2];if(typeof n!="function"){if(zd(n||l)===null)continue;break}var i=fi(l);i!==null&&(e.splice(t,3),t-=3,Js(i,{pending:!0,data:a,method:l.method,action:n},n,a))}}))}function ci(e){function t(u){return Lo(u,e)}wn!==null&&Lo(wn,e),xn!==null&&Lo(xn,e),Sn!==null&&Lo(Sn,e),Tr.forEach(t),Mr.forEach(t);for(var l=0;l<rn.length;l++){var n=rn[l];n.blockedOn===e&&(n.blockedOn=null)}for(;0<rn.length&&(l=rn[0],l.blockedOn===null);)Sg(l),l.blockedOn===null&&rn.shift();if(l=(e.ownerDocument||e).$$reactFormReplay,l!=null)for(n=0;n<l.length;n+=3){var a=l[n],i=l[n+1],r=a[yt]||null;if(typeof i=="function")r||xp(l);else if(r){var o=null;if(i&&i.hasAttribute("formAction")){if(a=i,r=i[yt]||null)o=r.formAction;else if(zd(a)!==null)continue}else o=r.action;typeof o=="function"?l[n+1]=o:(l.splice(n,3),n-=3),xp(l)}}}function _g(){function e(i){i.canIntercept&&i.info==="react-transition"&&i.intercept({handler:function(){return new Promise(function(r){return a=r})},focusReset:"manual",scroll:"manual"})}function t(){a!==null&&(a(),a=null),n||setTimeout(l,20)}function l(){if(!n&&!navigation.transition){var i=navigation.currentEntry;i&&i.url!=null&&navigation.navigate(i.url,{state:i.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var n=!1,a=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(l,100),function(){n=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),a!==null&&(a(),a=null)}}}function Od(e){this._internalRoot=e}Fu.prototype.render=Od.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(w(409));var l=t.current,n=Rt();bg(l,n,e,t,null,null)};Fu.prototype.unmount=Od.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;bg(e.current,2,null,e,null,null),Ju(),t[si]=null}};function Fu(e){this._internalRoot=e}Fu.prototype.unstable_scheduleHydration=function(e){if(e){var t=Vp();e={blockedOn:null,target:e,priority:t};for(var l=0;l<rn.length&&t!==0&&t<rn[l].priority;l++);rn.splice(l,0,e),l===0&&Sg(e)}};var Sp=_p.version;if(Sp!=="19.3.1")throw Error(w(527,Sp,"19.3.1"));te.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(w(188)):(e=Object.keys(e).join(","),Error(w(268,e)));return e=Ky(t),e=e!==null?Ap(e):null,e=e===null?null:e.stateNode,e};var Kw={bundleType:0,version:"19.3.1",rendererPackageName:"react-dom",currentDispatcherRef:U,reconcilerVersion:"19.3.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&(Qi=__REACT_DEVTOOLS_GLOBAL_HOOK__,!Qi.isDisabled&&Qi.supportsFiber))try{Nr=Qi.inject(Kw),Ot=Qi}catch{}var Qi;Wu.createRoot=function(e,t){if(!Ep(e))throw Error(w(299));var l=!1,n="",a=n2,i=a2,r=i2;return t!=null&&(t.unstable_strictMode===!0&&(l=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onUncaughtError!==void 0&&(a=t.onUncaughtError),t.onCaughtError!==void 0&&(i=t.onCaughtError),t.onRecoverableError!==void 0&&(r=t.onRecoverableError)),t=vg(e,1,!1,null,null,l,n,null,a,i,r,_g),e[si]=t.current,xd(e),new Od(t)};Wu.hydrateRoot=function(e,t,l){if(!Ep(e))throw Error(w(299));var n=!1,a="",i=n2,r=a2,o=i2,u=null;return l!=null&&(l.unstable_strictMode===!0&&(n=!0),l.identifierPrefix!==void 0&&(a=l.identifierPrefix),l.onUncaughtError!==void 0&&(i=l.onUncaughtError),l.onCaughtError!==void 0&&(r=l.onCaughtError),l.onRecoverableError!==void 0&&(o=l.onRecoverableError),l.formState!==void 0&&(u=l.formState)),t=vg(e,1,!0,t,l??null,n,a,u,i,r,o,_g),t.context=yg(null),l=t.current,n=Rt(),n=Gf(n),a=mn(n),a.callback=null,gn(l,a,n),l=n,t.current.lanes=l,Or(t,l),_l(t),e[si]=t.current,xd(e),new Fu(t)};Wu.version="19.3.1"});var Ag=ol((A5,Mg)=>{"use strict";function Tg(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Tg)}catch(e){console.error(e)}}Tg(),Mg.exports=Eg()});var Xg=ol(uc=>{"use strict";var o3=Symbol.for("react.transitional.element"),u3=Symbol.for("react.fragment");function Kg(e,t,l){var n=null;if(l!==void 0&&(n=""+l),t.key!==void 0&&(n=""+t.key),"key"in t){l={};for(var a in t)a!=="key"&&(l[a]=t[a])}else l=t;return t=l.ref,{$$typeof:o3,type:e,key:n,ref:t!==void 0?t:null,props:l}}uc.Fragment=u3;uc.jsx=Kg;uc.jsxs=Kg});var ze=ol((X5,Qg)=>{"use strict";Qg.exports=Xg()});var Jv=ie(Ag(),1);var vi=["purple","cyan","green","amber","rose","blue"];var Br=e=>typeof e=="string"&&vi.includes(e);var Ng={editing:{human:0,agent:1},viewing:{human:2,agent:3},idle:{human:4,agent:5}};function Cd(e){return e.map((t,l)=>({member:t,index:l})).sort((t,l)=>Ng[t.member.activity][t.member.kind]-Ng[l.member.activity][l.member.kind]||t.index-l.index).map(({member:t})=>t)}function Rd(e,t=new Map){let l=new Map,n=new Map(vi.map(i=>[i,0])),a=(i,r)=>{l.set(i,r),n.set(r,(n.get(r)??0)+1)};for(let i of e)i.kind==="agent"&&i.hue!==void 0&&a(i.id,i.hue);for(let i of e){if(l.has(i.id))continue;let r=t.get(i.id);r!==void 0&&a(i.id,r)}for(let i of e){if(l.has(i.id))continue;let r=vi[0];for(let o of vi)(n.get(o)??0)<(n.get(r)??0)&&(r=o);a(i.id,r)}return l}function zg(e,t=2){if(e.length===0)return"";if(e.length===1)return e[0];if(e.length<=t)return`${e.slice(0,-1).join(", ")} and ${e[e.length-1]}`;let l=e.length-t;return`${e.slice(0,t).join(", ")} and ${l===1?"1 other":`${l} others`}`}var Vr={activity:(e,t)=>e==="editing"?"Editing":e==="idle"?"Idle":t==="agent"?"Reading":"Viewing",here:(e,t)=>t?e===0?"Only you are here":`You and ${e===1?"1 other":`${e} others`} are here`:e===1?"1 person is here":`${e} people are here`,member:e=>e.location?`${e.name}, ${e.location}`:`${e.name}, ${Vr.activity(e.activity,e.kind).toLowerCase()}`,more:e=>`${e} more`,editing:e=>`${e} is editing`,alsoHere:e=>e.length===0?"":`${zg(e)} ${e.length===1?"is":"are"} also here.`};function qr(e){return{...Vr,...e}}var Dg=["text","longtext","number","checkbox","select","multiselect","status","person","date","url","rating"],ec=e=>typeof e=="string"&&Dg.includes(e),Xw={text:"Text",longtext:"Long text",number:"Number",checkbox:"Checkbox",select:"Select",multiselect:"Multi-select",status:"Status",person:"Person",date:"Date",url:"URL",rating:"Rating"},Og=e=>e===1?"1 change":`${e} changes`,jl={rowHeader:"Row",addRow:"Add row",empty:"Empty",checked:"Checked",unchecked:"Not checked",rating:(e,t)=>`${e} of ${t} stars`,archived:e=>`Archived: ${e}`,unknownPerson:"Unknown person",types:Xw,saving:"Saving",forbidden:"You can view this sheet but not edit it.",couldNotSave:"Could not save this change.",notANumber:e=>`${e} must be a number.`,belowMin:(e,t)=>`${e} must be at least ${t}.`,aboveMax:(e,t)=>`${e} must be at most ${t}.`,tooLong:(e,t)=>`${e} must be at most ${t} characters.`,required:e=>`${e} is required.`,notAnOption:e=>`${e} must be one of its options.`,tooManyItems:(e,t)=>`${e} holds at most ${t} options.`,notAPerson:e=>`${e} must be a person or an agent in this company.`,notADate:e=>`${e} must be a date.`,notAUrl:e=>`${e} must be a web address starting with https:// or http://.`,notARating:(e,t)=>`${e} must be a whole number from 1 to ${t}.`,notABoolean:e=>`${e} must be checked or not checked.`,readOnly:e=>`${e} is read only.`,conflict:(e,t)=>`${e} changed this to ${t} while you were editing.`,keepMine:"Keep yours",useTheirs:e=>`Use ${e}'s`,someone:"Someone",changed:(e,t,l)=>`Changed by ${e}, ${t}.${l===null?"":` Was ${l}.`}`,history:"Cell history",sync:e=>e.offline?e.saving===0?"Offline.":`Offline. ${Og(e.saving)} will sync when you reconnect.`:e.failed!==void 0&&e.failed>0?"Could not save.":e.saving>0?`Saving ${Og(e.saving)}`:"Saved",retry:"Retry",filter:"Filter options",noOptions:"No matching options",clear:"Clear",keyboardHelp:"Arrow keys move between cells. Enter or F2 edits a cell, Escape cancels, and typing replaces its value. Space toggles a checkbox. Control or Command with C and V copies and pastes. Control or Command with Alt and H opens the history of a cell.",sortBy:e=>`Sort by ${e}`};function Yr(e){return{...jl,...e,types:{...jl.types,...e?.types}}}var Qw={violet:"purple",indigo:"purple",teal:"cyan",sky:"cyan",emerald:"green",lime:"green",yellow:"amber",orange:"amber",red:"rose",pink:"rose"};function tc(e){if(e===void 0)return"neutral";let t=e.trim().toLowerCase();return Br(t)?t:Qw[t]??"neutral"}var Zw=["neutral","info","success","warning","danger"],Jw={green:"success",amber:"warning",rose:"danger",blue:"info",cyan:"info",purple:"neutral"},Iw={todo:"neutral",in_progress:"info",done:"success",blocked:"danger"};function lc(e){let t=e.color?.trim().toLowerCase();if(t!==void 0&&Zw.includes(t))return t;if(t!==void 0){let l=tc(t);if(l!=="neutral")return Jw[l]}return e.category?Iw[e.category]:"neutral"}function Kl(e,t){return e.options?.find(l=>l.id===t)}function yi(e){return(e.options??[]).filter(t=>!t.archived)}function Hd(e){let t=new Set,l=[];for(let n of e.split(",")){let[a="",i]=n.split(":"),r=a.trim();if(r==="")continue;let o=r.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");for(o===""&&(o=`option_${l.length+1}`);t.has(o);)o=`${o}_`;t.add(o);let u=i?.trim();l.push(u?{id:o,label:r,color:u}:{id:o,label:r})}return l}var Gg=1e3,Hg=2e4,Ug=2048,Dd=5,Lg=10,kg=1900,Bg=2200;function Xl(e){let t=e.max??Dd;return Number.isInteger(t)&&t>=1?Math.min(t,Lg):Dd}function On(e){return e.maxLength??(e.type==="longtext"?Hg:Gg)}var $w=e=>Array.isArray(e)&&e.every(t=>typeof t=="string");function ct(e,t){if(t==null)return e.type==="checkbox"?!1:e.type==="multiselect"?[]:null;switch(e.type){case"checkbox":return t===!0;case"number":{let l=typeof t=="number"?t:typeof t=="string"&&t.trim()!==""?Number(t):Number.NaN;return Number.isFinite(l)?l:null}case"rating":return typeof t=="number"&&Number.isInteger(t)&&t>=1?t:null;case"multiselect":return $w(t)?t:[];case"text":case"longtext":case"url":case"date":return typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null;case"select":case"status":case"person":return typeof t=="string"?t:null}}function Ql(e){return e===null||e===""||Array.isArray(e)&&e.length===0}function bi(e,t){return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((l,n)=>l===t[n]):e===t}function wi(e,t){return e?.find(l=>l.id===t)}function Fw(e,t){let l=e.precision,n=l===void 0?{maximumFractionDigits:10}:{minimumFractionDigits:l,maximumFractionDigits:l};return e.numberStyle==="percent"?new Intl.NumberFormat(t,{style:"percent",...n}):e.numberStyle==="currency"&&e.currency?new Intl.NumberFormat(t,{style:"currency",currency:e.currency,...n}):new Intl.NumberFormat(t,n)}var Ww=/^(\d{4})-(\d{2})-(\d{2})$/;function Vg(e){let t=Ww.exec(e);if(!t)return null;let l=Number(t[1]),n=Number(t[2]),a=Number(t[3]),i=new Date(Date.UTC(l,n-1,a));return i.getUTCFullYear()!==l||i.getUTCMonth()!==n-1||i.getUTCDate()!==a||l<kg||l>Bg?null:{year:l,month:n,day:a}}function al(e,t,l){let{labels:n,locale:a}=l;if(e.type==="checkbox")return t===!0?n.checked:n.unchecked;if(Ql(t))return"";switch(e.type){case"number":return typeof t=="number"?Fw(e,a).format(t):"";case"rating":return typeof t=="number"?n.rating(t,Xl(e)):"";case"select":case"status":{let i=Kl(e,String(t));return i?i.archived?n.archived(i.label):i.label:String(t)}case"multiselect":return t.map(i=>{let r=Kl(e,i);return r?r.archived?n.archived(r.label):r.label:i}).join(", ");case"person":return wi(l.people,String(t))?.name??n.unknownPerson;case"date":{let i=String(t);if(Vg(i))return new Intl.DateTimeFormat(a,{dateStyle:"medium",timeZone:"UTC"}).format(new Date(`${i}T00:00:00Z`));let r=Date.parse(i);return Number.isNaN(r)?i:new Intl.DateTimeFormat(a,{dateStyle:"medium",timeStyle:"short"}).format(r)}default:return String(t)}}function xi(e,t,l){if(e.type==="checkbox")return t===!0?"TRUE":"FALSE";if(Ql(t))return"";switch(e.type){case"number":return typeof t!="number"?"":e.numberStyle==="percent"?`${Gd(t*100,10)}%`:String(t);case"select":case"status":return Kl(e,String(t))?.label??String(t);case"multiselect":return t.map(n=>Kl(e,n)?.label??n).join(", ");case"person":return wi(l.people,String(t))?.name??String(t);default:return String(t)}}function Gd(e,t){let l=10**t;return Math.round(e*l)/l}var ke=e=>({ok:!1,error:e});function Cg(e,t){let l=t.trim().toLowerCase(),n=yi(e),a=n.find(i=>i.id===t.trim())??n.find(i=>i.label.toLowerCase()===l);return a?a.id:null}function Pw(e,t){let l=t.trim().toLowerCase();if(!e||l==="")return null;let n=e.find(i=>i.id===t.trim()||i.name.toLowerCase()===l);if(n)return n.id;let a=e.filter(i=>i.name.toLowerCase().startsWith(l));return a.length===1?a[0].id:null}var e3=new Set(["true","yes","y","1","x","checked","on","\u2713","\u2714"]),t3=new Set(["false","no","n","0","","unchecked","off"]);function l3(e,t,l){let n=t.trim().replace(/\s+/g,""),a=n.endsWith("%");if(a&&(n=n.slice(0,-1)),n=n.replace(/^[$€£¥]|[$€£¥]$/g,""),/^-?\d{1,3}(,\d{3})+(\.\d+)?$/.test(n)&&(n=n.replaceAll(",","")),!/^[-+]?(\d+\.?\d*|\.\d+)(e[-+]?\d+)?$/i.test(n))return ke(l.notANumber(e.label));let i=Number(n);if((a||e.numberStyle==="percent")&&(i/=100),!Number.isFinite(i))return ke(l.notANumber(e.label));e.precision!==void 0&&(i=Gd(i,e.precision));let r=o=>e.numberStyle==="percent"?`${Gd(o*100,10)}%`:String(o);return e.min!==void 0&&i<e.min?ke(l.belowMin(e.label,r(e.min))):e.max!==void 0&&i>e.max?ke(l.aboveMax(e.label,r(e.max))):{ok:!0,value:i}}function n3(e,t,l){let n=t.trim();if(!e.time)return Vg(n.slice(0,10))&&(n.length===10||n[10]==="T"||n[10]===" ")?{ok:!0,value:n.slice(0,10)}:ke(l.notADate(e.label));let a=Date.parse(n);if(Number.isNaN(a))return ke(l.notADate(e.label));let i=new Date(a).getUTCFullYear();return i<kg||i>Bg?ke(l.notADate(e.label)):{ok:!0,value:new Date(a).toISOString().replace(/\.000Z$/,"Z")}}function a3(e,t,l){let n=t.trim();!/^[a-z][a-z0-9+.-]*:/i.test(n)&&/^[^\s/]+\.[^\s/]+/.test(n)&&(n=`https://${n}`);let a;try{a=new URL(n)}catch{return ke(l.notAUrl(e.label))}return a.protocol!=="https:"&&a.protocol!=="http:"||n.length>Ug||a.host===""?ke(l.notAUrl(e.label)):{ok:!0,value:n}}function Si(e,t,l){let{labels:n}=l;if(t.trim()===""&&e.type!=="checkbox")return e.required?ke(n.required(e.label)):{ok:!0,value:e.type==="multiselect"?[]:null};switch(e.type){case"checkbox":{let i=t.trim().toLowerCase();return e3.has(i)?{ok:!0,value:!0}:t3.has(i)?{ok:!0,value:!1}:ke(n.notABoolean(e.label))}case"number":return l3(e,t,n);case"rating":{let i=Xl(e),r=t.trim(),o=/^★+$/.test(r)?r.length:Number(r);return o===0?e.required?ke(n.required(e.label)):{ok:!0,value:null}:!Number.isInteger(o)||o<1||o>i?ke(n.notARating(e.label,i)):{ok:!0,value:o}}case"text":{let i=t.replace(/\s*[\r\n]+\s*/g," ");return i.length>On(e)?ke(n.tooLong(e.label,On(e))):{ok:!0,value:i}}case"longtext":return t.length>On(e)?ke(n.tooLong(e.label,On(e))):{ok:!0,value:t};case"select":case"status":{let i=Cg(e,t);return i===null?ke(n.notAnOption(e.label)):{ok:!0,value:i}}case"multiselect":{let i=[];for(let r of t.split(/[,;\n]/)){if(r.trim()==="")continue;let o=Cg(e,r);if(o===null)return ke(n.notAnOption(e.label));i.includes(o)||i.push(o)}return e.maxItems!==void 0&&i.length>e.maxItems?ke(n.tooManyItems(e.label,e.maxItems)):{ok:!0,value:i}}case"person":{let i=Pw(l.people,t);return i===null?ke(n.notAPerson(e.label)):{ok:!0,value:i}}case"date":return n3(e,t,n);case"url":return a3(e,t,n)}}function Ud(e,t,l){let{labels:n}=l;if(e.required&&e.type!=="checkbox"&&Ql(t))return n.required(e.label);if(Ql(t))return null;switch(e.type){case"checkbox":return typeof t=="boolean"?null:n.notABoolean(e.label);case"select":case"status":return typeof t=="string"&&yi(e).some(a=>a.id===t)?null:n.notAnOption(e.label);case"multiselect":{if(!Array.isArray(t))return n.notAnOption(e.label);let a=new Set(yi(e).map(i=>i.id));return t.every(i=>a.has(i)||Kl(e,i)?.archived)?e.maxItems!==void 0&&t.length>e.maxItems?n.tooManyItems(e.label,e.maxItems):null:n.notAnOption(e.label)}case"person":return typeof t=="string"&&wi(l.people,t)?null:n.notAPerson(e.label);case"rating":return typeof t=="number"&&Number.isInteger(t)&&t>=1&&t<=Xl(e)?null:n.notARating(e.label,Xl(e));default:{let a=Si(e,xi(e,t,l),l);return a.ok?null:a.error}}}function qg(e,t,l,n){let a=e.type!=="checkbox"&&Ql(t),i=e.type!=="checkbox"&&Ql(l);if(a||i)return a===i?0:a?1:-1;switch(e.type){case"number":case"rating":return t-l;case"checkbox":return+(t===!0)-+(l===!0);case"select":case"status":{let r=o=>(e.options??[]).findIndex(u=>u.id===o);return r(t)-r(l)}default:return al(e,t,n).localeCompare(al(e,l,n),n.locale,{numeric:!0})}}var fa=e=>!!(e.ctrlKey||e.metaKey),Rg=(e,t,l)=>Math.min(Math.max(e,t),l);function Ld(e,t,l){let n=l.rows-1,a=l.cols-1;if(l.cols===0)return null;let i=fa(t);switch(t.key){case"ArrowUp":return{row:i?e.row<0?-1:0:Math.max(e.row-1,-1),col:e.col};case"ArrowDown":return n<0?e:{row:i?n:Rg(e.row+1,-1,n),col:e.col};case"ArrowLeft":return{row:e.row,col:i?0:Math.max(e.col-1,0)};case"ArrowRight":return{row:e.row,col:i?a:Math.min(e.col+1,a)};case"Home":return i?{row:n<0?-1:0,col:0}:{row:e.row,col:0};case"End":return i?{row:Math.max(n,-1),col:a}:{row:e.row,col:a};case"PageUp":return{row:e.row<0?-1:Math.max(e.row-l.page,0),col:e.col};case"PageDown":return n<0?e:{row:Rg(e.row+l.page,0,n),col:e.col};default:return null}}function kd(e,t){let l=Math.max(e.row,0),n=Math.max(t.row,0);return{top:Math.min(l,n),bottom:Math.max(l,n),left:Math.min(e.col,t.col),right:Math.max(e.col,t.col)}}var Bd=(e,t,l)=>t>=e.top&&t<=e.bottom&&l>=e.left&&l<=e.right;function Vd(e,t,l,n,a=8){if(n===0)return[0,-1];let i=t>0?t:l*40,r=Math.max(0,Math.floor(e/l)-a),o=Math.min(n-1,Math.ceil((e+i)/l)+a);return[r,o]}function qd(e,t,l,n,a){let i=e*n,r=i+n,o=t,u=t+Math.max(l-a,n);return i<o?i:r>u?r-Math.max(l-a,n):t}function Yd(e,t,l,n,a){let i=n-t,r=e-l;return i>=a||i>=r?"below":"above"}var Yg={text:200,longtext:260,number:112,checkbox:104,select:144,multiselect:208,status:144,person:176,date:136,url:208,rating:128},_i=52,nc=32,da=e=>e.width!==void 0&&e.width>0?e.width:Yg[e.type];function jd(e){let t=[],l=_i;for(let n of e)t.push(l),l+=da(n);return t}function Kd(e){return[...e.filter(t=>t.frozen),...e.filter(t=>!t.frozen)]}var Xd=e=>e.key.length===1&&!fa(e)&&!e.altKey;function i3(e){return/[\t\n\r"]/.test(e)?`"${e.replaceAll('"','""')}"`:e}function Qd(e,t,l,n){let a=[];for(let i=l.top;i<=l.bottom;i+=1){let r=t[i];if(!r)continue;let o=[];for(let u=l.left;u<=l.right;u+=1){let c=e[u];c&&o.push(i3(xi(c,ct(c,r.values[c.field]),n)))}a.push(o.join(" "))}return a.join(`
|
|
10
10
|
`)}function Zd(e){let t=[],l=[],n="",a=!1,i=0,r=e.replace(/\r\n?/g,`
|
|
11
11
|
`);for(;i<r.length;){let o=r[i];if(a){if(o==='"'&&r[i+1]==='"'){n+='"',i+=2;continue}if(o==='"'){a=!1,i+=1;continue}n+=o,i+=1;continue}o==='"'&&n===""?a=!0:o===" "?(l.push(n),n=""):o===`
|
|
12
|
-
`?(l.push(n),t.push(l),l=[],n=""):n+=o,i+=1}return(n!==""||l.length>0)&&(l.push(n),t.push(l)),t}function Jd(e,t,l,n,a){let i={edits:[],refused:[]};if(n.length===0)return i;let r=n.length===1&&n[0].length===1,o=r?l.bottom-l.top+1:n.length,u=r?l.right-l.left+1:Math.max(...n.map(c=>c.length));for(let c=0;c<o;c+=1){let h=t[l.top+c];if(!h)break;for(let g=0;g<u;g+=1){let d=e[l.left+g];if(!d)break;if(d.readOnly)continue;let m=r?n[0][0]:n[c]?.[g];if(m===void 0)continue;let b=Si(d,m,a);if(!b.ok){i.refused.push({rowId:h.id,field:d.field,error:b.error});continue}bi(b.value,ct(d,h.values[d.field]))||i.edits.push({rowId:h.id,field:d.field,value:b.value})}}return i}function Id(e,t,l,n){let a={edits:[],refused:[]};for(let i=l.top;i<=l.bottom;i+=1){let r=t[i];if(r)for(let o=l.left;o<=l.right;o+=1){let u=e[o];if(!u||u.readOnly)continue;let c=u.type==="checkbox"?!1:u.type==="multiselect"?[]:null;if(!bi(ct(u,r.values[u.field]),c)){if(u.required&&u.type!=="checkbox"){a.refused.push({rowId:r.id,field:u.field,error:n.labels.required(u.label)});continue}a.edits.push({rowId:r.id,field:u.field,value:c})}}}return a}function $d(e,t,l){if(e==="forbidden"||e==="capability_not_declared")return l.forbidden;let n=t?.trim();return n||l.couldNotSave}var Pu=(e,t)=>`${e}\0${t}`,Fd=class{constructor(){Ml(this,"waiting",new Map);Ml(this,"refusals",new Map);Ml(this,"listeners",new Set);Ml(this,"failed",0)}begin(e,t){let l=Pu(e,t);this.refusals.delete(l),this.waiting.set(l,(this.waiting.get(l)??0)+1),this.emit();let n=!1;return a=>{if(n)return;n=!0;let i=(this.waiting.get(l)??1)-1;i<=0?this.waiting.delete(l):this.waiting.set(l,i),a.ok||(this.refusals.set(l,a.message),this.failed+=1),this.emit()}}isPending(e,t){return this.waiting.has(Pu(e,t))}refusal(e,t){return this.refusals.get(Pu(e,t))}dismiss(e,t){this.refusals.delete(Pu(e,t))&&this.emit()}get saving(){let e=0;for(let t of this.waiting.values())e+=t;return e}sync(e=!1){return{saving:this.saving,offline:e}}get failures(){return this.failed}resetFailures(){this.failed=0}decorate(e){return this.waiting.size===0&&this.refusals.size===0?[...e]:e.map(t=>{let l=[],n={};for(let a of this.waiting.keys()){let[i,r]=a.split("\0");i===t.id&&l.push(r)}for(let[a,i]of this.refusals){let[r,o]=a.split("\0");r===t.id&&(n[o]=i)}return l.length===0&&Object.keys(n).length===0?t:{...t,pending:[...t.pending??[],...l],refused:{...t.refused,...n}}})}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}emit(){for(let e of this.listeners)e()}};function jg(e,t){let l=e instanceof Date?e:new Date(e);return Number.isNaN(l.getTime())?"":new Intl.DateTimeFormat(t,{hour:"2-digit",minute:"2-digit"}).format(l)}function ac(e,t,l,n){return t.changed(e.by,jg(e.at,n),l)}var ic=e=>e.previous!==void 0;function Wd(e,t,l,n){if(!l)return[...t];let a=e.find(r=>r.field===l.field);if(!a)return[...t];let i=l.direction==="descending"?-1:1;return t.map((r,o)=>({row:r,index:o,value:ct(a,r.values[a.field])})).sort((r,o)=>{let u=c=>c===null||c===""||Array.isArray(c)&&c.length===0;return a.type!=="checkbox"&&(u(r.value)||u(o.value))?u(r.value)===u(o.value)?r.index-o.index:u(r.value)?1:-1:i*qg(a,r.value,o.value,n)||r.index-o.index}).map(({row:r})=>r)}function rc(e,t){return!e||e.field!==t?{field:t,direction:"ascending"}:e.direction==="ascending"?{field:t,direction:"descending"}:null}var il=(e,t)=>`${e}\0${t}`;function Pd(e){let t=new Map;for(let l of e??[]){let n=il(l.rowId,l.field),a=t.get(n);a?a.push(l):t.set(n,[l])}for(let l of t.values())l.sort((n,a)=>+!!a.editing-+!!n.editing);return t}function eh(e){let t=new Map;for(let l of e??[])t.has(l.rowId)||t.set(l.rowId,l);return t}function th(e,t=2){let l=new Map;for(let n of e??[]){let a=l.get(n.field)??[];a.length<t&&!a.some(i=>i.id===n.id)&&a.push(n),l.set(n.field,a)}return l}function lh(e){return e.map(t=>t.name).join(", ")}function nh(e,t,l,n,a=Vr){let{labels:i}=n,r=[`${e.label}.`];e.readOnly&&r.push(i.readOnly(e.label)),t.pending?.includes(e.field)&&r.push(`${i.saving}.`);let o=t.refused?.[e.field];o&&r.push(o);let u=l.map(h=>h.name);u.length>0&&r.push(a.alsoHere(u));let c=t.changed?.[e.field];if(c){let h=ic(c)&&al(e,ct(e,c.previous),n)||null;r.push(ac(c,i,h,n.locale))}return r.join(" ")}function oc(e,t,l,n){let a=e.find(i=>i.type==="text");if(a){let i=al(a,ct(a,t.values[a.field]),n);if(i)return i}return String(l+1)}function B(...e){return e.filter(Boolean).join(" ")}var c3=["todo","in_progress","done","blocked"];function s3(e){if(e.options)return e.options.map(t=>{let l={id:t.id,label:t.label};return t.color&&(l.color=t.color),t.category&&c3.includes(t.category)&&(l.category=t.category),t.archived&&(l.archived=!0),l})}function Zg(e){let t=[];for(let l of e?.columns??[]){if(l.hidden)continue;let n=l.type,a=ec(n),i={field:l.key,label:l.label||l.key,type:a?n:"text"};a||(i.readOnly=!0),l.primary&&(i.frozen=!0),l.required&&(i.required=!0),l.min!==void 0&&(i.min=l.min),l.max!==void 0&&(i.max=l.max),l.max_length!==void 0&&(i.maxLength=l.max_length),l.max_items!==void 0&&(i.maxItems=l.max_items);let r=s3(l);r&&(i.options=r),t.push(i)}return t}function f3(e,t){let l=t.trim();if(l===""||l==="plain")return;let n=/^currency:([A-Za-z]{3})$/.exec(l);if(n){e.numberStyle="currency",e.currency=n[1].toUpperCase();return}if(l==="percent"){e.numberStyle="percent";return}let a=/^0(?:\.(0+))?(%)?$/.exec(l);a&&(e.precision=a[1]?.length??0,a[2]&&(e.numberStyle="percent"))}var jr=e=>{if(e===null||e.trim()==="")return;let t=Number(e);return Number.isFinite(t)?t:void 0},Jg=["field","type","label","format","options","width","readonly","required","frozen","min","max","max-length","max-items","time"];function Ig(e){let t=e("field")?.trim();if(!t)return null;let l=e("type")?.trim()??"text",n=ec(l),a={field:t,label:e("label")?.trim()||t,type:n?l:"text"};(!n||e("readonly")!==null)&&(a.readOnly=!0),e("required")!==null&&(a.required=!0),e("frozen")!==null&&(a.frozen=!0),e("time")!==null&&(a.time=!0);let i=jr(e("width"));i!==void 0&&(a.width=i);let r=jr(e("min"));r!==void 0&&(a.min=r);let o=jr(e("max"));o!==void 0&&(a.max=o);let u=jr(e("max-length"));u!==void 0&&(a.maxLength=u);let c=jr(e("max-items"));c!==void 0&&(a.maxItems=c);let h=e("options");h&&(a.options=Hd(h));let g=e("format");return g&&a.type==="number"&&f3(a,g),a}function $g(e){let t=e?.trim();return t?t.startsWith("-")?{field:t.slice(1),direction:"descending"}:{field:t,direction:"ascending"}:null}function Fg(e,t){return t===void 0?[...e]:e.map((l,n)=>n<t?{...l,frozen:!0}:l)}var ah=e=>e!==void 0&&Br(e)?e:void 0;function ih(e){let t={id:e.id,name:e.displayName,kind:e.kind},l=ah(e.avatar?.hue);return l&&(t.hue=l),e.avatar?.character&&(t.character=e.avatar.character),t}function Wg(e,t){return e.filter(l=>l.status!=="away"&&l.viewer.id!==t)}function Pg(e,t){return Rd(e.map(l=>({id:l.session,kind:l.viewer.kind,hue:ah(l.color)??ah(l.viewer.avatar?.hue)})),t)}function ev(e,t,l,n){let a=[];for(let i of Wg(e,l)){let r=i.state.editing,o=r??i.state.focus;!o||o.collection!==t||!o.doc||!o.field||a.push({rowId:o.doc,field:o.field,id:i.session,name:i.viewer.displayName,kind:i.viewer.kind,hue:n.get(i.session)??"purple",editing:!!r,idle:i.status==="idle"})}return a}function tv(e,t,l){return Wg(e,t).map(n=>{let a={id:n.session,seat:n.viewer.id,name:n.viewer.displayName,kind:n.viewer.kind,activity:n.state.editing?"editing":n.status==="idle"?"idle":"viewing"},i=l.get(n.session);return i&&(a.hue=i),n.viewer.avatar?.character&&(a.character=n.viewer.avatar.character),a})}var Q=ie(cl(),1);var nv=ie(ze(),1),lv={xs:12,sm:14,md:16,lg:20,xl:24},av=1.75,d3=`var(--crewlet-glyph-stroke, ${av})`;function h3(e){return e===void 0?"1em":typeof e=="number"?`${e}px`:e in lv?`${lv[e]}px`:e}function bt({size:e,title:t,filled:l=!1,fillable:n,className:a,style:i,children:r,...o}){let u=h3(e);return(0,nv.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:u,height:u,stroke:"currentColor",...t?{role:"img","aria-label":t}:{"aria-hidden":!0,focusable:!1},className:a===void 0?"crewlet-glyph":`crewlet-glyph ${a}`,...o,viewBox:"0 0 24 24",fill:n&&l?"currentColor":"none",strokeWidth:av,strokeLinecap:"round",strokeLinejoin:"round",style:{...i,strokeWidth:d3},children:r})}var V=ie(ze(),1);function rh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M12 5v14"}),(0,V.jsx)("path",{d:"m19 12-7 7-7-7"})]})}function oh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"m5 12 7-7 7 7"}),(0,V.jsx)("path",{d:"M12 19V5"})]})}function cc(e){return(0,V.jsx)(bt,{...e,fillable:!1,children:(0,V.jsx)("path",{d:"M20 6 9 17l-5-5"})})}function Ei(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("line",{x1:"12",x2:"12",y1:"8",y2:"12"}),(0,V.jsx)("line",{x1:"12",x2:"12.01",y1:"16",y2:"16"})]})}function uh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("path",{d:"m16 9-5.5 5.5L8 12"})]})}function ch(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M15 3h6v6"}),(0,V.jsx)("path",{d:"M10 14 21 3"}),(0,V.jsx)("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"})]})}function sc(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("path",{d:"M12 16v-4"}),(0,V.jsx)("path",{d:"M12 8h.01"})]})}function sh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}),(0,V.jsx)("path",{d:"m15 5 4 4"})]})}function fh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M5 12h14"}),(0,V.jsx)("path",{d:"M12 5v14"})]})}function dh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}),(0,V.jsx)("path",{d:"M3 3v5h5"}),(0,V.jsx)("path",{d:"M12 7v5l4 2"})]})}function hh(e){return(0,V.jsx)(bt,{...e,fillable:!0,children:(0,V.jsx)("path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"})})}function ph(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}),(0,V.jsx)("path",{d:"M12 9v4"}),(0,V.jsx)("path",{d:"M12 17h.01"})]})}function mh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M18 6 6 18"}),(0,V.jsx)("path",{d:"m6 6 12 12"})]})}var It=ie(ze(),1),p3={neutral:(0,It.jsx)(sc,{size:"md"}),info:(0,It.jsx)(sc,{size:"md"}),success:(0,It.jsx)(uh,{size:"md"}),warning:(0,It.jsx)(ph,{size:"md"}),danger:(0,It.jsx)(Ei,{size:"md"})},Kr=({variant:e="info",title:t,icon:l,layout:n="card",action:a,live:i,className:r,children:o,...u})=>(0,It.jsxs)("div",{...u,"aria-live":i,className:B("crewlet-callout",`crewlet-callout--${e}`,`crewlet-callout--${n}`,r),children:[(0,It.jsx)("span",{className:"crewlet-callout__icon","aria-hidden":!0,children:l??p3[e]}),(0,It.jsxs)("div",{className:"crewlet-callout__content",children:[t?(0,It.jsx)("span",{className:"crewlet-callout__title",children:t}):null,o]}),a?(0,It.jsx)("div",{className:"crewlet-callout__action",children:a}):null]});var m3=ie(ze(),1);function Cn(e){return`crewlet-presence-hue--${e}`}var mc=ie(cl(),1);var fc=ie(ze(),1),wh={paths:["M543.42 868.92 l-34.44 -0.24 0 -58.77 0 -58.77 -28.92 0 -28.80 0 -40.20 -39.61 c-119.78 -118.25 -181.49 -179.97 -204.30 -204.30 -15.87 -16.93 -82.75 -96.74 -92.51 -110.38 l-3.76 -5.17 26.80 -18.46 c14.69 -10.11 34.09 -23.51 43.14 -29.86 55.25 -38.32 70.29 -48.43 71.12 -47.49 0.47 0.47 11.64 13.87 24.69 29.74 13.17 15.87 27.98 33.62 32.80 39.50 4.94 5.88 21.63 26.10 37.15 44.90 15.52 18.81 28.56 34.21 29.15 34.21 0.47 0.12 0.82 -30.44 0.82 -67.83 l0 -68.06 37.26 -34.56 c43.38 -40.20 61.83 -57.13 75.11 -69 l9.52 -8.46 261.78 0 261.90 0 47.14 45.73 c25.98 25.16 52.43 51.02 58.66 57.36 l11.52 11.52 0.24 67.94 0.35 67.83 31.74 -40.79 c17.51 -22.33 34.91 -45.02 38.91 -50.19 15.16 -20.34 44.32 -57.72 45.14 -58.07 0.71 -0.24 104.97 75.82 126.83 92.51 2.23 1.65 4.58 3.41 5.17 3.76 1.65 1.18 -7.99 14.22 -46.08 62.07 -35.38 44.32 -49.84 61.13 -92.39 106.97 -19.28 20.81 -38.91 41.73 -148.70 157.40 l-34.68 36.56 -26.45 0.12 c-19.04 0 -26.92 0.35 -27.98 1.41 -1.06 1.06 -1.41 15.05 -1.41 55.72 l0 54.31 -34.91 0.47 c-19.28 0.24 -53.72 0.24 -76.41 0 l-41.49 -0.47 0 -55.72 0 -55.72 -99.33 0 -99.33 0 -0.24 56.19 -0.35 56.07 -39.97 0 c-21.98 0 -55.48 -0.12 -74.29 -0.35z m94.74 -13.87 l7.17 -0.82 0 -54.89 c0 -49.02 0.24 -55.13 1.88 -55.72 1.06 -0.35 51.84 -0.71 112.85 -0.71 l110.97 0 0 55.84 0 55.84 62.89 0 62.89 0 0 -55.84 0 -55.84 31.50 0 31.50 0 14.69 -14.93 c30.80 -31.50 113.20 -118.49 144.47 -152.58 48.66 -53.01 81.34 -90.28 104.85 -119.43 22.80 -28.45 44.43 -56.42 44.43 -57.48 0 -0.59 -2 -2.47 -4.35 -4.23 -2.47 -1.76 -7.05 -5.17 -10.34 -7.64 -3.17 -2.35 -16.93 -12.34 -30.56 -22.22 -13.52 -9.87 -33.50 -24.57 -44.43 -32.68 -16.34 -12.11 -19.98 -14.34 -21.39 -13.17 -0.94 0.82 -5.88 6.82 -10.81 13.40 -4.94 6.47 -13.99 18.46 -20.10 26.57 -6.23 8.11 -26.57 34.44 -45.37 58.54 -18.81 24.10 -36.56 47.02 -39.50 50.78 -5.29 7.05 -5.29 7.05 -11.40 7.05 l-6.23 0 0 -79.58 0 -79.58 -37.85 -37.03 c-20.92 -20.45 -45.14 -44.08 -53.95 -52.66 l-15.99 -15.63 -256.84 0 -256.73 0 -47.49 44.20 c-26.21 24.33 -51.13 47.49 -55.60 51.37 l-7.88 7.05 0 79.11 0 79.23 -6.35 0 -6.35 0 -48.66 -58.54 c-26.80 -32.09 -55.95 -67.24 -64.89 -78.17 -8.93 -10.81 -16.69 -19.63 -17.16 -19.63 -0.94 0 -8.58 5.17 -34.32 22.92 -34.21 23.74 -46.08 31.86 -62.65 43.26 -10.34 7.05 -19.28 13.28 -19.87 13.87 -0.59 0.47 2.35 5.05 6.47 10.11 13.87 16.93 53.13 63.12 66.77 78.40 21.86 24.57 83.81 87.69 145.41 148.23 31.62 31.03 68.65 67.36 82.28 80.76 l24.69 24.45 33.50 0.24 33.38 0.35 0.35 59.13 0.24 59.01 53.37 0 c29.27 0 56.54 -0.35 60.54 -0.71z","M535.78 783.81 l-0.35 -59.13 -36.67 0 -36.67 0 -6.82 -6.47 c-48.78 -46.43 -176.91 -173.03 -210.41 -207.82 -24.69 -25.74 -75.70 -81.70 -93.69 -102.85 -3.29 -3.88 -5.29 -7.17 -4.70 -7.76 1.29 -1.06 58.30 -40.32 82.05 -56.42 l16.34 -11.05 3.64 4.47 c11.05 13.87 76.99 92.51 98.98 118.14 l25.74 29.97 15.63 0.35 15.52 0.35 0 -82.87 0 -82.75 50.55 -46.67 c27.86 -25.74 50.55 -47.14 50.55 -47.72 0 -0.59 46.78 -1.06 111.55 -1.06 l111.55 0 15.52 14.81 c15.28 14.58 15.52 14.69 17.98 12.58 1.29 -1.18 8.46 -7.76 15.75 -14.58 l13.40 -12.46 17.75 -0.71 c9.76 -0.47 58.77 -0.82 108.85 -0.82 l90.98 0 14.34 13.75 c7.76 7.64 24.57 23.86 37.15 36.20 12.58 12.34 29.15 28.45 36.67 35.85 l13.87 13.40 0.24 82.87 0.35 82.99 14.22 0.35 14.34 0.35 4.47 -5.64 c2.47 -3.06 11.52 -14.11 19.98 -24.45 8.46 -10.34 30.56 -38.32 49.14 -62.30 43.85 -56.42 46.20 -59.36 48.43 -59.36 2.12 0 4.82 1.88 47.96 33.27 43.02 31.27 45.37 33.03 45.37 34.09 0 0.82 -39.03 46.20 -62.42 72.53 -62.42 70.29 -106.50 117.67 -184.08 197.60 l-50.78 52.43 -13.28 0.71 c-7.29 0.47 -23.98 0.82 -37.03 0.82 l-23.86 0 0 57.01 0 57.01 -49.37 0 -49.37 0 0 -56.42 0 -56.42 -114.37 0 c-63.01 0 -120.13 0.35 -126.95 0.82 l-12.58 0.71 0 55.72 0 55.60 -47.61 0 -47.61 0 -0.24 -59.01z m443.16 -373.22 l-0.35 -119.66 -223.93 0.12 -223.93 0.12 -0.35 119.43 -0.24 119.55 224.52 0 224.52 0 -0.24 -119.55z","M546.36 516.39 c-0.24 -0.59 -0.47 -4.94 -0.35 -9.76 0 -4.82 0.12 -52.54 0.35 -106.15 l0.24 -97.21 209.59 0.24 209.47 0.35 0.35 106.73 0.24 106.62 -209.71 0 c-115.43 0 -209.94 -0.35 -210.18 -0.82z m121.07 -100.50 l-0.35 -66.18 -34.32 -0.35 -34.44 -0.24 0 66.41 0 66.41 34.68 0 34.68 0 -0.24 -66.06z m260.96 0 l-0.35 -66.18 -34.09 0 -34.09 0 0 10.93 c0 5.88 0.12 35.62 0.35 66.06 l0.24 55.25 34.09 0 34.09 0 -0.24 -66.06z"],box:{left:110.48999999999992,top:196.30999999999992,right:1389.0800000000002,bottom:869.2899999999998},centroid:{x:755.6746766446299,y:497.3295661269271}},hc=e=>e.reduce((t,l,n)=>{let a=e[(n+1)%e.length];return t+l[0]*a[1]-a[0]*l[1]},0);function iv(e,t,l){for(let n of e)n.forEach((a,i)=>{let r=n[(i+1)%n.length];a[1]!==r[1]&&l.push(a[1]<r[1]?{x0:a[0],y0:a[1],x1:r[0],y1:r[1],wind:1,add:t}:{x0:r[0],y0:r[1],x1:a[0],y1:a[1],wind:-1,add:t})})}var Ti=(e,t)=>t===e.y0?e.x0:t===e.y1?e.x1:e.x0+(t-e.y0)*(e.x1-e.x0)/(e.y1-e.y0);function g3(e){let t=new Set;for(let l of e)t.add(l.y0),t.add(l.y1);for(let l=0;l<e.length;l+=1){let n=e[l];for(let a=l+1;a<e.length&&e[a].y0<n.y1;a+=1){let i=e[a],r=Math.max(n.y0,i.y0),o=Math.min(n.y1,i.y1);if(o<=r)continue;let u=Ti(n,r)-Ti(i,r),c=Ti(n,o)-Ti(i,o);u*c<0&&t.add(r+(o-r)*u/(u-c))}}return[...t].sort((l,n)=>l-n)}var v3=1e-9;function y3(){let e=new Map;return(t,l)=>{let n=e.get(t);n||e.set(t,n=[]);for(let a of n)if(Math.abs(a-l)<=v3)return a;return n.push(l),l}}function b3(e,t,l,n){let a=e.map(h=>({e:h,a:n(t,Ti(h,t)),b:n(l,Ti(h,l))})).sort((h,g)=>h.a+h.b-(g.a+g.b)),i=[],r=0,o=0,u=!1,c=[0,0];for(let h=0;h<a.length;){let{a:g,b:d}=a[h];for(;h<a.length&&a[h].a===g&&a[h].b===d;h+=1){let{e:b}=a[h];b.add?r+=b.wind:o+=b.wind}let m=r!==0&&o===0;m&&!u?c=[g,d]:!m&&u&&i.push({left:c,right:[g,d]}),u=m}return i}function rv(e,t){let l=[],n=0;for(let[a,i]of e){let r=a;for(;n<t.length&&t[n][1]<=r;)n+=1;for(let o=n;o<t.length&&t[o][0]<i&&r<i;o+=1){let[u,c]=t[o];u>r&&l.push([r,u]),r=Math.max(r,c)}r<i&&l.push([r,i])}return l}function w3(e,t){let l=[];return t.forEach((n,a)=>{let i=e[a],r=e[a+1];for(let{left:o,right:u}of n)l.push([[u[0],i],[u[1],r]]),l.push([[o[1],r],[o[0],i]])}),e.forEach((n,a)=>{let i=a>0?t[a-1].map(({left:o,right:u})=>[o[1],u[1]]):[],r=a<t.length?t[a].map(({left:o,right:u})=>[o[0],u[0]]):[];for(let[o,u]of rv(r,i))l.push([[o,n],[u,n]]);for(let[o,u]of rv(i,r))l.push([[u,n],[o,n]])}),l.filter(([n,a])=>n[0]!==a[0]||n[1]!==a[1])}var xh=1e-9;function x3(e){let t=[...e],l=!0;for(;l&&t.length>=3;){l=!1;let n=[];for(let a=0;a<t.length;a+=1){let i=n.length>0?n[n.length-1]:t[t.length-1],r=t[a],o=t[(a+1)%t.length],u=r[0]-i[0],c=r[1]-i[1],h=o[0]-r[0],g=o[1]-r[1],d=Math.hypot(u,c)<xh,m=Math.abs(u*g-c*h)<xh;if(d||m){l=!0;continue}n.push(r)}t=n}return t}function S3(e){let t=i=>`${i[0]} ${i[1]}`,l=new Map;e.forEach(([i],r)=>{let o=l.get(t(i));o?o.push(r):l.set(t(i),[r])});let n=new Uint8Array(e.length),a=[];return e.forEach((i,r)=>{if(n[r])return;let o=[],u=r;for(;u!==void 0;){n[u]=1;let[c,h]=e[u];if(o.push(c),h[0]===i[0][0]&&h[1]===i[0][1])break;u=l.get(t(h))?.find(g=>!n[g])}a.push(o)}),a.map(x3).filter(i=>i.length>=3&&Math.abs(hc(i))>xh)}function Sh(e,t=[]){let l=[];iv(e,!0,l),iv(t,!1,l),l.sort((u,c)=>u.y0-c.y0);let n=g3(l),a=y3(),i=[],r=0,o=[];for(let u=0;u+1<n.length;u+=1){let c=n[u],h=n[u+1];for(;r<l.length&&l[r].y0<=c;)o.push(l[r++]);o=o.filter(g=>g.y1>c),i.push(b3(o,c,h,a))}return S3(w3(n,i))}var _3=e=>e.reduce((t,l)=>t+hc(l),0)/2;function E3(e){let t=0,l=0;for(let a of e)a.forEach((i,r)=>{let o=a[(r+1)%a.length],u=i[0]*o[1]-o[0]*i[1];t+=(i[0]+o[0])*u,l+=(i[1]+o[1])*u});let n=6*_3(e);return[t/n,l/n]}var gh=e=>hc(e)<0?e.reverse():e;function pv(e,t,l=4){let n=[];for(let a of e)a.forEach((i,r)=>{let o=a[(r+1)%a.length],u=a[(r+2)%a.length],c=Math.hypot(o[0]-i[0],o[1]-i[1]),h=(o[1]-i[1])/c,g=-(o[0]-i[0])/c,d=Math.hypot(u[0]-o[0],u[1]-o[1]),m=(u[1]-o[1])/d,b=-(u[0]-o[0])/d,x=t;n.push(gh([[i[0]+h*x,i[1]+g*x],[o[0]+h*x,o[1]+g*x],[o[0]-h*x,o[1]-g*x],[i[0]-h*x,i[1]-g*x]]));let N=(o[0]-i[0])*(u[1]-o[1])-(o[1]-i[1])*(u[0]-o[0]);if(N===0)return;let f=N>0?1:-1,s=[o[0]+f*h*x,o[1]+f*g*x],p=[o[0]+f*m*x,o[1]+f*b*x],y=h+m,M=g+b,O=y*y+M*M;if(O>0&&2/Math.sqrt(O)<=l){let A=[o[0]+f*y*2*x/O,o[1]+f*M*2*x/O];n.push(gh([o,s,A,p]))}else n.push(gh([o,s,p]))});return n}var ov=e=>Math.round(e*100)/100;function uv(e){return e.map(t=>`M${t.map(([n,a])=>`${ov(n)} ${ov(a)}`).filter((n,a,i)=>n!==i[a-1]).join("L")}Z`).join("")}var mv=["crewlet","hexlet","peaklet","prismlet","towerlet","bricklet","gemlet","coglet","pluslet","shieldlet","stacklet","sparklet","cloudlet","foxlet","rocketlet","crownlet","cactlet","wisplet","heartlet","flasklet","chiplet","duolet","chatlet","pagelet","archlet","dashlet","octlet","conelet","hivelet","folderlet"],Qr=e=>typeof e=="string"&&mv.includes(e),dc=96,T3=1.35,gv=.9,Xr=1.3,M3=2,vh={full:{width:.164,height:.62},compact:{width:.19,height:.68},offset:.312},yh={half:3.2,depth:2.6},cv=e=>Math.round(e*100)/100;function sv(e,t){let l=[];return e.forEach((n,a)=>{let i=typeof t=="number"?t:t[a]??0;if(!i){l.push(n);return}let r=o=>{let u=o[0]-n[0],c=o[1]-n[1],h=Math.min(i/Math.hypot(u,c),.45);return[n[0]+u*h,n[1]+c*h]};l.push(r(e[(a-1+e.length)%e.length]),r(e[(a+1)%e.length]))}),l}var fv=e=>`M${e.map(([t,l])=>`${cv(t)} ${cv(l)}`).join("L")}Z`;function be(e,t=0){let l=typeof t=="number"?e.map(()=>t):t;return hc(e)<0?sv([...e].reverse(),[...l].reverse()):sv(e,l)}var le=(e,t,l,n,a=0)=>be([[e,t],[e+l,t],[e+l,t+n],[e,t+n]],a),ye=(e,t,l,n=10)=>[le(e,l,n,dc-l),le(t,l,n,dc-l)];function A3(e,t,l,n,a){let i=[];for(let r=0;r<a;r+=1){let o=(r*360/a-90)*(Math.PI/180);for(let[u,c]of[[n,-15],[l,-8.5],[l,8.5],[n,15]]){let h=o+c*(Math.PI/180);i.push([e+u*Math.cos(h),t+u*Math.sin(h)])}}return be(i)}function N3(e){let t=e.flat(),l=t.map(([r])=>r),n=t.map(([,r])=>r),a=Math.min(...l),i=Math.min(...n);return{x:a,y:i,width:Math.max(...l)-a,height:Math.max(...n)-i}}var z3=([e,t,l,n])=>({x:e,y:t,width:l,height:n}),vv=new WeakMap;function ce(e){let t=e.holes??[],l,n={kind:"drawn",name:e.name,shape:e.shape,shapes:e.shapes.map(fv),holes:t.map(fv),visor:z3(e.visor),notch:e.notch===void 0?null:[e.notchX??50,e.notch],get bounds(){return l??(l=N3([...Th(n),...yv(n)]))}};return vv.set(n,{parts:e.shapes,holes:t}),n}var pc=e=>vv.get(e);function Th(e){let t=pc(e);return t.silhouette??(t.silhouette=Sh(t.parts))}function yv(e){let t=pc(e);return t.reach??(t.reach=pv(Th(e),gv+T3))}var _h=.095,bv=760,wv=869,Eh=(e,t)=>[50+(e-bv)*_h,dc+(t-wv)*_h],O3=Eh(wh.centroid.x,wh.centroid.y);function C3(){let{paths:e,box:t}=wh,[l,n]=Eh(t.left,t.top),[a,i]=Eh(t.right,t.bottom);return{kind:"mark",name:"Crewlet",shape:"The original mark, arms raised",transform:`translate(50 ${dc}) scale(${_h}) translate(${-bv} ${-wv})`,keyline:e[0],body:[e[1],e[2]],bounds:{x:l,y:n,width:a-l,height:i-n}}}var Mh={crewlet:C3(),hexlet:ce({name:"Hexlet",shape:"Hexagon with pointed flanks",shapes:[be([[30,22],[70,22],[86,54],[70,86],[30,86],[14,54]],[5,5,4,4,4,4]),...ye(34,56,84)],visor:[28,38,44,20],notch:22}),peaklet:ce({name:"Peaklet",shape:"Pentagon with a peaked roof",shapes:[be([[50,12],[82,36],[82,86],[18,86],[18,36]],[6,5,4,4,5]),...ye(28,62,84)],visor:[26,44,48,20]}),prismlet:ce({name:"Prismlet",shape:"Triangle with cut tips",shapes:[be([[50,10],[90,86],[10,86]],[9,8,8]),...ye(28,62,84)],visor:[31,54,38,18]}),towerlet:ce({name:"Towerlet",shape:"Tall pillar, narrow stance",shapes:[le(32,12,36,74,[8,8,4,4]),...ye(35,55,84)],visor:[36,24,28,16],notch:12}),bricklet:ce({name:"Bricklet",shape:"Wide, low slab",shapes:[le(10,42,80,44,[9,9,6,6]),...ye(22,68,84)],visor:[21,50,58,19],notch:42}),gemlet:ce({name:"Gemlet",shape:"Diamond on its point",shapes:[be([[50,6],[90,48],[50,90],[10,48]],[7,7,16,7]),...ye(40,52,76,8)],visor:[27,38,46,20]}),coglet:ce({name:"Coglet",shape:"Eight-tooth gear",shapes:[A3(50,52,37,31,8),...ye(36,54,78)],visor:[30,40,40,18]}),pluslet:ce({name:"Pluslet",shape:"Cross with squared arms",shapes:[le(34,14,32,72,[7,7,0,0]),le(10,34,80,30,7),...ye(37,53,84)],visor:[20,40,60,18],notch:14}),shieldlet:ce({name:"Shieldlet",shape:"Flat crown, pointed base",shapes:[be([[16,16],[84,16],[84,54],[50,92],[16,54]],[9,9,5,14,5]),...ye(41,51,79,8)],visor:[26,28,48,20],notch:16}),stacklet:ce({name:"Stacklet",shape:"Stepped crown, square base",shapes:[be([[34,12],[66,12],[66,26],[82,26],[82,86],[18,86],[18,26],[34,26]],[4,4,0,5,4,4,5,0]),...ye(28,62,84)],visor:[26,40,48,20],notch:12}),sparklet:ce({name:"Sparklet",shape:"Faceted drop",shapes:[be([[50,8],[80,48],[78,74],[64,86],[36,86],[22,74],[20,48]],[6,4,2,2,2,2,4]),...ye(36,54,84)],visor:[30,48,40,18]}),cloudlet:ce({name:"Cloudlet",shape:"Three-lobed cloud",shapes:[le(14,44,72,42,[0,0,8,8]),le(16,30,32,32,9),le(33,18,34,34,10),le(56,32,30,30,9),...ye(30,60,84)],visor:[24,48,52,18],notch:18}),foxlet:ce({name:"Foxlet",shape:"Square body, pointed ears",shapes:[le(18,34,64,52,6),be([[20,36],[26,12],[44,36]],[0,4,0]),be([[56,36],[74,12],[80,36]],[0,4,0]),...ye(28,62,84)],visor:[26,46,48,20]}),rocketlet:ce({name:"Rocketlet",shape:"Nose cone and swept fins",shapes:[be([[50,6],[66,26],[66,80],[34,80],[34,26]],[5,3,3,3,3]),be([[34,54],[34,80],[18,90],[18,70]],[0,0,3,3]),be([[66,54],[82,70],[82,90],[66,80]],[0,3,3,0]),...ye(37,55,80,8)],visor:[37,32,26,16]}),crownlet:ce({name:"Crownlet",shape:"Three-point crown",shapes:[le(18,40,64,46,[0,0,6,6]),be([[18,44],[18,18],[34,32],[50,12],[66,32],[82,18],[82,44]],[0,3,0,3,0,3,0]),...ye(28,62,84)],visor:[27,48,46,20]}),cactlet:ce({name:"Cactlet",shape:"Trunk with two raised arms",shapes:[le(32,12,36,74,[10,10,0,0]),le(16,50,18,9,[0,0,0,3]),le(16,28,9,31,[4.5,4.5,0,3]),le(66,58,18,9,[0,0,3,0]),le(75,38,9,29,[4.5,4.5,3,0]),...ye(36,54,84)],visor:[37,26,26,16],notch:12}),wisplet:ce({name:"Wisplet",shape:"Tall ghost with a zigzag hem",shapes:[be([[16,10],[84,10],[84,92],[72.5,82],[61,92],[50,82],[39,92],[27.5,82],[16,92]],[14,14,2,0,2,0,2,0,2])],visor:[26,28,48,20],notch:10}),heartlet:ce({name:"Heartlet",shape:"Faceted heart",shapes:[be([[50,26],[62,14],[78,14],[90,26],[90,44],[50,84],[10,44],[10,26],[22,14],[38,14]],[0,3,3,3,4,6,4,3,3,3]),...ye(41,51,74,8)],visor:[23,30,54,18]}),flasklet:ce({name:"Flasklet",shape:"Lab flask with a narrow neck",shapes:[le(35,6,30,7,2),le(40,10,20,22),be([[40,28],[60,28],[86,80],[86,86],[14,86],[14,80]],[0,0,6,3,3,6]),...ye(26,64,84)],visor:[33,54,34,14],notch:6}),chiplet:ce({name:"Chiplet",shape:"Square chip with pins",shapes:[le(24,20,52,60,6),...[31,47,63].map(e=>le(e,11,6,10)),...[32,47,62].map(e=>le(15,e,10,6)),...[32,47,62].map(e=>le(75,e,10,6)),...[31,47,63].map(e=>le(e,78,6,18))],holes:[le(29,70,5,5)],visor:[31,34,38,18]}),duolet:ce({name:"Duolet",shape:"Small head on a wide body",shapes:[le(30,10,40,34,8),le(18,40,64,46,6),...ye(28,62,84)],visor:[36,19,28,15],notch:10}),chatlet:ce({name:"Chatlet",shape:"Speech bubble with a tail",shapes:[le(14,22,72,54,8),be([[26,72],[46,72],[22,94]],[0,0,2])],visor:[24,34,52,22],notch:22}),pagelet:ce({name:"Pagelet",shape:"Page with a folded corner",shapes:[be([[20,10],[64,10],[80,26],[80,86],[20,86]],[4,0,0,4,4]),...ye(28,62,84)],holes:[le(63.3,10,1.4,17.4),le(63.3,25.3,17,1.4)],visor:[27,36,46,20],notch:10}),archlet:ce({name:"Archlet",shape:"Gate with built-in legs",shapes:[be([[16,18],[84,18],[84,96],[64,96],[64,74],[36,74],[36,96],[16,96]],[8,8,0,0,4,4,0,0])],visor:[25,30,50,22],notch:18}),dashlet:ce({name:"Dashlet",shape:"Body leaning forward",shapes:[be([[29,14],[87,14],[71,86],[13,86]],6),...ye(20,48,84)],visor:[31.5,28,42,20],notch:14,notchX:58}),octlet:ce({name:"Octlet",shape:"Regular octagon",shapes:[le(16,16,68,68,20),...ye(35,55,81)],visor:[26,36,48,22],notch:16}),conelet:ce({name:"Conelet",shape:"Narrow crown, wide base",shapes:[be([[30,12],[70,12],[88,84],[12,84]],[6,6,5,5]),...ye(26,64,82)],visor:[28,40,44,20],notch:12}),hivelet:ce({name:"Hivelet",shape:"Upright honeycomb cell",shapes:[be([[50,6],[84,24],[84,72],[50,90],[16,72],[16,24]],[6,4,4,6,4,4]),...ye(40,52,80,8)],visor:[25,36,50,20]}),folderlet:ce({name:"Folderlet",shape:"Folder with a tab",shapes:[be([[12,14],[38,14],[50,26],[88,26],[88,84],[12,84]],[4,0,0,6,5,5]),...ye(26,64,82)],visor:[24,40,52,22]})},dv=.5,bh=(e,t,l,n)=>[[e,t],[e+l,t],[e+l,t+n],[e,t+n]];function R3(e){let t=1/0;return e.forEach((l,n)=>{let a=e[(n+1)%e.length],i=Math.hypot(a[0]-l[0],a[1]-l[1]);if(i===0)return;let r=Math.max(...e.map(o=>Math.abs((a[0]-l[0])*(o[1]-l[1])-(a[1]-l[1])*(o[0]-l[0]))/i));t=Math.min(t,r)}),t}function D3(e,t){let{visor:l,notch:n}=e,a=t==="full",i=a?vh.full:vh.compact,r=l.width*i.width,o=l.height*i.height,u=l.y+(l.height-o)/2,c=l.x+l.width/2,h=l.width*vh.offset,g=[c-h,c+h].map(d=>bh(d-r/2,u,r,o));n&&g.push([[n[0]-yh.half,n[1]-1],[n[0]+yh.half,n[1]-1],[n[0],n[1]+yh.depth]]);for(let d of pc(e).holes)(a||R3(d)>M3)&&g.push(d);if(a){let d=Xr/2;g.push(bh(l.x-d,l.y-d,l.width+Xr,l.height+Xr)),g.push([...bh(l.x+d,l.y+d,l.width-Xr,l.height-Xr)].reverse())}return g}function xv(e,t){let l=e.x+e.width/2,n=e.y+e.height/2,a=l+dv*(t[0]-l),i=n+dv*(t[1]-n),r=Math.max(e.width+2*Math.abs(a-l),e.height+2*Math.abs(i-n));return{x:a-r/2,y:i-r/2,width:r,height:r}}function G3(e){let{parts:t}=pc(e),l=Th(e),n={},a=r=>uv(Sh(t,D3(e,r))),i=()=>uv(Sh([...l,...yv(e)],[...l,...pv(l,gv)]));return{frame:xv(e.bounds,E3(l)),paths:r=>n[r]??(n[r]=r==="full"?[i(),a("full")]:[a("compact")])}}var hv=new Map;function H3(e){let t=hv.get(e);if(t)return t;let l=Mh[e];if(l.kind==="mark"){let n=[l.keyline,...l.body];t={frame:xv(l.bounds,O3),paths:a=>a==="full"?n:l.body}}else t=G3(l);return hv.set(e,t),t}var U3=e=>Math.round(e*100)/100,L3=({character:e,detail:t="full",...l})=>{let n=Mh[e],{frame:a,paths:i}=H3(e),r=i(t).map(o=>(0,fc.jsx)("path",{d:o},o));return(0,fc.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:[a.x,a.y,a.width,a.height].map(U3).join(" "),width:"1em",height:"1em","aria-hidden":"true",focusable:"false","data-character":e,"data-detail":t,...l,children:(0,fc.jsx)("g",{fill:"currentColor",transform:n.kind==="mark"?n.transform:void 0,children:r})})},Ah=L3;var We=ie(ze(),1);var k3={working:"working",needs:"needs you",stopped:"stopped"},Nh={xs:20,sm:26,md:32,lg:40};var B3=/^agent(?:[\s._-]+)(?=\S)/i;function V3(e,t){if(e===void 0||t!=="agent")return e;let l=e.replace(B3,"");return l.trim()?l:e}var q3=56,Y3=e=>{if(!e)return"?";let t=e.trim().split(/[\s\-_.]+/).filter(Boolean);if(t.length===0)return"?";let l=i=>(Array.from(i)[0]??"").toUpperCase();if(t.length>=2)return t.slice(0,2).map(l).join("")||"?";let n=t[0],a=n.split(/(?<=\p{Ll})(?=\p{Lu})/u);return a.length>=2?a.slice(0,2).map(l).join(""):Array.from(n).slice(0,2).map(i=>i.toUpperCase()).join("")||"?"},j3=10,K3=e=>{let t=0;for(let l=0;l<e.length;l+=1)t=t*31+e.charCodeAt(l)>>>0;return t%j3};function X3(e){return typeof e=="number"?e:Nh[e]}var Zr=({src:e,name:t,size:l="md",kind:n="agent",tone:a="neutral",ring:i,status:r,mark:o,markLabel:u,decorative:c=!1,colorSeed:h,character:g,hue:d,icon:m,className:b,style:x,...N})=>{let[f,s]=(0,mc.useState)(!1);(0,mc.useEffect)(()=>{s(!1)},[e]);let p=typeof l=="number"?null:l,y=X3(l),M=p===null?{"--crewlet-avatar-size":`${y}px`,fontSize:Math.max(9,Math.round(y*.36))}:{},O=a==="seeded"?K3(h??t??""):null,A=r===void 0&&o!==void 0&&o!==null,_=r!==void 0||A,Z=r!==void 0?k3[r]:A?u:void 0,C=t?`${t} avatar`:"Avatar",R=Z?`${C}, ${Z}`:C,K=B("crewlet-avatar",`crewlet-avatar--${n}`,p===null?null:`crewlet-avatar--${p}`,_?"crewlet-avatar--notched":null,i===void 0||_?null:`crewlet-avatar--ring-${i}`,_?null:b),T=_?M:{...M,...x};function j(){return g!==void 0&&n==="agent"?(0,We.jsx)("span",{...N,className:B(K,"crewlet-avatar--character",d===void 0?"crewlet-avatar--neutral":`crewlet-avatar--hue-${d}`),style:T,role:c?void 0:"img","aria-hidden":c?!0:void 0,"aria-label":c?void 0:R,children:(0,We.jsx)(Ah,{className:"crewlet-avatar__character",character:g,detail:y>=q3?"full":"compact"})}):e&&!f?(0,We.jsx)("img",{...N,className:B(K,"crewlet-avatar--image"),style:T,src:e,alt:c?"":Z?`${t??""}, ${Z}`:t??"","aria-hidden":c?!0:void 0,onError:()=>s(!0)}):(0,We.jsx)("span",{...N,className:B(K,"crewlet-avatar--fallback",`crewlet-avatar--${a}`,O===null?null:`crewlet-avatar--tint-${O}`,m==null?null:"crewlet-avatar--icon"),style:T,role:c?void 0:"img","aria-hidden":c?!0:void 0,"aria-label":c?void 0:R,children:m==null?Y3(V3(t,n)):(0,We.jsx)("span",{className:"crewlet-avatar__icon","aria-hidden":"true",children:m})})}let fe=j();return _?(0,We.jsxs)("span",{className:B("crewlet-avatar-frame",b),style:{"--crewlet-avatar-size":`${y}px`,...x},children:[fe,r!==void 0?(0,We.jsx)("span",{className:`crewlet-avatar__status crewlet-avatar__status--${r}`,"aria-hidden":"true",children:Q3[r]}):(0,We.jsx)("span",{className:"crewlet-avatar__status crewlet-avatar__status--mark","aria-hidden":"true",children:o})]}):fe},Q3={working:(0,We.jsx)("svg",{viewBox:"0 0 14 14",focusable:"false",children:(0,We.jsx)("path",{d:"M5.4 3.9 10.2 7l-4.8 3.1z",fill:"currentColor"})}),needs:(0,We.jsxs)("svg",{viewBox:"0 0 14 14",focusable:"false",children:[(0,We.jsx)("path",{d:"M5.1 5.3a1.9 1.9 0 1 1 2.7 1.7c-.55.27-.8.62-.8 1.15v.3",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),(0,We.jsx)("circle",{cx:"7",cy:"10.45",r:".85",fill:"currentColor"})]}),stopped:(0,We.jsx)("svg",{viewBox:"0 0 14 14",focusable:"false",children:(0,We.jsx)("rect",{x:"4.6",y:"4.6",width:"4.8",height:"4.8",rx:".7",fill:"currentColor"})})};var Sv=ie(ze(),1);function wt({as:e="span",id:t,className:l,children:n}){return(0,Sv.jsx)(e,{id:t,className:B("crewlet-visually-hidden",l),children:n})}var Zl=ie(ze(),1);function zh({members:e,self:t=!0,max:l=4,size:n="sm",onSelect:a,label:i,labels:r,className:o}){if(!Number.isInteger(l)||l<1)throw new RangeError(`PresenceStack max must be a whole number of at least 1; it was ${l}`);let u=qr(r),c=Cd(e);if(c.length===0&&!t)return null;let h=c.slice(0,l),g=c.slice(l),d=i??u.here(c.length,t),m=[d,...c.map(f=>u.member(f))].join(". "),b=f=>(0,Zl.jsx)(Zr,{name:f.name,kind:f.kind,src:f.src,character:f.character!==void 0&&Qr(f.character)?f.character:void 0,hue:f.kind==="agent"?f.hue:void 0,size:n,decorative:!0,className:B("crewlet-presence-stack__badge",f.hue!==void 0&&f.activity!=="idle"&&Cn(f.hue),f.hue!==void 0&&f.activity!=="idle"&&"crewlet-presence-stack__badge--present",f.activity==="idle"&&"crewlet-presence-stack__badge--idle")}),x=g.length>0?(0,Zl.jsxs)("span",{className:"crewlet-avatar-stack__member crewlet-avatar-stack__more","aria-hidden":"true",children:["+",g.length]}):null,N={"--crewlet-avatar-stack-size":`${Nh[n]}px`};return a===void 0?c.length===0?null:(0,Zl.jsxs)("span",{className:B("crewlet-avatar-stack","crewlet-presence-stack",o),style:N,role:"img","aria-label":m,children:[h.map(f=>(0,Zl.jsx)("span",{className:B("crewlet-avatar-stack__member","crewlet-presence-stack__member",`crewlet-presence-stack__member--${f.kind}`),children:b(f)},f.id)),x]}):(0,Zl.jsxs)("div",{className:B("crewlet-avatar-stack","crewlet-presence-stack",o),style:N,role:"group","aria-label":d,children:[h.map(f=>(0,Zl.jsx)("button",{type:"button",className:B("crewlet-avatar-stack__member","crewlet-presence-stack__member",`crewlet-presence-stack__member--${f.kind}`),"aria-label":u.member(f),title:u.member(f),onClick:()=>a(f),children:b(f)},f.id)),x,g.length>0?(0,Zl.jsx)(wt,{children:`${u.more(g.length)}: ${g.map(f=>u.member(f)).join(", ")}`}):null]})}var Jr=ie(ze(),1);function Ir({tone:e="neutral",pulse:t=!1,children:l,className:n}){let a=l!=null&&l!==!1&&l!=="",i=(0,Jr.jsx)("span",{"aria-hidden":!0,className:B("crewlet-status-dot",`crewlet-status-dot--${e}`,t&&"is-pulsing",!a&&n)});return a?(0,Jr.jsxs)("span",{className:B("crewlet-status",n),children:[i," ",(0,Jr.jsx)("span",{className:"crewlet-status__label",children:l})]}):i}var st=ie(ze(),1);function gc(e){let{variant:t="neutral",hue:l,appearance:n="soft",size:a="sm",leadingIcon:i,dot:r=!1,count:o,monospace:u=!1,animateIn:c=!1,onClick:h,pressed:g,onRemove:d,removeAriaLabel:m="Remove tag",className:b,children:x,...N}=e,f=h!==void 0,s=f||d!==void 0,p=f&&d!==void 0;s&&a==="xs"&&console.warn('[crewlet] Tag size="xs" cannot act: an interactive tag starts at "sm", so its target clears 24px. Drawn at "sm".');let y=s&&a==="xs"?"sm":a,M=B("crewlet-tag",l===void 0?`crewlet-tag--${t}`:`crewlet-tag--hue-${l}`,`crewlet-tag--${n}`,`crewlet-tag--${y}`,u&&"crewlet-tag--monospace",c&&"crewlet-tag--animate-in",s&&"crewlet-tag--acts",f&&!p&&"crewlet-tag--actionable",p&&"crewlet-tag--split",p&&g===!0&&"is-pressed",b),O=(0,st.jsxs)(st.Fragment,{children:[r?(0,st.jsx)(Ir,{tone:l===void 0?t:"neutral",className:"crewlet-tag__dot"}):null,i?(0,st.jsx)("span",{className:"crewlet-tag__icon","aria-hidden":!0,children:i}):null,(0,st.jsx)("span",{className:"crewlet-tag__label",children:x}),o===void 0?null:(0,st.jsx)("span",{className:"crewlet-tag__count",children:o})]}),A=d===void 0?null:(0,st.jsx)("button",{type:"button",className:"crewlet-tag__remove",onClick:_=>{_.stopPropagation(),d()},"aria-label":m,children:(0,st.jsx)(mh,{size:"xs"})});return p?(0,st.jsxs)("span",{...N,className:M,children:[(0,st.jsx)("button",{type:"button",className:"crewlet-tag__press",onClick:h,"aria-pressed":g===!0,children:O}),A]}):f?(0,st.jsx)("button",{...N,type:"button",className:M,onClick:h,"aria-pressed":g===!0,children:O}):(0,st.jsxs)("span",{...N,className:M,children:[O,A]})}var $r=ie(ze(),1);function _v({name:e,hue:t,kind:l="human",editing:n=!1,placement:a="top-end",className:i,...r}){let o=typeof e=="string"?e:e.join(", ");return(0,$r.jsxs)("span",{...r,"aria-hidden":"true",className:B("crewlet-cursor-flag",Cn(t),`crewlet-cursor-flag--${l}`,`crewlet-cursor-flag--${a}`,i),children:[n?(0,$r.jsx)(sh,{size:"xs",className:"crewlet-cursor-flag__glyph"}):null,(0,$r.jsx)("span",{className:"crewlet-cursor-flag__name",children:o})]})}var rl=ie(cl(),1);var Ke=ie(ze(),1);function Ev({variant:e="primary",size:t="medium",shape:l="square",block:n,className:a},i){return B("crewlet-btn",`crewlet-btn--${e}`,`crewlet-btn--${t}`,`crewlet-btn--${l}`,n&&"crewlet-btn--block",i,a)}function Oh({leadingIcon:e,trailingIcon:t,loading:l,children:n}){return(0,Ke.jsxs)(Ke.Fragment,{children:[l?(0,Ke.jsx)("span",{className:"crewlet-btn__spinner","aria-hidden":!0}):e?(0,Ke.jsx)("span",{className:"crewlet-btn__icon",children:e}):null,(0,Ke.jsx)("span",{className:"crewlet-btn__label",children:n}),t?(0,Ke.jsx)("span",{className:"crewlet-btn__icon",children:t}):null]})}var Fr=(0,rl.forwardRef)(function({variant:t="primary",size:l="medium",shape:n="square",leadingIcon:a,trailingIcon:i,block:r,className:o,type:u="button",asChild:c=!1,loading:h=!1,pressed:g,disabledReason:d,disabled:m,onClick:b,title:x,children:N,...f},s){let p=(0,rl.useId)(),M=Ev({variant:t,size:l,shape:n,block:r,className:o},h?"crewlet-btn--loading":void 0);if(c){let A=rl.Children.only(N);if(!(0,rl.isValidElement)(A))throw new Error("Button with asChild expects exactly one valid React element child.");let _=A;return(0,rl.cloneElement)(_,{...f,title:x,className:B(_.props.className,M)},(0,Ke.jsx)(Oh,{leadingIcon:a,trailingIcon:i,children:_.props.children}))}let O=h||d!==void 0;return(0,Ke.jsxs)(Ke.Fragment,{children:[(0,Ke.jsx)("button",{...f,ref:s,type:u,className:M,disabled:m,title:x,"aria-label":f["aria-label"]??(N===void 0?x:void 0),"aria-pressed":g,"aria-busy":h||void 0,"aria-disabled":O||void 0,"aria-describedby":d===void 0?f["aria-describedby"]:B(f["aria-describedby"],p),onClick:A=>{if(O){A.preventDefault();return}b?.(A)},children:(0,Ke.jsx)(Oh,{leadingIcon:a,trailingIcon:i,loading:h,children:N})}),d===void 0?null:(0,Ke.jsx)(wt,{id:p,children:d})]})}),US=(0,rl.forwardRef)(function({variant:t="primary",size:l="medium",shape:n="square",leadingIcon:a,trailingIcon:i,block:r,className:o,external:u=!1,title:c,children:h,...g},d){let m=i??(u?(0,Ke.jsx)(ch,{size:"sm"}):void 0);return(0,Ke.jsx)("a",{...g,ref:d,className:Ev({variant:t,size:l,shape:n,block:r,className:o}),title:c,"aria-label":g["aria-label"]??(h===void 0?c:void 0),target:u?"_blank":g.target,rel:u?"noreferrer":g.rel,children:(0,Ke.jsx)(Oh,{leadingIcon:a,trailingIcon:m,children:h})})});var Wr=ie(cl(),1),Tv=ie(ze(),1),Ch="crewlet:viewchange",ha=4;function Mv(e,t,l,n=ha,a="below"){let i=e.y+e.height+n,r=e.y-n-t.height,o=l.y+l.height-i,u=e.y-n-l.y,h=(a==="below"?o>=t.height||o>=u:u>=t.height||u>=o)?a:a==="below"?"above":"below",g=h==="below"?i:r,d=l.y+l.height-t.height,m=Math.max(l.y,Math.min(g,d)),b=l.x+l.width-t.width;return{left:Math.max(l.x,Math.min(e.x,b)),top:m,side:h}}function Av(){return{x:0,y:0,width:window.innerWidth,height:window.innerHeight}}function Nv(e,t){return e.x+e.width<t.x||e.y+e.height<t.y||e.x>t.x+t.width||e.y>t.y+t.height}var Z3=(0,Wr.createContext)(null);function zv(){let e=(0,Wr.useContext)(Z3);return e||(typeof document>"u"?null:document.body)}var xt=ie(cl(),1);var Rh={duration:{instant:"75ms",fast:"120ms",base:"150ms",moderate:"200ms",slow:"300ms",breath:"2200ms"},easing:{default:"ease",out:"ease-out",inOut:"ease-in-out",emphasized:"cubic-bezier(0.16, 1, 0.3, 1)",spring:"cubic-bezier(0.34, 1.56, 0.64, 1)"}};var Dh={base:"0",raised:"1",sticky:"10",presence:"20",dropdown:"100",overlay:"200",layerBase:"9000",layerMax:"9899",modal:"9999",popover:"10000",toast:"10001"};var Ov=Symbol.for("crewlet.layer-stack");function J3(){let e=globalThis,t=e[Ov];if(t)return t;let l={entries:[],opened:0,armed:null,listeners:new Set,version:0,locks:0,restore:null};return e[Ov]=l,l}var Be=J3();function Cv(){Be.version+=1;for(let e of[...Be.listeners])e()}function I3(e){return Be.listeners.add(e),()=>Be.listeners.delete(e)}function Mi(e){let t;for(let l of Be.entries)e&&l.kind!==e||(!t||l.order>t.order)&&(t=l);return t}var Gh={base:Number(Dh.layerBase),max:Number(Dh.layerMax)};function $3(e){let t=0;for(let l of Be.entries)l.order<e&&(t+=1);return t}function F3(e){return e===0?Gh.base:Math.min(Gh.base+$3(e),Gh.max)}var W3=229;function Ai(e){let t="nativeEvent"in e&&e.nativeEvent||e;return!!t.isComposing||t.keyCode===W3}function P3(e){let t=["a[href]","button:not([disabled])","input:not([disabled]):not([type='hidden'])","select:not([disabled])","textarea:not([disabled])","[contenteditable='true']","[tabindex]"].join(",");return[...e.querySelectorAll(t)].filter(l=>l.tabIndex>=0&&!l.disabled&&!l.closest("[hidden],[inert]")&&(typeof l.checkVisibility!="function"||l.checkVisibility()))}function Rv(e){if(Ai(e))return;if(e.key==="Escape"){if(e.defaultPrevented)return;let c=Mi();if(!c)return;e.preventDefault(),c.dismissable()&&c.dismiss("escape");return}if(e.key!=="Tab"||e.defaultPrevented)return;let t=Mi("modal"),l=t?.panel();if(!t||!l)return;let n=Mi("popup"),a=document.activeElement;if(n&&n.order>t.order&&a&&n.panel()?.contains(a))return;let i=P3(l);if(i.length===0){e.preventDefault(),l.focus();return}let r=i[0],o=i[i.length-1];if(!(a instanceof Node)||!l.contains(a)){e.preventDefault(),(e.shiftKey?o:r).focus();return}let u=c=>(a.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_FOLLOWING)!==0;e.shiftKey&&!i.some(c=>c!==a&&!u(c))?(e.preventDefault(),o.focus()):!e.shiftKey&&!i.some(c=>c!==a&&u(c))&&(e.preventDefault(),r.focus())}function Dv(e){Be.armed=null;let t=Mi();if(!t||!(e.target instanceof Node))return;let l=e.target;if(t.kind==="modal"){l===t.veil()&&(Be.armed=t);return}[t.panel(),...t.inside()].some(a=>a?.contains(l))||t.dismissable()&&t.dismiss("outside")}function Gv(e){let t=Be.armed;Be.armed=null,!(!t||t!==Mi()||e.target!==t.veil())&&t.dismissable()&&t.dismiss("outside")}function e5(e){return Be.entries.length===0&&(document.addEventListener("keydown",Rv),document.addEventListener("pointerdown",Dv,!0),document.addEventListener("click",Gv,!0)),Be.entries.push(e),Cv(),()=>{let t=Be.entries.indexOf(e);t>=0&&Be.entries.splice(t,1),Be.armed===e&&(Be.armed=null),Be.entries.length===0&&(document.removeEventListener("keydown",Rv),document.removeEventListener("pointerdown",Dv,!0),document.removeEventListener("click",Gv,!0)),Cv()}}function t5(e){let t=(0,xt.useRef)(0);return e&&t.current===0&&(t.current=++Be.opened),e||(t.current=0),t.current}function l5(e){return(0,xt.useSyncExternalStore)(I3,()=>Be.version,()=>0),{zIndex:F3(e),isTopmost:e!==0&&Mi()?.order===e}}function Hv({open:e,onDismiss:t}){let l=(0,xt.useRef)(null),n=(0,xt.useRef)(null),a=(0,xt.useRef)(t);a.current=t;let i=t5(e),r=l5(i);(0,xt.useLayoutEffect)(()=>{if(e)return e5({kind:"popup",order:i,panel:()=>l.current,returnTo:[],veil:()=>null,inside:()=>[n.current],dismiss:c=>a.current(c),dismissable:()=>!0})},[e,i]);let o=(0,xt.useCallback)(c=>{l.current=c},[]),u=(0,xt.useCallback)(c=>{n.current=c},[]);return{panelRef:o,insideRef:u,...r}}var _e=ie(cl(),1),Uv=ie(qc(),1);var Ni=ie(ze(),1);function Lv(e){return Number.parseFloat(e)}function n5(e,t){if(typeof e=="function"){let n=e(t);return typeof n=="function"?n:()=>{e(null)}}if(!e)return()=>{};let l=e;return l.current=t,()=>{l.current=null}}var a5=Lv(Rh.duration.slow),i5=Lv(Rh.duration.base);function kv({content:e,placement:t="top",disabled:l=!1,openDelay:n=a5,closeDelay:a=i5,className:i,children:r}){let u=`${(0,_e.useId)()}-tooltip`,[c,h]=(0,_e.useState)(!1),g=(0,_e.useRef)(null),d=(0,_e.useRef)(null),m=(0,_e.useRef)(void 0),b=(0,_e.useRef)({pointer:!1,focus:!1}),[x,N]=(0,_e.useState)(null),f=zv(),s=(0,_e.useCallback)(()=>{m.current!==void 0&&clearTimeout(m.current),m.current=void 0},[]),p=(0,_e.useCallback)(T=>{if(s(),!l){if(T<=0){h(!0);return}m.current=setTimeout(()=>h(!0),T)}},[s,l]),y=(0,_e.useCallback)(T=>{s();let j=()=>{b.current.pointer||b.current.focus||h(!1)};if(T<=0){j();return}m.current=setTimeout(j,T)},[s]),M=Hv({open:c,onDismiss:()=>{b.current={pointer:!1,focus:!1},s(),h(!1)}});(0,_e.useEffect)(()=>s,[s]),(0,_e.useEffect)(()=>{l&&(s(),h(!1))},[l,s]);let O=(0,_e.useCallback)(()=>{let T=g.current,j=d.current;if(!T||!j||!f)return;let fe=f!==document.body,Ee=fe?f.getBoundingClientRect():Av(),Ht=T.getBoundingClientRect(),Il=j.getBoundingClientRect(),Ut={x:Ht.x+Ht.width/2-Il.width/2-(fe?Ee.x:0),y:Ht.y-(fe?Ee.y:0),width:Ht.width,height:Ht.height},De={x:0,y:0,width:Ee.width,height:Ee.height},Dn={x:ha,y:ha,width:Ee.width-2*ha,height:Ee.height-2*ha};if(Nv({...Ut,x:Ht.x-(fe?Ee.x:0)},De)){h(!1);return}let St=Mv(Ut,{width:Il.width,height:Il.height},Dn,ha,t==="top"?"above":"below");N(Lt=>Lt&&Lt.left===St.left&&Lt.top===St.top&&Lt.side===St.side?Lt:St)},[f,t]);(0,_e.useLayoutEffect)(()=>{if(!c)return;O();let T=()=>O();f?.addEventListener(Ch,T),window.addEventListener("resize",T),window.addEventListener("scroll",T,!0);let j=typeof ResizeObserver=="function"?new ResizeObserver(T):null;return d.current&&j?.observe(d.current),()=>{f?.removeEventListener(Ch,T),window.removeEventListener("resize",T),window.removeEventListener("scroll",T,!0),j?.disconnect()}},[c,f,O]),(0,_e.useEffect)(()=>{c||N(null)},[c]);let A=r,_=A.props["aria-describedby"],Z=A.props.ref,C=(0,_e.cloneElement)(A,{ref:T=>{g.current=T,M.insideRef(T);let j=n5(Z,T);return()=>{g.current=null,M.insideRef(null),j()}},"aria-describedby":c?B(_,u):_,onPointerEnter:T=>{b.current.pointer=!0,p(n),A.props.onPointerEnter?.(T)},onPointerLeave:T=>{b.current.pointer=!1,y(a),A.props.onPointerLeave?.(T)},onFocus:T=>{b.current.focus=!0,p(0),A.props.onFocus?.(T)},onBlur:T=>{b.current.focus=!1,y(0),A.props.onBlur?.(T)}}),R=x?{left:x.left,top:x.top,zIndex:M.zIndex}:{visibility:"hidden",zIndex:M.zIndex},K=c?(0,Ni.jsx)("div",{ref:T=>{d.current=T,M.panelRef(T)},id:u,role:"tooltip",className:B("crewlet-tooltip",`crewlet-tooltip--${x?.side??(t==="top"?"above":"below")}`,f!==null&&f!==document.body?"crewlet-tooltip--in-host":"crewlet-tooltip--fixed",i),style:R,onPointerEnter:()=>{b.current.pointer=!0,s()},onPointerLeave:()=>{b.current.pointer=!1,y(a)},children:e}):null;return(0,Ni.jsxs)(Ni.Fragment,{children:[C,K&&f?(0,Uv.createPortal)(K,f):null]})}var Hh=ie(ze(),1);function Bv({by:e,at:t,previous:l=null,locale:n,className:a,labels:i}){let r=ac({by:e,at:t},Yr(i),l,n);return(0,Hh.jsx)(kv,{content:r,children:(0,Hh.jsx)("span",{"aria-hidden":"true",className:B("crewlet-change-mark",a)})})}var z=ie(cl(),1);var E=ie(ze(),1);function Lh({column:e,id:t,labels:l}){let n=Kl(e,t);if(!n)return(0,E.jsx)(gc,{size:"xs",children:t});if(n.archived)return(0,E.jsx)(gc,{size:"xs",appearance:"outline",children:l.archived(n.label)});let a=tc(n.color);return(0,E.jsx)(gc,{size:"xs",hue:a==="neutral"?void 0:a,children:n.label})}function qv({person:e,fallback:t}){return e?(0,E.jsxs)("span",{className:"crewlet-sheet-cell__person",children:[(0,E.jsx)(Zr,{name:e.name,kind:e.kind==="human"?"human":"agent",src:e.src,character:e.character!==void 0&&Qr(e.character)?e.character:void 0,hue:e.kind==="agent"?e.hue:void 0,size:"xs",decorative:!0}),(0,E.jsx)("span",{className:"crewlet-sheet-cell__text",children:e.name})]}):(0,E.jsx)("span",{className:"crewlet-sheet-cell__muted",children:t})}function Yv({column:e,value:t,context:l,onOpenLink:n}){let{labels:a}=l;if(e.type==="checkbox"){let i=t===!0;return(0,E.jsxs)("span",{className:"crewlet-sheet-cell__checkbox",children:[(0,E.jsx)("span",{className:B("crewlet-sheet-cell__check",i&&"crewlet-sheet-cell__check--on"),"aria-hidden":"true",children:i?(0,E.jsx)(cc,{size:"xs"}):null}),(0,E.jsx)(wt,{children:i?a.checked:a.unchecked})]})}if(Ql(t))return(0,E.jsx)(wt,{children:a.empty});switch(e.type){case"select":return(0,E.jsx)(Lh,{column:e,id:String(t),labels:a});case"multiselect":return(0,E.jsx)("span",{className:"crewlet-sheet-cell__chips",children:t.map(i=>(0,E.jsx)(Lh,{column:e,id:i,labels:a},i))});case"status":{let i=Kl(e,String(t)),r=al(e,t,l);return(0,E.jsx)(Ir,{tone:i&&!i.archived?lc(i):"neutral",children:r})}case"person":return(0,E.jsx)(qv,{person:wi(l.people,String(t)),fallback:a.unknownPerson});case"rating":{let i=Xl(e),r=Number(t);return(0,E.jsxs)("span",{className:"crewlet-sheet-cell__rating",children:[(0,E.jsx)("span",{className:"crewlet-sheet-cell__stars","aria-hidden":"true",children:Array.from({length:i},(o,u)=>(0,E.jsx)(hh,{size:"sm",filled:u<r,className:B("crewlet-sheet-cell__star",u<r&&"crewlet-sheet-cell__star--on")},u))}),(0,E.jsx)(wt,{children:a.rating(r,i)})]})}case"url":{let i=String(t);return(0,E.jsx)("a",{className:"crewlet-sheet-cell__link",href:i,target:"_blank",rel:"noopener noreferrer",tabIndex:-1,onClick:n?r=>{r.preventDefault(),n(i)}:void 0,children:i})}case"number":return(0,E.jsx)("span",{className:"crewlet-sheet-cell__text crewlet-sheet-cell__number",children:al(e,t,l)});default:return(0,E.jsx)("span",{className:"crewlet-sheet-cell__text",children:al(e,t,l)})}}var r5=new Set(["text","number","url","date","rating"]),jv=new Set(["select","multiselect","status","person"]),o5=e=>e!=="checkbox",Vv=e=>r5.has(e)||jv.has(e)||e==="longtext";function Kv(e,t){if(e.key==="Tab")return e.shiftKey?"left":"right";if(e.key==="Enter")return t&&!fa(e)?void 0:e.shiftKey?"up":"down"}function kh(e){let t=(0,z.useRef)(!1);return{finish:()=>{t.current=!0},onBlur:l=>{if(t.current)return;let n=l.relatedTarget;n!==null&&l.currentTarget.contains(n)||(t.current=!0,e())}}}function u5(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return"";let l=n=>String(n).padStart(2,"0");return`${t.getFullYear()}-${l(t.getMonth()+1)}-${l(t.getDate())}T${l(t.getHours())}:${l(t.getMinutes())}`}function Bh({conflict:e,labels:t}){return(0,E.jsxs)("div",{className:"crewlet-sheet-editor__conflict",role:"alert",children:[(0,E.jsx)("p",{className:"crewlet-sheet-editor__conflict-text",children:t.conflict(e.writer,e.value)}),(0,E.jsxs)("div",{className:"crewlet-sheet-editor__conflict-actions",children:[(0,E.jsx)(Fr,{size:"small",variant:"secondary",onClick:e.onKeepMine,children:t.keepMine}),(0,E.jsx)(Fr,{size:"small",variant:"ghost",onClick:e.onUseTheirs,children:t.useTheirs(e.writer)})]})]})}function Vh({id:e,message:t}){return(0,E.jsxs)("p",{id:e,className:"crewlet-sheet-editor__error",children:[(0,E.jsx)(Ei,{size:"xs","aria-hidden":"true"}),(0,E.jsx)("span",{children:t})]})}function Xv(e){let{column:t}=e;return jv.has(t.type)?(0,E.jsx)(h5,{...e}):t.type==="longtext"?(0,E.jsx)(s5,{...e}):(0,E.jsx)(c5,{...e})}function c5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,conflict:o}){let{labels:u}=l,c=(0,z.useId)(),h=(0,z.useRef)(null),g=e.type==="date",d=(0,z.useMemo)(()=>{if(g){let p=typeof t=="string"?t:"";return e.time?u5(p):p}return n??xi(e,t,l)},[]),[m,b]=(0,z.useState)(d),[x,N]=(0,z.useState)(null);(0,z.useLayoutEffect)(()=>{let p=h.current;p&&(p.focus(),g||p.setSelectionRange(p.value.length,p.value.length))},[g]);let f=p=>{let y=g&&e.time&&m!==""?new Date(m).toISOString():m,M=Si(e,y,l);return M.ok?(s.finish(),i(M.value,p),!0):(N(M.error),!1)},s=kh(()=>{f(null)||r()});return(0,E.jsxs)("div",{className:"crewlet-sheet-editor crewlet-sheet-editor--line",onBlur:s.onBlur,children:[(0,E.jsx)("input",{ref:h,className:"crewlet-sheet-editor__input",type:g?e.time?"datetime-local":"date":e.type==="url"?"url":"text",inputMode:e.type==="number"?"decimal":e.type==="rating"?"numeric":void 0,"aria-label":a,"aria-invalid":x!==null,"aria-describedby":x!==null?c:void 0,maxLength:e.type==="text"?On(e):void 0,value:m,onChange:p=>{b(p.target.value),N(null)},onKeyDown:p=>{if(Ai(p))return;if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s.finish(),r();return}if(p.key==="Tab"&&o)return;let y=Kv(p,!1);y!==void 0&&(p.preventDefault(),p.stopPropagation(),f(y))}}),x!==null||o?(0,E.jsxs)("div",{className:B("crewlet-sheet-editor__panel"),children:[x!==null?(0,E.jsx)(Vh,{id:c,message:x}):null,o?(0,E.jsx)(Bh,{conflict:o,labels:u}):null]}):null]})}function s5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,side:o="below",conflict:u}){let{labels:c}=l,h=(0,z.useId)(),g=(0,z.useRef)(null),[d,m]=(0,z.useState)(()=>n??xi(e,t,l)),[b,x]=(0,z.useState)(null);(0,z.useLayoutEffect)(()=>{let s=g.current;s&&(s.focus(),s.setSelectionRange(s.value.length,s.value.length))},[]);let N=s=>{let p=Si(e,d,l);return p.ok?(f.finish(),i(p.value,s),!0):(x(p.error),!1)},f=kh(()=>{N(null)||r()});return(0,E.jsx)("div",{className:B("crewlet-sheet-editor","crewlet-sheet-editor--long",`crewlet-sheet-editor--${o}`),onBlur:f.onBlur,children:(0,E.jsxs)("div",{className:"crewlet-sheet-editor__panel crewlet-sheet-editor__panel--long",children:[(0,E.jsx)("textarea",{ref:g,className:"crewlet-sheet-editor__textarea","aria-label":a,"aria-invalid":b!==null,"aria-describedby":b!==null?h:void 0,maxLength:On(e),rows:5,value:d,onChange:s=>{m(s.target.value),x(null)},onKeyDown:s=>{if(Ai(s))return;if(s.key==="Escape"){s.preventDefault(),s.stopPropagation(),f.finish(),r();return}if(s.key==="Tab"&&u)return;let p=Kv(s,!0);p!==void 0&&(s.preventDefault(),s.stopPropagation(),N(p))}}),b!==null?(0,E.jsx)(Vh,{id:h,message:b}):null,u?(0,E.jsx)(Bh,{conflict:u,labels:c}):null]})})}function f5(e,t){return e.type==="person"?(t.people??[]).map(l=>({id:l.id,label:l.name,person:l})):yi(e).map(l=>({id:l.id,label:l.label,option:l}))}function d5({column:e,choice:t,context:l}){return t.person?(0,E.jsx)(qv,{person:t.person,fallback:t.label}):e.type==="status"&&t.option?(0,E.jsx)(Ir,{tone:lc(t.option),children:t.label}):(0,E.jsx)(Lh,{column:e,id:t.id,labels:l.labels})}function h5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,side:o="below",conflict:u}){let{labels:c}=l,h=e.type==="multiselect",g=(0,z.useId)(),d=(0,z.useId)(),m=(0,z.useRef)(null),[b,x]=(0,z.useState)(n??""),[N,f]=(0,z.useState)(()=>h?[...t??[]]:typeof t=="string"?[t]:[]),[s,p]=(0,z.useState)(null),y=(0,z.useMemo)(()=>f5(e,l),[e,l]),M=!h&&!e.required,O=(0,z.useMemo)(()=>{let T=b.trim().toLowerCase(),j=T===""?y:y.filter(fe=>fe.label.toLowerCase().includes(T));return M&&T===""?[{id:"",label:c.clear},...j]:j},[y,b,M,c.clear]),[A,_]=(0,z.useState)(()=>{let T=O.findIndex(j=>j.id!==""&&N.includes(j.id));return T>=0?T:0});(0,z.useEffect)(()=>{_(T=>Math.min(T,Math.max(O.length-1,0)))},[O.length]),(0,z.useLayoutEffect)(()=>{m.current?.focus()},[]);let Z=(T,j)=>{let fe=Ud(e,T,l);return fe!==null?(p(fe),!1):(C.finish(),i(T,j),!0)},C=kh(()=>{(!h||!Z(N,null))&&r()}),R=(T,j)=>{if(T){if(!h){Z(T.id===""?null:T.id,j);return}p(null),f(fe=>fe.includes(T.id)?fe.filter(Ee=>Ee!==T.id):[...fe,T.id])}},K=T=>`${g}-${T}`;return(0,E.jsx)("div",{className:B("crewlet-sheet-editor","crewlet-sheet-editor--list",`crewlet-sheet-editor--${o}`),onBlur:C.onBlur,children:(0,E.jsxs)("div",{className:"crewlet-sheet-editor__panel crewlet-sheet-editor__panel--list",children:[(0,E.jsx)("input",{ref:m,className:"crewlet-sheet-editor__filter",role:"combobox","aria-label":a,"aria-expanded":"true","aria-controls":g,"aria-autocomplete":"list","aria-activedescendant":O.length>0?K(A):void 0,"aria-invalid":s!==null,"aria-describedby":s!==null?d:void 0,placeholder:c.filter,value:b,onChange:T=>{x(T.target.value),_(0)},onKeyDown:T=>{if(!Ai(T))switch(T.key){case"Escape":T.preventDefault(),T.stopPropagation(),C.finish(),r();return;case"ArrowDown":T.preventDefault(),T.stopPropagation(),_(j=>Math.min(j+1,O.length-1));return;case"ArrowUp":T.preventDefault(),T.stopPropagation(),_(j=>Math.max(j-1,0));return;case"Home":case"End":if(b!=="")return;T.preventDefault(),T.stopPropagation(),_(T.key==="Home"?0:O.length-1);return;case"Enter":T.preventDefault(),T.stopPropagation(),h&&fa(T)?Z(N,"down"):R(O[A],T.shiftKey?"up":"down");return;case"Tab":if(u)return;T.preventDefault(),T.stopPropagation(),Z(h?N:t,T.shiftKey?"left":"right");return;default:return}}}),(0,E.jsx)("ul",{className:"crewlet-sheet-editor__list",id:g,role:"listbox","aria-label":a,"aria-multiselectable":h||void 0,children:O.length===0?(0,E.jsx)("li",{className:"crewlet-sheet-editor__empty",role:"presentation",children:c.noOptions}):O.map((T,j)=>{let fe=T.id===""?N.length===0:N.includes(T.id);return(0,E.jsxs)("li",{id:K(j),role:"option","aria-selected":fe,className:B("crewlet-sheet-editor__option",j===A&&"crewlet-sheet-editor__option--highlight",fe&&"crewlet-sheet-editor__option--selected"),onMouseDown:Ee=>Ee.preventDefault(),onMouseEnter:()=>_(j),onClick:()=>R(T,h?null:"down"),children:[(0,E.jsx)("span",{className:"crewlet-sheet-editor__mark","aria-hidden":"true",children:fe?(0,E.jsx)(cc,{size:"xs"}):null}),T.id===""?(0,E.jsx)("span",{className:"crewlet-sheet-cell__muted",children:T.label}):(0,E.jsx)(d5,{column:e,choice:T,context:l})]},T.id===""?"\0clear":T.id)})}),s!==null?(0,E.jsx)(Vh,{id:d,message:s}):null,u?(0,E.jsx)(Bh,{conflict:u,labels:c}):null]})})}var Rn=-1;function qh({label:e,columns:t,rows:l,people:n,mode:a="edit",onEdit:i,onAddRow:r,onShowHistory:o,onActiveCellChange:u,onEditingChange:c,onUndo:h,onRedo:g,onOpenLink:d,presence:m,sort:b,onSortChange:x,sync:N,onRetry:f,height:s,locale:p,className:y,labels:M,presenceLabels:O}){let A=(0,z.useId)(),_=(0,z.useMemo)(()=>Yr(M),[M]),Z=(0,z.useMemo)(()=>qr(O),[O]),C=(0,z.useMemo)(()=>({people:n,locale:p,labels:_}),[n,p,_]),R=(0,z.useMemo)(()=>Kd(t),[t]),K=(0,z.useMemo)(()=>Wd(R,l,b,C),[R,l,b,C]),T=a==="edit"&&i!==void 0,j=(0,z.useRef)(null),fe=(0,z.useRef)(null),Ee=(0,z.useRef)(null),[Ht,Il]=(0,z.useState)(0),Ut=(0,z.useRef)(0),[De,Dn]=(0,z.useState)(nc),[St,Lt]=(0,z.useState)(nc),[El,bc]=(0,z.useState)(0),[zi,to]=(0,z.useState)(0),[Gn,Hn]=(0,z.useState)(null),[lo,pa]=(0,z.useState)(null),[L,Un]=(0,z.useState)(null),[H,Y]=(0,z.useState)(new Map),[Ge,$t]=(0,z.useState)({text:"",n:0}),_t=(0,z.useRef)(!1),F=(0,z.useCallback)(v=>$t(S=>({text:v,n:S.n+1})),[]);(0,z.useLayoutEffect)(()=>{let v=()=>{let G=fe.current?.offsetHeight??0;G>0&&Dn(G);let D=Ee.current?.querySelector(".crewlet-sheet-grid__row--head")?.offsetHeight??0;D>0&&Lt(D),bc(j.current?.clientHeight??0)};if(v(),typeof ResizeObserver!="function")return;let S=new ResizeObserver(v);return j.current&&S.observe(j.current),fe.current&&S.observe(fe.current),()=>S.disconnect()},[]);let Ft=(0,z.useMemo)(()=>jd(R),[R]),Fv=(0,z.useMemo)(()=>[`${_i}px`,...R.map(v=>`${da(v)}px`)].join(" "),[R]),Wv=(0,z.useMemo)(()=>R.reduce((v,S)=>v+da(S),_i),[R]),wc=(0,z.useMemo)(()=>{let v=_i;return R.forEach((S,G)=>{S.frozen&&(v=(Ft[G]??v)+da(S))}),v},[R,Ft]),Ln=(0,z.useMemo)(()=>new Map(K.map((v,S)=>[v.id,S])),[K]),no=(0,z.useMemo)(()=>new Map(R.map((v,S)=>[v.field,S])),[R]),ma=(0,z.useCallback)(v=>{if(!v)return null;let S=no.get(v.field);if(S===void 0)return null;if(v.rowId===null)return{row:Rn,col:S};let G=Ln.get(v.rowId);return G===void 0?null:{row:G,col:S}},[no,Ln]),Tl=(0,z.useCallback)(v=>{let S=R[v.col];if(!S)return null;if(v.row===Rn)return{rowId:null,field:S.field};let G=K[v.row];return G?{rowId:G.id,field:S.field}:null},[R,K]),Pv=K.length>0&&R.length>0?{rowId:K[0].id,field:R[0].field}:R.length>0?{rowId:null,field:R[0].field}:null,P=ma(Gn)??ma(Pv),Pe=P?Tl(P):null,Xh=ma(lo)??P,nt=P&&Xh&&P.row!==Rn?kd(Xh,P):null,Qh=(0,z.useMemo)(()=>Pd(m),[m]),ey=(0,z.useMemo)(()=>eh(m),[m]),ty=(0,z.useMemo)(()=>th(m),[m]),Zh=(0,z.useRef)(null);(0,z.useEffect)(()=>{let v=Pe&&Pe.rowId!==null?{rowId:Pe.rowId,field:Pe.field}:null,S=v?il(v.rowId,v.field):null;S!==Zh.current&&(Zh.current=S,u?.(v))},[Pe,u]);let Jh=(0,z.useRef)(null);(0,z.useEffect)(()=>{let v=L?il(L.rowId,L.field):null;v!==Jh.current&&(Jh.current=v,c?.(L?{rowId:L.rowId,field:L.field}:null))},[L,c]);let ao=(0,z.useCallback)(v=>{v.length!==0&&(Y(S=>{let G=new Map(S);for(let D of v)G.set(il(D.rowId,D.field),D.error);return G}),F(v[0].error))},[F]),io=(0,z.useCallback)(v=>{Y(S=>{if(!v.some(D=>S.has(D)))return S;let G=new Map(S);for(let D of v)G.delete(D);return G})},[]),$l=(0,z.useCallback)(v=>{v.length===0||!i||(io(v.map(S=>il(S.rowId,S.field))),i(v))},[i,io]),kn=(0,z.useCallback)(v=>R[no.get(v)??-1],[R,no]),Bn=(0,z.useCallback)(v=>K[Ln.get(v)??-1],[K,Ln]),ga=(0,z.useCallback)(v=>T&&v!==void 0&&!v.readOnly,[T]),xc=(0,z.useCallback)(()=>Il(v=>v+1),[]),va=(0,z.useCallback)((v,S=!1)=>{v&&(Hn(v),S||pa(v),xc())},[xc]),Ih=v=>{Gn&&Gn.rowId===v.rowId&&Gn.field===v.field||(Hn(v),pa(v))},Oi=P?.row??null,Ci=P?.col??null;(0,z.useLayoutEffect)(()=>{if(Oi===null||Ci===null)return;let v=j.current;if(v&&Oi>=0){let S=qd(Oi,v.scrollTop,v.clientHeight,De,St);S!==v.scrollTop&&(v.scrollTop=S,to(S));let G=R[Ci];if(G&&!G.frozen){let D=Ft[Ci]??0,ne=D+da(G);D-wc<v.scrollLeft?v.scrollLeft=Math.max(D-wc,0):ne>v.scrollLeft+v.clientWidth&&(v.scrollLeft=ne-v.clientWidth)}}Ht===Ut.current||L||(Ut.current=Ht,document.getElementById(Uh(A,{row:Oi,col:Ci}))?.focus({preventScroll:!0}))},[Oi,Ci,Ht,L,A,De,St,R,Ft,wc]);let ro=(0,z.useCallback)((v,S)=>{if(v.rowId===null)return;let G=kn(v.field),D=Bn(v.rowId);if(!(!D||!G)){if(!ga(G)){F(T?_.readOnly(G.label):_.forbidden);return}o5(G.type)&&(io([il(v.rowId,v.field)]),Un({rowId:v.rowId,field:v.field,seed:S,base:ct(G,D.values[G.field])}))}},[ga,io,kn,T,_,Bn,F]),Sc=(0,z.useCallback)(v=>{if(v.rowId===null)return;let S=kn(v.field),G=Bn(v.rowId);if(!(!G||!S||S.type!=="checkbox")){if(!ga(S)){F(T?_.readOnly(S.label):_.forbidden);return}$l([{rowId:G.id,field:S.field,value:ct(S,G.values[S.field])!==!0}])}},[ga,kn,T,$l,_,Bn,F]),$h=(0,z.useCallback)((v,S)=>{if(S===null)return Tl(v);let G={down:{row:Math.min(v.row+1,K.length-1),col:v.col},up:{row:Math.max(v.row-1,0),col:v.col},right:{row:v.row,col:Math.min(v.col+1,R.length-1)},left:{row:v.row,col:Math.max(v.col-1,0)}}[S];return Tl(G)},[Tl,R.length,K.length]),Fh=(0,z.useCallback)((v,S)=>{if(!L)return;let G=ma({rowId:L.rowId,field:L.field}),D=kn(L.field),ne=Bn(L.rowId);Un(null),v!==void 0&&D&&ne&&!bi(v,ct(D,ne.values[D.field]))&&$l([{rowId:ne.id,field:D.field,value:v}]);let Ae=document.activeElement,ft=Ae!==null&&Ae!==document.body&&!!Ee.current?.contains(Ae);G&&ft&&va($h(G,S))},[kn,L,$l,va,ma,Bn,$h]);(0,z.useEffect)(()=>{L&&!Ln.has(L.rowId)&&Un(null)},[L,Ln]);let oo=L?Bn(L.rowId):void 0,ya=L?kn(L.field):void 0,_c=L&&oo&&ya?ct(ya,oo.values[ya.field]):null,Wh=!!(L&&oo&&ya&&!bi(_c,L.base)),ly=Wh&&L?oo?.changed?.[L.field]?.by??_.someone:"",uo=Wh&&L&&ya?{writer:ly,value:al(ya,_c,C)||_.empty,onKeepMine:()=>Un(v=>v&&{...v,base:_c}),onUseTheirs:()=>{let v=ma({rowId:L.rowId,field:L.field});Un(null),v&&va(Tl(v))}}:null,Ec=uo?_.conflict(uo.writer,uo.value):"";(0,z.useEffect)(()=>{Ec&&F(Ec)},[Ec,F]);let Ph=v=>{L||!nt||(v.preventDefault(),v.clipboardData.setData("text/plain",Qd(R,K,nt,C)))},e0=(0,z.useCallback)(()=>{if(!nt)return;if(!T){F(_.forbidden);return}let v=Id(R,K,nt,C);$l(v.edits),ao(v.refused)},[R,C,T,$l,_.forbidden,nt,ao,K,F]),ny=v=>{L||!nt||(Ph(v),e0())},ay=v=>{if(L||!nt)return;if(v.preventDefault(),!T){F(_.forbidden);return}let S=Jd(R,K,nt,Zd(v.clipboardData.getData("text/plain")),C);$l(S.edits),ao(S.refused)},iy=Math.max(1,Math.floor(Math.max(El-St,De)/De)-1),ry=v=>{if(L||Ai(v)||!P||!Pe)return;let S=R[P.col],G=fa(v);if(G&&v.altKey&&v.key.toLowerCase()==="h"){o&&Pe.rowId!==null&&(v.preventDefault(),o({rowId:Pe.rowId,field:Pe.field}));return}if(G&&!v.altKey&&v.key.toLowerCase()==="z"){let ne=v.shiftKey?g:h;ne&&(v.preventDefault(),ne());return}if(G&&!v.altKey&&v.key.toLowerCase()==="y"){g&&(v.preventDefault(),g());return}if(G&&!v.altKey&&v.key.toLowerCase()==="a"){if(v.preventDefault(),K.length===0)return;pa(Tl({row:0,col:0})),Hn(Tl({row:K.length-1,col:R.length-1})),xc();return}let D=Ld(P,v,{rows:K.length,cols:R.length,page:iy});if(D){v.preventDefault();let ne=v.shiftKey&&D.row!==Rn&&P.row!==Rn;va(Tl(D),ne);return}if(v.key==="Tab"){let ne=v.shiftKey?-1:1,Ae=P.col+ne;if(Ae<0||Ae>=R.length)return;v.preventDefault(),va(Tl({row:P.row,col:Ae}));return}if(P.row===Rn){(v.key==="Enter"||v.key===" ")&&S&&x&&(v.preventDefault(),x(rc(b,S.field)));return}switch(v.key){case"Enter":case"F2":if(v.preventDefault(),v.key==="Enter"&&G&&S?.type==="url"){let ne=K[P.row],Ae=ne?ct(S,ne.values[S.field]):null;typeof Ae=="string"&&Ae&&(d?d(Ae):window.open(Ae,"_blank","noopener,noreferrer"));return}S?.type==="checkbox"?Sc(Pe):ro(Pe);return;case" ":v.preventDefault(),S?.type==="checkbox"?Sc(Pe):S&&Vv(S.type)&&ro(Pe," ");return;case"Delete":case"Backspace":v.preventDefault(),e0();return;case"Escape":lo&&nt&&(nt.top!==nt.bottom||nt.left!==nt.right)&&(v.preventDefault(),pa(Pe));return}if(Xd(v)&&S){if(S.type==="rating"&&/^\d$/.test(v.key)){if(v.preventDefault(),!ga(S)){F(T?_.readOnly(S.label):_.forbidden);return}let ne=Number(v.key),Ae=K[P.row];if(!Ae)return;if(ne>Xl(S)){ao([{rowId:Ae.id,field:S.field,error:_.notARating(S.label,Xl(S))}]);return}$l([{rowId:Ae.id,field:S.field,value:ne===0?null:ne}]);return}Vv(S.type)&&(v.preventDefault(),ro(Pe,S.type==="date"?void 0:v.key))}};(0,z.useEffect)(()=>{let v=()=>{_t.current=!1};return window.addEventListener("mouseup",v),()=>window.removeEventListener("mouseup",v)},[]);let t0=(v,S)=>{if(v.button!==0)return;let G=v.shiftKey&&S.rowId!==null&&Pe?.rowId!==null;L&&L.rowId===S.rowId&&L.field===S.field||va(S,G),_t.current=S.rowId!==null},oy=v=>{!_t.current||v.rowId===null||Hn(v)},[l0,n0]=Vd(Math.max(zi-St,0),El,De,K.length),Ri=[];for(let v=l0;v<=n0;v+=1)Ri.push(v);if(P&&P.row>=0&&(P.row<l0||P.row>n0)&&Ri.push(P.row),L){let v=Ln.get(L.rowId);v!==void 0&&!Ri.includes(v)&&Ri.push(v)}let a0=`${A}-described`,i0=`${A}-help`,Di=P?R[P.col]:void 0,co=P&&P.row>=0?K[P.row]:void 0,uy=co&&Di?Qh.get(il(co.id,Di.field))??[]:[],cy=co&&Di?nh(Di,p5(co,H,Di.field),uy,C,Z):"",sy={"--crewlet-sheet-columns":Fv,"--crewlet-sheet-row-height":`${De}px`,width:`${Wv}px`},fy=v=>{let S=St+v*De-zi,G=El>0?El:De*12;return Yd(S,S+De,St,G,De*8)};return(0,E.jsxs)("div",{className:B("crewlet-sheet-grid",a==="read"&&"crewlet-sheet-grid--read",y),children:[(0,E.jsx)("div",{ref:fe,className:"crewlet-sheet-grid__probe","aria-hidden":"true"}),(0,E.jsx)("div",{ref:j,className:"crewlet-sheet-grid__scroller",style:s!==void 0?{height:`${s}px`}:void 0,onScroll:v=>to(v.currentTarget.scrollTop),children:(0,E.jsxs)("div",{ref:Ee,role:"grid","aria-label":e,"aria-rowcount":K.length+1,"aria-colcount":R.length+1,"aria-readonly":!T||void 0,"aria-multiselectable":"true","aria-describedby":i0,tabIndex:-1,className:"crewlet-sheet-grid__grid",style:sy,onKeyDown:ry,onCopy:Ph,onCut:ny,onPaste:ay,children:[(0,E.jsx)("div",{role:"rowgroup",className:"crewlet-sheet-grid__head",children:(0,E.jsxs)("div",{role:"row","aria-rowindex":1,className:"crewlet-sheet-grid__row crewlet-sheet-grid__row--head",children:[(0,E.jsx)("div",{role:"columnheader","aria-colindex":1,className:"crewlet-sheet-grid__corner",children:(0,E.jsx)(wt,{children:_.rowHeader})}),R.map((v,S)=>{let G={row:Rn,col:S},D=P?.row===Rn&&P.col===S,ne=b?.field===v.field?b.direction:void 0,Ae=ty.get(v.field)??[];return(0,E.jsxs)("div",{id:Uh(A,G),role:"columnheader","aria-colindex":S+2,"aria-sort":ne??(x?"none":void 0),tabIndex:D?0:-1,className:B("crewlet-sheet-grid__header",v.frozen&&"crewlet-sheet-grid__cell--frozen",D&&"crewlet-sheet-grid__header--active"),style:v.frozen?{insetInlineStart:`${Ft[S]}px`}:void 0,onMouseDown:ft=>t0(ft,{rowId:null,field:v.field}),onFocus:ft=>{ft.target===ft.currentTarget&&Ih({rowId:null,field:v.field})},onClick:()=>{x&&x(rc(b,v.field))},title:x?_.sortBy(v.label):void 0,children:[(0,E.jsx)("span",{className:"crewlet-sheet-grid__header-label",children:v.label}),(0,E.jsx)(wt,{children:`, ${_.types[v.type]}`}),ne?(0,E.jsx)("span",{className:"crewlet-sheet-grid__sort","aria-hidden":"true",children:ne==="ascending"?(0,E.jsx)(oh,{size:"xs"}):(0,E.jsx)(rh,{size:"xs"})}):null,Ae.length>0?(0,E.jsx)("span",{className:"crewlet-sheet-grid__header-presence","aria-hidden":"true",children:Ae.map(ft=>(0,E.jsx)(Zr,{name:ft.name,kind:ft.kind,size:16,decorative:!0,className:B("crewlet-sheet-grid__header-badge",Cn(ft.hue))},ft.id))}):null]},v.field)})]})}),(0,E.jsx)("div",{role:"rowgroup",className:"crewlet-sheet-grid__body",style:{height:`${K.length*De}px`},children:Ri.map(v=>{let S=K[v],G=ey.get(S.id);return(0,E.jsxs)("div",{role:"row","aria-rowindex":v+2,className:"crewlet-sheet-grid__row",style:{top:`${v*De}px`},children:[(0,E.jsxs)("div",{role:"rowheader","aria-colindex":1,className:B("crewlet-sheet-grid__rownum",G&&"crewlet-sheet-grid__rownum--present",G&&Cn(G.hue)),children:[(0,E.jsx)("span",{"aria-hidden":"true",children:v+1}),(0,E.jsx)(wt,{children:oc(R,S,v,C)})]}),R.map((D,ne)=>{let Ae={row:v,col:ne},ft=il(S.id,D.field),Gi=P?.row===v&&P.col===ne,r0=nt?Bd(nt,v,ne):!1,dy=S.pending?.includes(D.field)??!1,so=S.refused?.[D.field]??H.get(ft),Hi=S.changed?.[D.field],o0=ct(D,S.values[D.field]),fo=Qh.get(ft),Fl=fo?.[0],Ui=L?.rowId===S.id&&L.field===D.field;return(0,E.jsxs)("div",{id:Uh(A,Ae),role:"gridcell","aria-colindex":ne+2,"aria-selected":r0,"aria-readonly":!ga(D)||void 0,"aria-describedby":Gi?a0:void 0,tabIndex:Gi&&!Ui?0:-1,className:B("crewlet-sheet-grid__cell",`crewlet-sheet-grid__cell--${D.type}`,D.frozen&&"crewlet-sheet-grid__cell--frozen",r0&&"crewlet-sheet-grid__cell--selected",Gi&&"crewlet-sheet-grid__cell--active",dy&&"crewlet-sheet-grid__cell--pending",so!==void 0&&"crewlet-sheet-grid__cell--refused",Ui&&"crewlet-sheet-grid__cell--editing",Fl&&"crewlet-presence-ring",Fl&&Cn(Fl.hue),Fl&&(Fl.idle?"crewlet-presence-ring--idle":null)),style:D.frozen?{insetInlineStart:`${Ft[ne]}px`}:void 0,onMouseDown:kt=>t0(kt,{rowId:S.id,field:D.field}),onFocus:kt=>{kt.target===kt.currentTarget&&Ih({rowId:S.id,field:D.field})},onMouseEnter:()=>oy({rowId:S.id,field:D.field}),onDoubleClick:()=>{D.type!=="checkbox"&&ro({rowId:S.id,field:D.field})},onClick:kt=>{D.type==="checkbox"&&kt.target.closest(".crewlet-sheet-cell__check")&&Sc({rowId:S.id,field:D.field})},children:[(0,E.jsx)("span",{className:"crewlet-sheet-grid__value",children:(0,E.jsx)(Yv,{column:D,value:o0,context:C,onOpenLink:d})}),so!==void 0?(0,E.jsx)("span",{className:"crewlet-sheet-grid__refused","aria-hidden":"true",children:(0,E.jsx)(Ei,{size:"xs"})}):null,Hi?(0,E.jsx)(Bv,{by:Hi.by,at:Hi.at,previous:ic(Hi)&&al(D,ct(D,Hi.previous),C)||null,locale:p,labels:_}):null,fo&&Fl?(0,E.jsx)(_v,{name:lh(fo),hue:Fl.hue,kind:Fl.kind,editing:fo.some(kt=>kt.editing)}):null,Gi&&so!==void 0&&!Ui?(0,E.jsx)("span",{className:"crewlet-sheet-grid__message","aria-hidden":"true",children:so}):null,Gi&&o&&!Ui?(0,E.jsx)("button",{type:"button",tabIndex:-1,"aria-hidden":"true",className:"crewlet-sheet-grid__history",title:_.history,onMouseDown:kt=>kt.stopPropagation(),onClick:()=>o({rowId:S.id,field:D.field}),children:(0,E.jsx)(dh,{size:"xs"})}):null,Ui?(0,E.jsx)(Xv,{column:D,value:o0,context:C,seed:L.seed,label:`${D.label}, ${oc(R,S,v,C)}`,side:fy(v),conflict:uo,onCommit:(kt,hy)=>Fh(kt,hy),onCancel:()=>Fh(void 0,null)}):null]},D.field)})]},S.id)})})]})}),(0,E.jsx)(wt,{id:a0,children:cy}),(0,E.jsx)(wt,{id:i0,children:_.keyboardHelp}),(0,E.jsx)(wt,{children:(0,E.jsx)("span",{role:"status","aria-live":"polite",children:(0,E.jsx)("span",{children:Ge.text},Ge.n)})}),r||N?(0,E.jsxs)("div",{className:"crewlet-sheet-grid__foot",children:[r&&T?(0,E.jsx)(Fr,{size:"small",variant:"ghost",onClick:r,leadingIcon:(0,E.jsx)(fh,{size:"sm"}),children:_.addRow}):null,N?(0,E.jsxs)("span",{className:B("crewlet-sheet-grid__sync",(N.failed??0)>0&&"crewlet-sheet-grid__sync--failed"),children:[(0,E.jsx)("span",{children:_.sync(N)}),(N.failed??0)>0&&f?(0,E.jsx)(Fr,{size:"small",variant:"ghost",onClick:f,children:_.retry}):null]}):null]}):null]})}function Uh(e,t){return`${e}-r${t.row<0?"h":t.row}-c${t.col}`}function p5(e,t,l){let n=t.get(il(e.id,l));return n===void 0||e.refused?.[l]!==void 0?e:{...e,refused:{...e.refused,[l]:n}}}var Jl=ie(ze(),1),Pr={noData:"This page did not declare the data capability, so the sheet cannot load.",noColumns:e=>`The ${e} collection has no columns yet.`,undoSkipped:e=>e?`${e} Undo skipped.`:"Somebody changed this after you. Undo skipped.",addRowFailed:e=>`Could not add a row. ${e}`};function vc(e,t){console.warn(`[crewlet artifact-kit] ${e}`,t)}var m5=e=>e.outcome==="applied"||e.outcome==="pending";function Qv(e){return m5(e)?null:e.outcome==="refused"?$d(e.code,e.detail,jl):jl.couldNotSave}function Zv({runtime:e,collection:t,columns:l,sort:n,frozen:a,readOnly:i=!1,label:r,height:o}){let u=e.capabilities.has("data"),c=e.capabilities.has("presence"),h=e.capabilities.has("identity"),g=(0,Q.useMemo)(()=>e.data.collection(t),[e,t]),[d,m]=(0,Q.useState)(null),[b,x]=(0,Q.useState)(void 0),[N,f]=(0,Q.useState)([]),[s,p]=(0,Q.useState)(n),[y,M]=(0,Q.useState)(null),[O,A]=(0,Q.useState)([]),[_,Z]=(0,Q.useState)([]),[C,R]=(0,Q.useState)(!1),[K,T]=(0,Q.useState)(0),[j,fe]=(0,Q.useState)({text:"",n:0}),Ee=(0,Q.useCallback)(H=>fe(Y=>({text:H,n:Y.n+1})),[]),[,Ht]=(0,Q.useState)(0),Il=(0,Q.useRef)(new Map),Ut=(0,Q.useMemo)(()=>new Fd,[]);(0,Q.useEffect)(()=>p(n),[n]),(0,Q.useEffect)(()=>Ut.subscribe(()=>Ht(H=>H+1)),[Ut]),(0,Q.useEffect)(()=>{if(!u)return;let H=!0;return g.schema().then(Y=>{H&&(x(Y?.title),l||m(Zg(Y)))}).catch(Y=>{vc(`the schema of ${t} could not be read`,Y),H&&!l&&m([])}),()=>{H=!1}},[g,l,u,t]),(0,Q.useEffect)(()=>{if(u)return g.subscribe(null,H=>{f(H.docs.map(Y=>({id:Y.id,values:Y.data})))})},[g,u]),(0,Q.useEffect)(()=>{if(!h)return;let H=!0;return e.identity.me().then(Y=>{H&&M(Y)}).catch(Y=>vc("the reader could not be identified",Y)),e.identity.people().then(Y=>{H&&A(Y.map(ih))}).catch(Y=>vc("the people a person cell offers could not be listed",Y)),()=>{H=!1}},[e,h]);let De=(0,Q.useMemo)(()=>Fg(l??d??[],a),[l,d,a]),Dn=(0,Q.useMemo)(()=>{let H=new Set(O.map(Ge=>Ge.id)),Y=new Set;for(let Ge of De)if(Ge.type==="person")for(let $t of N){let _t=$t.values[Ge.field];typeof _t=="string"&&!H.has(_t)&&Y.add(_t)}return[...Y].sort()},[De,N,O]),St=Dn.join("\0");(0,Q.useEffect)(()=>{if(!h||Dn.length===0)return;let H=!0;return e.identity.lookup(Dn).then(Y=>{if(!H)return;let Ge=Object.values(Y).filter($t=>$t!==null).map(ih);Ge.length>0&&A($t=>[...$t,...Ge.filter(_t=>!$t.some(F=>F.id===_t.id))])}).catch(Y=>vc("the people named in person cells could not be looked up",Y)),()=>{H=!1}},[e,h,St]),(0,Q.useEffect)(()=>{if(c)return e.presence.subscribe(H=>Z(H))},[e,c]),(0,Q.useEffect)(()=>{if(e.connection)return R(e.connection.state==="offline"),e.connection.subscribe(H=>R(H==="offline"))},[e]);let Lt=(0,Q.useMemo)(()=>{let H=Pg(_,Il.current);return Il.current=H,H},[_]),El=y?.id??null,bc=(0,Q.useMemo)(()=>ev(_,t,El,Lt),[_,t,El,Lt]),zi=(0,Q.useMemo)(()=>tv(_,El,Lt),[_,El,Lt]),to=(0,Q.useCallback)(H=>{let Y=H.map(F=>Ut.begin(F.rowId,F.field)),Ge=F=>{for(let Ft of Y)Ft(F===null?{ok:!0}:{ok:!1,message:F})},$t=F=>({[F.field]:F.value}),_t;if(H.length===1){let[F]=H;_t=g.update(F.rowId,$t(F))}else{let F=e.data.batch();for(let Ft of H)F.update(t,Ft.rowId,$t(Ft));_t=F.commit()}_t.then(F=>Ge(Qv(F)),F=>Ge(F instanceof Error&&F.message?F.message:jl.couldNotSave))},[t,Ut,e,g]),Gn=(0,Q.useCallback)(()=>{g.create({}).then(H=>{let Y=Qv(H);T(Ge=>Y===null?0:Ge+1),Y!==null&&Ee(Pr.addRowFailed(Y))},H=>{T(Y=>Y+1),Ee(Pr.addRowFailed(H instanceof Error&&H.message?H.message:jl.couldNotSave))})},[g,Ee]),Hn=(0,Q.useCallback)(H=>{H().then(Y=>{let Ge=Y;Ge&&Ge.outcome==="refused"&&Ee(Pr.undoSkipped(Ge.detail))},Y=>Ee(Y instanceof Error&&Y.message?Y.message:jl.couldNotSave))},[Ee]),lo=(0,Q.useCallback)(H=>{c&&e.presence.set({focus:H?{collection:t,doc:H.rowId,field:H.field}:null})},[e,c,t]),pa=(0,Q.useCallback)(H=>{c&&e.presence.set({editing:H?{collection:t,doc:H.rowId,field:H.field}:null})},[e,c,t]);if(!u)return(0,Jl.jsx)(Kr,{variant:"warning",children:Pr.noData});if(De.length===0&&(l!==null||d!==null))return(0,Jl.jsx)(Kr,{variant:"neutral",children:Pr.noColumns(t)});let L=i||y?.role==="viewer",Un={...Ut.sync(C),failed:K};return(0,Jl.jsxs)("div",{className:"crewlet-kit-sheet",children:[zi.length>0?(0,Jl.jsx)("div",{className:"crewlet-kit-sheet__presence",children:(0,Jl.jsx)(zh,{members:zi})}):null,(0,Jl.jsx)(qh,{label:r??b??t,columns:De,rows:Ut.decorate(N),people:O,mode:L?"read":"edit",onEdit:L?void 0:to,onAddRow:L?void 0:Gn,onActiveCellChange:lo,onEditingChange:pa,onUndo:()=>Hn(()=>e.data.undo()),onRedo:()=>Hn(()=>e.data.redo()),presence:bc,sort:s,onSortChange:p,sync:Un,onRetry:K>0?Gn:void 0,height:o}),j.text?(0,Jl.jsx)(Kr,{variant:"warning",live:"polite",children:j.text},j.n):null]})}var Yh="crewlet:ready";function jh(e=window){return e.crewlet?Promise.resolve(e.crewlet):new Promise(t=>{let l=()=>{e.crewlet&&(e.removeEventListener(Yh,l),t(e.crewlet))};e.addEventListener(Yh,l)})}var $v=ie(ze(),1);function Iv(e,t){let l=e.ownerDocument.createElement("div");l.className="crewlet-kit-sheet__root",e.append(l);let n=(0,Jv.createRoot)(l),a=t,i=t.runtime??null,r=!1,o=()=>{r||!i||n.render((0,$v.jsx)(Zv,{runtime:i,collection:a.collection,columns:a.columns&&a.columns.length>0?a.columns:null,sort:a.sort??null,frozen:a.frozen,readOnly:a.readOnly,label:a.label,height:a.height}))};return i?o():jh(e.ownerDocument.defaultView??window).then(u=>{i=u,o()}),{update(u){a=u,u.runtime&&(i=u.runtime),o()},unmount(){r=!0,n.unmount(),l.remove()}}}var eo=class extends HTMLElement{static get observedAttributes(){return Jg}attributeChangedCallback(){this.closest("crewlet-sheet")?.dispatchEvent(new Event("crewlet-columnchange"))}toColumn(){return Ig(t=>this.getAttribute(t))}},g5=["collection","sort","frozen","readonly","label","height"],yc=class extends HTMLElement{constructor(){super(...arguments);Ml(this,"mounted",null);Ml(this,"observer",typeof MutationObserver=="function"?new MutationObserver(()=>this.refresh()):null);Ml(this,"onColumnChange",()=>this.refresh())}static get observedAttributes(){return g5}connectedCallback(){this.addEventListener("crewlet-columnchange",this.onColumnChange),this.observer?.observe(this,{childList:!0}),this.refresh()}disconnectedCallback(){this.removeEventListener("crewlet-columnchange",this.onColumnChange),this.observer?.disconnect(),this.mounted?.unmount(),this.mounted=null}attributeChangedCallback(){this.isConnected&&this.refresh()}options(){let l=this.getAttribute("collection")?.trim();if(!l)return null;let n=[...this.children].filter(u=>u instanceof eo).map(u=>u.toColumn()).filter(u=>u!==null),a=Number(this.getAttribute("frozen")),i=Number(this.getAttribute("height")),r={collection:l,columns:n,sort:$g(this.getAttribute("sort")),readOnly:this.hasAttribute("readonly")};this.hasAttribute("frozen")&&Number.isInteger(a)&&a>=0&&(r.frozen=a),this.hasAttribute("height")&&Number.isFinite(i)&&i>0&&(r.height=i);let o=this.getAttribute("label")?.trim();return o&&(r.label=o),r}refresh(){let l=this.options();if(!l){this.mounted?.unmount(),this.mounted=null;return}this.mounted?this.mounted.update(l):this.mounted=Iv(this,l)}};function Kh(e=customElements){e.get("crewlet-column")||e.define("crewlet-column",eo),e.get("crewlet-sheet")||e.define("crewlet-sheet",yc)}Kh();export{eo as CrewletColumnElement,yc as CrewletSheetElement,Yh as RUNTIME_READY_EVENT,Kh as defineElements,Iv as mountSheet,jh as whenRuntime};
|
|
12
|
+
`?(l.push(n),t.push(l),l=[],n=""):n+=o,i+=1}return(n!==""||l.length>0)&&(l.push(n),t.push(l)),t}function Jd(e,t,l,n,a){let i={edits:[],refused:[]};if(n.length===0)return i;let r=n.length===1&&n[0].length===1,o=r?l.bottom-l.top+1:n.length,u=r?l.right-l.left+1:Math.max(...n.map(c=>c.length));for(let c=0;c<o;c+=1){let h=t[l.top+c];if(!h)break;for(let g=0;g<u;g+=1){let d=e[l.left+g];if(!d)break;if(d.readOnly)continue;let m=r?n[0][0]:n[c]?.[g];if(m===void 0)continue;let b=Si(d,m,a);if(!b.ok){i.refused.push({rowId:h.id,field:d.field,error:b.error});continue}bi(b.value,ct(d,h.values[d.field]))||i.edits.push({rowId:h.id,field:d.field,value:b.value})}}return i}function Id(e,t,l,n){let a={edits:[],refused:[]};for(let i=l.top;i<=l.bottom;i+=1){let r=t[i];if(r)for(let o=l.left;o<=l.right;o+=1){let u=e[o];if(!u||u.readOnly)continue;let c=u.type==="checkbox"?!1:u.type==="multiselect"?[]:null;if(!bi(ct(u,r.values[u.field]),c)){if(u.required&&u.type!=="checkbox"){a.refused.push({rowId:r.id,field:u.field,error:n.labels.required(u.label)});continue}a.edits.push({rowId:r.id,field:u.field,value:c})}}}return a}function $d(e,t,l){if(e==="forbidden"||e==="capability_not_declared")return l.forbidden;let n=t?.trim();return n||l.couldNotSave}var Pu=(e,t)=>`${e}\0${t}`,Fd=class{constructor(){Ml(this,"waiting",new Map);Ml(this,"refusals",new Map);Ml(this,"listeners",new Set);Ml(this,"failed",0)}begin(e,t){let l=Pu(e,t);this.refusals.delete(l),this.waiting.set(l,(this.waiting.get(l)??0)+1),this.emit();let n=!1;return a=>{if(n)return;n=!0;let i=(this.waiting.get(l)??1)-1;i<=0?this.waiting.delete(l):this.waiting.set(l,i),a.ok||(this.refusals.set(l,a.message),this.failed+=1),this.emit()}}isPending(e,t){return this.waiting.has(Pu(e,t))}refusal(e,t){return this.refusals.get(Pu(e,t))}dismiss(e,t){this.refusals.delete(Pu(e,t))&&this.emit()}get saving(){let e=0;for(let t of this.waiting.values())e+=t;return e}sync(e=!1){return{saving:this.saving,offline:e}}get failures(){return this.failed}resetFailures(){this.failed=0}decorate(e){return this.waiting.size===0&&this.refusals.size===0?[...e]:e.map(t=>{let l=[],n={};for(let a of this.waiting.keys()){let[i,r]=a.split("\0");i===t.id&&l.push(r)}for(let[a,i]of this.refusals){let[r,o]=a.split("\0");r===t.id&&(n[o]=i)}return l.length===0&&Object.keys(n).length===0?t:{...t,pending:[...t.pending??[],...l],refused:{...t.refused,...n}}})}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}emit(){for(let e of this.listeners)e()}};function jg(e,t){let l=e instanceof Date?e:new Date(e);return Number.isNaN(l.getTime())?"":new Intl.DateTimeFormat(t,{hour:"2-digit",minute:"2-digit"}).format(l)}function ac(e,t,l,n){return t.changed(e.by,jg(e.at,n),l)}var ic=e=>e.previous!==void 0;function Wd(e,t,l,n){if(!l)return[...t];let a=e.find(r=>r.field===l.field);if(!a)return[...t];let i=l.direction==="descending"?-1:1;return t.map((r,o)=>({row:r,index:o,value:ct(a,r.values[a.field])})).sort((r,o)=>{let u=c=>c===null||c===""||Array.isArray(c)&&c.length===0;return a.type!=="checkbox"&&(u(r.value)||u(o.value))?u(r.value)===u(o.value)?r.index-o.index:u(r.value)?1:-1:i*qg(a,r.value,o.value,n)||r.index-o.index}).map(({row:r})=>r)}function rc(e,t){return!e||e.field!==t?{field:t,direction:"ascending"}:e.direction==="ascending"?{field:t,direction:"descending"}:null}var il=(e,t)=>`${e}\0${t}`;function Pd(e){let t=new Map;for(let l of e??[]){let n=il(l.rowId,l.field),a=t.get(n);a?a.push(l):t.set(n,[l])}for(let l of t.values())l.sort((n,a)=>+!!a.editing-+!!n.editing);return t}function eh(e){let t=new Map;for(let l of e??[])t.has(l.rowId)||t.set(l.rowId,l);return t}function th(e,t=2){let l=new Map;for(let n of e??[]){let a=l.get(n.field)??[];a.length<t&&!a.some(i=>i.id===n.id)&&a.push(n),l.set(n.field,a)}return l}function lh(e){return e.map(t=>t.name).join(", ")}function nh(e,t,l,n,a=Vr){let{labels:i}=n,r=[`${e.label}.`];e.readOnly&&r.push(i.readOnly(e.label)),t.pending?.includes(e.field)&&r.push(`${i.saving}.`);let o=t.refused?.[e.field];o&&r.push(o);let u=l.map(h=>h.name);u.length>0&&r.push(a.alsoHere(u));let c=t.changed?.[e.field];if(c){let h=ic(c)&&al(e,ct(e,c.previous),n)||null;r.push(ac(c,i,h,n.locale))}return r.join(" ")}function oc(e,t,l,n){let a=e.find(i=>i.type==="text");if(a){let i=al(a,ct(a,t.values[a.field]),n);if(i)return i}return String(l+1)}function B(...e){return e.filter(Boolean).join(" ")}var c3=["todo","in_progress","done","blocked"];function s3(e){if(e.options)return e.options.map(t=>{let l={id:t.id,label:t.label};return t.color&&(l.color=t.color),t.category&&c3.includes(t.category)&&(l.category=t.category),t.archived&&(l.archived=!0),l})}function Zg(e){let t=[];for(let l of e?.columns??[]){if(l.hidden)continue;let n=l.type,a=ec(n),i={field:l.key,label:l.label||l.key,type:a?n:"text"};a||(i.readOnly=!0),l.primary&&(i.frozen=!0),l.required&&(i.required=!0),l.min!==void 0&&(i.min=l.min),l.max!==void 0&&(i.max=l.max),l.max_length!==void 0&&(i.maxLength=l.max_length),l.max_items!==void 0&&(i.maxItems=l.max_items);let r=s3(l);r&&(i.options=r),t.push(i)}return t}function f3(e,t){let l=t.trim();if(l===""||l==="plain")return;let n=/^currency:([A-Za-z]{3})$/.exec(l);if(n){e.numberStyle="currency",e.currency=n[1].toUpperCase();return}if(l==="percent"){e.numberStyle="percent";return}let a=/^0(?:\.(0+))?(%)?$/.exec(l);a&&(e.precision=a[1]?.length??0,a[2]&&(e.numberStyle="percent"))}var jr=e=>{if(e===null||e.trim()==="")return;let t=Number(e);return Number.isFinite(t)?t:void 0},Jg=["field","type","label","format","options","width","readonly","required","frozen","min","max","max-length","max-items","time"];function Ig(e){let t=e("field")?.trim();if(!t)return null;let l=e("type")?.trim()??"text",n=ec(l),a={field:t,label:e("label")?.trim()||t,type:n?l:"text"};(!n||e("readonly")!==null)&&(a.readOnly=!0),e("required")!==null&&(a.required=!0),e("frozen")!==null&&(a.frozen=!0),e("time")!==null&&(a.time=!0);let i=jr(e("width"));i!==void 0&&(a.width=i);let r=jr(e("min"));r!==void 0&&(a.min=r);let o=jr(e("max"));o!==void 0&&(a.max=o);let u=jr(e("max-length"));u!==void 0&&(a.maxLength=u);let c=jr(e("max-items"));c!==void 0&&(a.maxItems=c);let h=e("options");h&&(a.options=Hd(h));let g=e("format");return g&&a.type==="number"&&f3(a,g),a}function $g(e){let t=e?.trim();return t?t.startsWith("-")?{field:t.slice(1),direction:"descending"}:{field:t,direction:"ascending"}:null}function Fg(e,t){return t===void 0?[...e]:e.map((l,n)=>n<t?{...l,frozen:!0}:l)}var ah=e=>e!==void 0&&Br(e)?e:void 0;function ih(e){let t={id:e.id,name:e.displayName,kind:e.kind},l=ah(e.avatar?.hue);return l&&(t.hue=l),e.avatar?.character&&(t.character=e.avatar.character),t}function Wg(e,t){return e.filter(l=>l.status!=="away"&&l.viewer.id!==t)}function Pg(e,t){return Rd(e.map(l=>({id:l.session,kind:l.viewer.kind,hue:ah(l.color)??ah(l.viewer.avatar?.hue)})),t)}function ev(e,t,l,n){let a=[];for(let i of Wg(e,l)){let r=i.state.editing,o=r??i.state.focus;!o||o.collection!==t||!o.doc||!o.field||a.push({rowId:o.doc,field:o.field,id:i.session,name:i.viewer.displayName,kind:i.viewer.kind,hue:n.get(i.session)??"purple",editing:!!r,idle:i.status==="idle"})}return a}function tv(e,t,l){return Wg(e,t).map(n=>{let a={id:n.session,seat:n.viewer.id,name:n.viewer.displayName,kind:n.viewer.kind,activity:n.state.editing?"editing":n.status==="idle"?"idle":"viewing"},i=l.get(n.session);return i&&(a.hue=i),n.viewer.avatar?.character&&(a.character=n.viewer.avatar.character),a})}var Q=ie(cl(),1);var nv=ie(ze(),1),lv={xs:12,sm:14,md:16,lg:20,xl:24},av=1.75,d3=`var(--crewlet-glyph-stroke, ${av})`;function h3(e){return e===void 0?"1em":typeof e=="number"?`${e}px`:e in lv?`${lv[e]}px`:e}function bt({size:e,title:t,filled:l=!1,fillable:n,className:a,style:i,children:r,...o}){let u=h3(e);return(0,nv.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:u,height:u,stroke:"currentColor",...t?{role:"img","aria-label":t}:{"aria-hidden":!0,focusable:!1},className:a===void 0?"crewlet-glyph":`crewlet-glyph ${a}`,...o,viewBox:"0 0 24 24",fill:n&&l?"currentColor":"none",strokeWidth:av,strokeLinecap:"round",strokeLinejoin:"round",style:{...i,strokeWidth:d3},children:r})}var V=ie(ze(),1);function rh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M12 5v14"}),(0,V.jsx)("path",{d:"m19 12-7 7-7-7"})]})}function oh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"m5 12 7-7 7 7"}),(0,V.jsx)("path",{d:"M12 19V5"})]})}function cc(e){return(0,V.jsx)(bt,{...e,fillable:!1,children:(0,V.jsx)("path",{d:"M20 6 9 17l-5-5"})})}function Ei(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("line",{x1:"12",x2:"12",y1:"8",y2:"12"}),(0,V.jsx)("line",{x1:"12",x2:"12.01",y1:"16",y2:"16"})]})}function uh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("path",{d:"m16 9-5.5 5.5L8 12"})]})}function ch(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M15 3h6v6"}),(0,V.jsx)("path",{d:"M10 14 21 3"}),(0,V.jsx)("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"})]})}function sc(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,V.jsx)("path",{d:"M12 16v-4"}),(0,V.jsx)("path",{d:"M12 8h.01"})]})}function sh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}),(0,V.jsx)("path",{d:"m15 5 4 4"})]})}function fh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M5 12h14"}),(0,V.jsx)("path",{d:"M12 5v14"})]})}function dh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}),(0,V.jsx)("path",{d:"M3 3v5h5"}),(0,V.jsx)("path",{d:"M12 7v5l4 2"})]})}function hh(e){return(0,V.jsx)(bt,{...e,fillable:!0,children:(0,V.jsx)("path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"})})}function ph(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}),(0,V.jsx)("path",{d:"M12 9v4"}),(0,V.jsx)("path",{d:"M12 17h.01"})]})}function mh(e){return(0,V.jsxs)(bt,{...e,fillable:!1,children:[(0,V.jsx)("path",{d:"M18 6 6 18"}),(0,V.jsx)("path",{d:"m6 6 12 12"})]})}var It=ie(ze(),1),p3={neutral:(0,It.jsx)(sc,{size:"md"}),info:(0,It.jsx)(sc,{size:"md"}),success:(0,It.jsx)(uh,{size:"md"}),warning:(0,It.jsx)(ph,{size:"md"}),danger:(0,It.jsx)(Ei,{size:"md"})},Kr=({variant:e="info",title:t,icon:l,layout:n="card",action:a,live:i,className:r,children:o,...u})=>(0,It.jsxs)("div",{...u,"aria-live":i,className:B("crewlet-callout",`crewlet-callout--${e}`,`crewlet-callout--${n}`,r),children:[(0,It.jsx)("span",{className:"crewlet-callout__icon","aria-hidden":!0,children:l??p3[e]}),(0,It.jsxs)("div",{className:"crewlet-callout__content",children:[t?(0,It.jsx)("span",{className:"crewlet-callout__title",children:t}):null,o]}),a?(0,It.jsx)("div",{className:"crewlet-callout__action",children:a}):null]});var m3=ie(ze(),1);function Cn(e){return`crewlet-presence-hue--${e}`}var mc=ie(cl(),1);var fc=ie(ze(),1),wh={paths:["M543.42 868.92 l-34.44 -0.24 0 -58.77 0 -58.77 -28.92 0 -28.80 0 -40.20 -39.61 c-119.78 -118.25 -181.49 -179.97 -204.30 -204.30 -15.87 -16.93 -82.75 -96.74 -92.51 -110.38 l-3.76 -5.17 26.80 -18.46 c14.69 -10.11 34.09 -23.51 43.14 -29.86 55.25 -38.32 70.29 -48.43 71.12 -47.49 0.47 0.47 11.64 13.87 24.69 29.74 13.17 15.87 27.98 33.62 32.80 39.50 4.94 5.88 21.63 26.10 37.15 44.90 15.52 18.81 28.56 34.21 29.15 34.21 0.47 0.12 0.82 -30.44 0.82 -67.83 l0 -68.06 37.26 -34.56 c43.38 -40.20 61.83 -57.13 75.11 -69 l9.52 -8.46 261.78 0 261.90 0 47.14 45.73 c25.98 25.16 52.43 51.02 58.66 57.36 l11.52 11.52 0.24 67.94 0.35 67.83 31.74 -40.79 c17.51 -22.33 34.91 -45.02 38.91 -50.19 15.16 -20.34 44.32 -57.72 45.14 -58.07 0.71 -0.24 104.97 75.82 126.83 92.51 2.23 1.65 4.58 3.41 5.17 3.76 1.65 1.18 -7.99 14.22 -46.08 62.07 -35.38 44.32 -49.84 61.13 -92.39 106.97 -19.28 20.81 -38.91 41.73 -148.70 157.40 l-34.68 36.56 -26.45 0.12 c-19.04 0 -26.92 0.35 -27.98 1.41 -1.06 1.06 -1.41 15.05 -1.41 55.72 l0 54.31 -34.91 0.47 c-19.28 0.24 -53.72 0.24 -76.41 0 l-41.49 -0.47 0 -55.72 0 -55.72 -99.33 0 -99.33 0 -0.24 56.19 -0.35 56.07 -39.97 0 c-21.98 0 -55.48 -0.12 -74.29 -0.35z m94.74 -13.87 l7.17 -0.82 0 -54.89 c0 -49.02 0.24 -55.13 1.88 -55.72 1.06 -0.35 51.84 -0.71 112.85 -0.71 l110.97 0 0 55.84 0 55.84 62.89 0 62.89 0 0 -55.84 0 -55.84 31.50 0 31.50 0 14.69 -14.93 c30.80 -31.50 113.20 -118.49 144.47 -152.58 48.66 -53.01 81.34 -90.28 104.85 -119.43 22.80 -28.45 44.43 -56.42 44.43 -57.48 0 -0.59 -2 -2.47 -4.35 -4.23 -2.47 -1.76 -7.05 -5.17 -10.34 -7.64 -3.17 -2.35 -16.93 -12.34 -30.56 -22.22 -13.52 -9.87 -33.50 -24.57 -44.43 -32.68 -16.34 -12.11 -19.98 -14.34 -21.39 -13.17 -0.94 0.82 -5.88 6.82 -10.81 13.40 -4.94 6.47 -13.99 18.46 -20.10 26.57 -6.23 8.11 -26.57 34.44 -45.37 58.54 -18.81 24.10 -36.56 47.02 -39.50 50.78 -5.29 7.05 -5.29 7.05 -11.40 7.05 l-6.23 0 0 -79.58 0 -79.58 -37.85 -37.03 c-20.92 -20.45 -45.14 -44.08 -53.95 -52.66 l-15.99 -15.63 -256.84 0 -256.73 0 -47.49 44.20 c-26.21 24.33 -51.13 47.49 -55.60 51.37 l-7.88 7.05 0 79.11 0 79.23 -6.35 0 -6.35 0 -48.66 -58.54 c-26.80 -32.09 -55.95 -67.24 -64.89 -78.17 -8.93 -10.81 -16.69 -19.63 -17.16 -19.63 -0.94 0 -8.58 5.17 -34.32 22.92 -34.21 23.74 -46.08 31.86 -62.65 43.26 -10.34 7.05 -19.28 13.28 -19.87 13.87 -0.59 0.47 2.35 5.05 6.47 10.11 13.87 16.93 53.13 63.12 66.77 78.40 21.86 24.57 83.81 87.69 145.41 148.23 31.62 31.03 68.65 67.36 82.28 80.76 l24.69 24.45 33.50 0.24 33.38 0.35 0.35 59.13 0.24 59.01 53.37 0 c29.27 0 56.54 -0.35 60.54 -0.71z","M535.78 783.81 l-0.35 -59.13 -36.67 0 -36.67 0 -6.82 -6.47 c-48.78 -46.43 -176.91 -173.03 -210.41 -207.82 -24.69 -25.74 -75.70 -81.70 -93.69 -102.85 -3.29 -3.88 -5.29 -7.17 -4.70 -7.76 1.29 -1.06 58.30 -40.32 82.05 -56.42 l16.34 -11.05 3.64 4.47 c11.05 13.87 76.99 92.51 98.98 118.14 l25.74 29.97 15.63 0.35 15.52 0.35 0 -82.87 0 -82.75 50.55 -46.67 c27.86 -25.74 50.55 -47.14 50.55 -47.72 0 -0.59 46.78 -1.06 111.55 -1.06 l111.55 0 15.52 14.81 c15.28 14.58 15.52 14.69 17.98 12.58 1.29 -1.18 8.46 -7.76 15.75 -14.58 l13.40 -12.46 17.75 -0.71 c9.76 -0.47 58.77 -0.82 108.85 -0.82 l90.98 0 14.34 13.75 c7.76 7.64 24.57 23.86 37.15 36.20 12.58 12.34 29.15 28.45 36.67 35.85 l13.87 13.40 0.24 82.87 0.35 82.99 14.22 0.35 14.34 0.35 4.47 -5.64 c2.47 -3.06 11.52 -14.11 19.98 -24.45 8.46 -10.34 30.56 -38.32 49.14 -62.30 43.85 -56.42 46.20 -59.36 48.43 -59.36 2.12 0 4.82 1.88 47.96 33.27 43.02 31.27 45.37 33.03 45.37 34.09 0 0.82 -39.03 46.20 -62.42 72.53 -62.42 70.29 -106.50 117.67 -184.08 197.60 l-50.78 52.43 -13.28 0.71 c-7.29 0.47 -23.98 0.82 -37.03 0.82 l-23.86 0 0 57.01 0 57.01 -49.37 0 -49.37 0 0 -56.42 0 -56.42 -114.37 0 c-63.01 0 -120.13 0.35 -126.95 0.82 l-12.58 0.71 0 55.72 0 55.60 -47.61 0 -47.61 0 -0.24 -59.01z m443.16 -373.22 l-0.35 -119.66 -223.93 0.12 -223.93 0.12 -0.35 119.43 -0.24 119.55 224.52 0 224.52 0 -0.24 -119.55z","M546.36 516.39 c-0.24 -0.59 -0.47 -4.94 -0.35 -9.76 0 -4.82 0.12 -52.54 0.35 -106.15 l0.24 -97.21 209.59 0.24 209.47 0.35 0.35 106.73 0.24 106.62 -209.71 0 c-115.43 0 -209.94 -0.35 -210.18 -0.82z m121.07 -100.50 l-0.35 -66.18 -34.32 -0.35 -34.44 -0.24 0 66.41 0 66.41 34.68 0 34.68 0 -0.24 -66.06z m260.96 0 l-0.35 -66.18 -34.09 0 -34.09 0 0 10.93 c0 5.88 0.12 35.62 0.35 66.06 l0.24 55.25 34.09 0 34.09 0 -0.24 -66.06z"],box:{left:110.48999999999992,top:196.30999999999992,right:1389.0800000000002,bottom:869.2899999999998},centroid:{x:755.6746766446299,y:497.3295661269271}},hc=e=>e.reduce((t,l,n)=>{let a=e[(n+1)%e.length];return t+l[0]*a[1]-a[0]*l[1]},0);function iv(e,t,l){for(let n of e)n.forEach((a,i)=>{let r=n[(i+1)%n.length];a[1]!==r[1]&&l.push(a[1]<r[1]?{x0:a[0],y0:a[1],x1:r[0],y1:r[1],wind:1,add:t}:{x0:r[0],y0:r[1],x1:a[0],y1:a[1],wind:-1,add:t})})}var Ti=(e,t)=>t===e.y0?e.x0:t===e.y1?e.x1:e.x0+(t-e.y0)*(e.x1-e.x0)/(e.y1-e.y0);function g3(e){let t=new Set;for(let l of e)t.add(l.y0),t.add(l.y1);for(let l=0;l<e.length;l+=1){let n=e[l];for(let a=l+1;a<e.length&&e[a].y0<n.y1;a+=1){let i=e[a],r=Math.max(n.y0,i.y0),o=Math.min(n.y1,i.y1);if(o<=r)continue;let u=Ti(n,r)-Ti(i,r),c=Ti(n,o)-Ti(i,o);u*c<0&&t.add(r+(o-r)*u/(u-c))}}return[...t].sort((l,n)=>l-n)}var v3=1e-9;function y3(){let e=new Map;return(t,l)=>{let n=e.get(t);n||e.set(t,n=[]);for(let a of n)if(Math.abs(a-l)<=v3)return a;return n.push(l),l}}function b3(e,t,l,n){let a=e.map(h=>({e:h,a:n(t,Ti(h,t)),b:n(l,Ti(h,l))})).sort((h,g)=>h.a+h.b-(g.a+g.b)),i=[],r=0,o=0,u=!1,c=[0,0];for(let h=0;h<a.length;){let{a:g,b:d}=a[h];for(;h<a.length&&a[h].a===g&&a[h].b===d;h+=1){let{e:b}=a[h];b.add?r+=b.wind:o+=b.wind}let m=r!==0&&o===0;m&&!u?c=[g,d]:!m&&u&&i.push({left:c,right:[g,d]}),u=m}return i}function rv(e,t){let l=[],n=0;for(let[a,i]of e){let r=a;for(;n<t.length&&t[n][1]<=r;)n+=1;for(let o=n;o<t.length&&t[o][0]<i&&r<i;o+=1){let[u,c]=t[o];u>r&&l.push([r,u]),r=Math.max(r,c)}r<i&&l.push([r,i])}return l}function w3(e,t){let l=[];return t.forEach((n,a)=>{let i=e[a],r=e[a+1];for(let{left:o,right:u}of n)l.push([[u[0],i],[u[1],r]]),l.push([[o[1],r],[o[0],i]])}),e.forEach((n,a)=>{let i=a>0?t[a-1].map(({left:o,right:u})=>[o[1],u[1]]):[],r=a<t.length?t[a].map(({left:o,right:u})=>[o[0],u[0]]):[];for(let[o,u]of rv(r,i))l.push([[o,n],[u,n]]);for(let[o,u]of rv(i,r))l.push([[u,n],[o,n]])}),l.filter(([n,a])=>n[0]!==a[0]||n[1]!==a[1])}var xh=1e-9;function x3(e){let t=[...e],l=!0;for(;l&&t.length>=3;){l=!1;let n=[];for(let a=0;a<t.length;a+=1){let i=n.length>0?n[n.length-1]:t[t.length-1],r=t[a],o=t[(a+1)%t.length],u=r[0]-i[0],c=r[1]-i[1],h=o[0]-r[0],g=o[1]-r[1],d=Math.hypot(u,c)<xh,m=Math.abs(u*g-c*h)<xh;if(d||m){l=!0;continue}n.push(r)}t=n}return t}function S3(e){let t=i=>`${i[0]} ${i[1]}`,l=new Map;e.forEach(([i],r)=>{let o=l.get(t(i));o?o.push(r):l.set(t(i),[r])});let n=new Uint8Array(e.length),a=[];return e.forEach((i,r)=>{if(n[r])return;let o=[],u=r;for(;u!==void 0;){n[u]=1;let[c,h]=e[u];if(o.push(c),h[0]===i[0][0]&&h[1]===i[0][1])break;u=l.get(t(h))?.find(g=>!n[g])}a.push(o)}),a.map(x3).filter(i=>i.length>=3&&Math.abs(hc(i))>xh)}function Sh(e,t=[]){let l=[];iv(e,!0,l),iv(t,!1,l),l.sort((u,c)=>u.y0-c.y0);let n=g3(l),a=y3(),i=[],r=0,o=[];for(let u=0;u+1<n.length;u+=1){let c=n[u],h=n[u+1];for(;r<l.length&&l[r].y0<=c;)o.push(l[r++]);o=o.filter(g=>g.y1>c),i.push(b3(o,c,h,a))}return S3(w3(n,i))}var _3=e=>e.reduce((t,l)=>t+hc(l),0)/2;function E3(e){let t=0,l=0;for(let a of e)a.forEach((i,r)=>{let o=a[(r+1)%a.length],u=i[0]*o[1]-o[0]*i[1];t+=(i[0]+o[0])*u,l+=(i[1]+o[1])*u});let n=6*_3(e);return[t/n,l/n]}var gh=e=>hc(e)<0?e.reverse():e;function pv(e,t,l=4){let n=[];for(let a of e)a.forEach((i,r)=>{let o=a[(r+1)%a.length],u=a[(r+2)%a.length],c=Math.hypot(o[0]-i[0],o[1]-i[1]),h=(o[1]-i[1])/c,g=-(o[0]-i[0])/c,d=Math.hypot(u[0]-o[0],u[1]-o[1]),m=(u[1]-o[1])/d,b=-(u[0]-o[0])/d,x=t;n.push(gh([[i[0]+h*x,i[1]+g*x],[o[0]+h*x,o[1]+g*x],[o[0]-h*x,o[1]-g*x],[i[0]-h*x,i[1]-g*x]]));let N=(o[0]-i[0])*(u[1]-o[1])-(o[1]-i[1])*(u[0]-o[0]);if(N===0)return;let f=N>0?1:-1,s=[o[0]+f*h*x,o[1]+f*g*x],p=[o[0]+f*m*x,o[1]+f*b*x],y=h+m,M=g+b,O=y*y+M*M;if(O>0&&2/Math.sqrt(O)<=l){let A=[o[0]+f*y*2*x/O,o[1]+f*M*2*x/O];n.push(gh([o,s,A,p]))}else n.push(gh([o,s,p]))});return n}var ov=e=>Math.round(e*100)/100;function uv(e){return e.map(t=>`M${t.map(([n,a])=>`${ov(n)} ${ov(a)}`).filter((n,a,i)=>n!==i[a-1]).join("L")}Z`).join("")}var mv=["crewlet","hexlet","peaklet","prismlet","towerlet","bricklet","gemlet","coglet","pluslet","shieldlet","stacklet","sparklet","cloudlet","foxlet","rocketlet","crownlet","cactlet","wisplet","heartlet","flasklet","chiplet","duolet","chatlet","pagelet","archlet","dashlet","octlet","conelet","hivelet","folderlet"],Qr=e=>typeof e=="string"&&mv.includes(e),dc=96,T3=1.35,gv=.9,Xr=1.3,M3=2,vh={full:{width:.164,height:.62},compact:{width:.19,height:.68},offset:.312},yh={half:3.2,depth:2.6},cv=e=>Math.round(e*100)/100;function sv(e,t){let l=[];return e.forEach((n,a)=>{let i=typeof t=="number"?t:t[a]??0;if(!i){l.push(n);return}let r=o=>{let u=o[0]-n[0],c=o[1]-n[1],h=Math.min(i/Math.hypot(u,c),.45);return[n[0]+u*h,n[1]+c*h]};l.push(r(e[(a-1+e.length)%e.length]),r(e[(a+1)%e.length]))}),l}var fv=e=>`M${e.map(([t,l])=>`${cv(t)} ${cv(l)}`).join("L")}Z`;function be(e,t=0){let l=typeof t=="number"?e.map(()=>t):t;return hc(e)<0?sv([...e].reverse(),[...l].reverse()):sv(e,l)}var le=(e,t,l,n,a=0)=>be([[e,t],[e+l,t],[e+l,t+n],[e,t+n]],a),ye=(e,t,l,n=10)=>[le(e,l,n,dc-l),le(t,l,n,dc-l)];function A3(e,t,l,n,a){let i=[];for(let r=0;r<a;r+=1){let o=(r*360/a-90)*(Math.PI/180);for(let[u,c]of[[n,-15],[l,-8.5],[l,8.5],[n,15]]){let h=o+c*(Math.PI/180);i.push([e+u*Math.cos(h),t+u*Math.sin(h)])}}return be(i)}function N3(e){let t=e.flat(),l=t.map(([r])=>r),n=t.map(([,r])=>r),a=Math.min(...l),i=Math.min(...n);return{x:a,y:i,width:Math.max(...l)-a,height:Math.max(...n)-i}}var z3=([e,t,l,n])=>({x:e,y:t,width:l,height:n}),vv=new WeakMap;function ce(e){let t=e.holes??[],l,n={kind:"drawn",name:e.name,shape:e.shape,shapes:e.shapes.map(fv),holes:t.map(fv),visor:z3(e.visor),notch:e.notch===void 0?null:[e.notchX??50,e.notch],get bounds(){return l??(l=N3([...Th(n),...yv(n)]))}};return vv.set(n,{parts:e.shapes,holes:t}),n}var pc=e=>vv.get(e);function Th(e){let t=pc(e);return t.silhouette??(t.silhouette=Sh(t.parts))}function yv(e){let t=pc(e);return t.reach??(t.reach=pv(Th(e),gv+T3))}var _h=.095,bv=760,wv=869,Eh=(e,t)=>[50+(e-bv)*_h,dc+(t-wv)*_h],O3=Eh(wh.centroid.x,wh.centroid.y);function C3(){let{paths:e,box:t}=wh,[l,n]=Eh(t.left,t.top),[a,i]=Eh(t.right,t.bottom);return{kind:"mark",name:"Crewlet",shape:"The original mark, arms raised",transform:`translate(50 ${dc}) scale(${_h}) translate(${-bv} ${-wv})`,keyline:e[0],body:[e[1],e[2]],bounds:{x:l,y:n,width:a-l,height:i-n}}}var Mh={crewlet:C3(),hexlet:ce({name:"Hexlet",shape:"Hexagon with pointed flanks",shapes:[be([[30,22],[70,22],[86,54],[70,86],[30,86],[14,54]],[5,5,4,4,4,4]),...ye(34,56,84)],visor:[28,38,44,20],notch:22}),peaklet:ce({name:"Peaklet",shape:"Pentagon with a peaked roof",shapes:[be([[50,12],[82,36],[82,86],[18,86],[18,36]],[6,5,4,4,5]),...ye(28,62,84)],visor:[26,44,48,20]}),prismlet:ce({name:"Prismlet",shape:"Triangle with cut tips",shapes:[be([[50,10],[90,86],[10,86]],[9,8,8]),...ye(28,62,84)],visor:[31,54,38,18]}),towerlet:ce({name:"Towerlet",shape:"Tall pillar, narrow stance",shapes:[le(32,12,36,74,[8,8,4,4]),...ye(35,55,84)],visor:[36,24,28,16],notch:12}),bricklet:ce({name:"Bricklet",shape:"Wide, low slab",shapes:[le(10,42,80,44,[9,9,6,6]),...ye(22,68,84)],visor:[21,50,58,19],notch:42}),gemlet:ce({name:"Gemlet",shape:"Diamond on its point",shapes:[be([[50,6],[90,48],[50,90],[10,48]],[7,7,16,7]),...ye(40,52,76,8)],visor:[27,38,46,20]}),coglet:ce({name:"Coglet",shape:"Eight-tooth gear",shapes:[A3(50,52,37,31,8),...ye(36,54,78)],visor:[30,40,40,18]}),pluslet:ce({name:"Pluslet",shape:"Cross with squared arms",shapes:[le(34,14,32,72,[7,7,0,0]),le(10,34,80,30,7),...ye(37,53,84)],visor:[20,40,60,18],notch:14}),shieldlet:ce({name:"Shieldlet",shape:"Flat crown, pointed base",shapes:[be([[16,16],[84,16],[84,54],[50,92],[16,54]],[9,9,5,14,5]),...ye(41,51,79,8)],visor:[26,28,48,20],notch:16}),stacklet:ce({name:"Stacklet",shape:"Stepped crown, square base",shapes:[be([[34,12],[66,12],[66,26],[82,26],[82,86],[18,86],[18,26],[34,26]],[4,4,0,5,4,4,5,0]),...ye(28,62,84)],visor:[26,40,48,20],notch:12}),sparklet:ce({name:"Sparklet",shape:"Faceted drop",shapes:[be([[50,8],[80,48],[78,74],[64,86],[36,86],[22,74],[20,48]],[6,4,2,2,2,2,4]),...ye(36,54,84)],visor:[30,48,40,18]}),cloudlet:ce({name:"Cloudlet",shape:"Three-lobed cloud",shapes:[le(14,44,72,42,[0,0,8,8]),le(16,30,32,32,9),le(33,18,34,34,10),le(56,32,30,30,9),...ye(30,60,84)],visor:[24,48,52,18],notch:18}),foxlet:ce({name:"Foxlet",shape:"Square body, pointed ears",shapes:[le(18,34,64,52,6),be([[20,36],[26,12],[44,36]],[0,4,0]),be([[56,36],[74,12],[80,36]],[0,4,0]),...ye(28,62,84)],visor:[26,46,48,20]}),rocketlet:ce({name:"Rocketlet",shape:"Nose cone and swept fins",shapes:[be([[50,6],[66,26],[66,80],[34,80],[34,26]],[5,3,3,3,3]),be([[34,54],[34,80],[18,90],[18,70]],[0,0,3,3]),be([[66,54],[82,70],[82,90],[66,80]],[0,3,3,0]),...ye(37,55,80,8)],visor:[37,32,26,16]}),crownlet:ce({name:"Crownlet",shape:"Three-point crown",shapes:[le(18,40,64,46,[0,0,6,6]),be([[18,44],[18,18],[34,32],[50,12],[66,32],[82,18],[82,44]],[0,3,0,3,0,3,0]),...ye(28,62,84)],visor:[27,48,46,20]}),cactlet:ce({name:"Cactlet",shape:"Trunk with two raised arms",shapes:[le(32,12,36,74,[10,10,0,0]),le(16,50,18,9,[0,0,0,3]),le(16,28,9,31,[4.5,4.5,0,3]),le(66,58,18,9,[0,0,3,0]),le(75,38,9,29,[4.5,4.5,3,0]),...ye(36,54,84)],visor:[37,26,26,16],notch:12}),wisplet:ce({name:"Wisplet",shape:"Tall ghost with a zigzag hem",shapes:[be([[16,10],[84,10],[84,92],[72.5,82],[61,92],[50,82],[39,92],[27.5,82],[16,92]],[14,14,2,0,2,0,2,0,2])],visor:[26,28,48,20],notch:10}),heartlet:ce({name:"Heartlet",shape:"Faceted heart",shapes:[be([[50,26],[62,14],[78,14],[90,26],[90,44],[50,84],[10,44],[10,26],[22,14],[38,14]],[0,3,3,3,4,6,4,3,3,3]),...ye(41,51,74,8)],visor:[23,30,54,18]}),flasklet:ce({name:"Flasklet",shape:"Lab flask with a narrow neck",shapes:[le(35,6,30,7,2),le(40,10,20,22),be([[40,28],[60,28],[86,80],[86,86],[14,86],[14,80]],[0,0,6,3,3,6]),...ye(26,64,84)],visor:[33,54,34,14],notch:6}),chiplet:ce({name:"Chiplet",shape:"Square chip with pins",shapes:[le(24,20,52,60,6),...[31,47,63].map(e=>le(e,11,6,10)),...[32,47,62].map(e=>le(15,e,10,6)),...[32,47,62].map(e=>le(75,e,10,6)),...[31,47,63].map(e=>le(e,78,6,18))],holes:[le(29,70,5,5)],visor:[31,34,38,18]}),duolet:ce({name:"Duolet",shape:"Small head on a wide body",shapes:[le(30,10,40,34,8),le(18,40,64,46,6),...ye(28,62,84)],visor:[36,19,28,15],notch:10}),chatlet:ce({name:"Chatlet",shape:"Speech bubble with a tail",shapes:[le(14,22,72,54,8),be([[26,72],[46,72],[22,94]],[0,0,2])],visor:[24,34,52,22],notch:22}),pagelet:ce({name:"Pagelet",shape:"Page with a folded corner",shapes:[be([[20,10],[64,10],[80,26],[80,86],[20,86]],[4,0,0,4,4]),...ye(28,62,84)],holes:[le(63.3,10,1.4,17.4),le(63.3,25.3,17,1.4)],visor:[27,36,46,20],notch:10}),archlet:ce({name:"Archlet",shape:"Gate with built-in legs",shapes:[be([[16,18],[84,18],[84,96],[64,96],[64,74],[36,74],[36,96],[16,96]],[8,8,0,0,4,4,0,0])],visor:[25,30,50,22],notch:18}),dashlet:ce({name:"Dashlet",shape:"Body leaning forward",shapes:[be([[29,14],[87,14],[71,86],[13,86]],6),...ye(20,48,84)],visor:[31.5,28,42,20],notch:14,notchX:58}),octlet:ce({name:"Octlet",shape:"Regular octagon",shapes:[le(16,16,68,68,20),...ye(35,55,81)],visor:[26,36,48,22],notch:16}),conelet:ce({name:"Conelet",shape:"Narrow crown, wide base",shapes:[be([[30,12],[70,12],[88,84],[12,84]],[6,6,5,5]),...ye(26,64,82)],visor:[28,40,44,20],notch:12}),hivelet:ce({name:"Hivelet",shape:"Upright honeycomb cell",shapes:[be([[50,6],[84,24],[84,72],[50,90],[16,72],[16,24]],[6,4,4,6,4,4]),...ye(40,52,80,8)],visor:[25,36,50,20]}),folderlet:ce({name:"Folderlet",shape:"Folder with a tab",shapes:[be([[12,14],[38,14],[50,26],[88,26],[88,84],[12,84]],[4,0,0,6,5,5]),...ye(26,64,82)],visor:[24,40,52,22]})},dv=.5,bh=(e,t,l,n)=>[[e,t],[e+l,t],[e+l,t+n],[e,t+n]];function R3(e){let t=1/0;return e.forEach((l,n)=>{let a=e[(n+1)%e.length],i=Math.hypot(a[0]-l[0],a[1]-l[1]);if(i===0)return;let r=Math.max(...e.map(o=>Math.abs((a[0]-l[0])*(o[1]-l[1])-(a[1]-l[1])*(o[0]-l[0]))/i));t=Math.min(t,r)}),t}function D3(e,t){let{visor:l,notch:n}=e,a=t==="full",i=a?vh.full:vh.compact,r=l.width*i.width,o=l.height*i.height,u=l.y+(l.height-o)/2,c=l.x+l.width/2,h=l.width*vh.offset,g=[c-h,c+h].map(d=>bh(d-r/2,u,r,o));n&&g.push([[n[0]-yh.half,n[1]-1],[n[0]+yh.half,n[1]-1],[n[0],n[1]+yh.depth]]);for(let d of pc(e).holes)(a||R3(d)>M3)&&g.push(d);if(a){let d=Xr/2;g.push(bh(l.x-d,l.y-d,l.width+Xr,l.height+Xr)),g.push([...bh(l.x+d,l.y+d,l.width-Xr,l.height-Xr)].reverse())}return g}function xv(e,t){let l=e.x+e.width/2,n=e.y+e.height/2,a=l+dv*(t[0]-l),i=n+dv*(t[1]-n),r=Math.max(e.width+2*Math.abs(a-l),e.height+2*Math.abs(i-n));return{x:a-r/2,y:i-r/2,width:r,height:r}}function G3(e){let{parts:t}=pc(e),l=Th(e),n={},a=r=>uv(Sh(t,D3(e,r))),i=()=>uv(Sh([...l,...yv(e)],[...l,...pv(l,gv)]));return{frame:xv(e.bounds,E3(l)),paths:r=>n[r]??(n[r]=r==="full"?[i(),a("full")]:[a("compact")])}}var hv=new Map;function H3(e){let t=hv.get(e);if(t)return t;let l=Mh[e];if(l.kind==="mark"){let n=[l.keyline,...l.body];t={frame:xv(l.bounds,O3),paths:a=>a==="full"?n:l.body}}else t=G3(l);return hv.set(e,t),t}var U3=e=>Math.round(e*100)/100,L3=({character:e,detail:t="full",...l})=>{let n=Mh[e],{frame:a,paths:i}=H3(e),r=i(t).map(o=>(0,fc.jsx)("path",{d:o},o));return(0,fc.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:[a.x,a.y,a.width,a.height].map(U3).join(" "),width:"1em",height:"1em","aria-hidden":"true",focusable:"false","data-character":e,"data-detail":t,...l,children:(0,fc.jsx)("g",{fill:"currentColor",transform:n.kind==="mark"?n.transform:void 0,children:r})})},Ah=L3;var We=ie(ze(),1);var k3={working:"working",needs:"needs you",stopped:"stopped"},Nh={xs:20,sm:26,md:32,lg:40};var B3=/^agent(?:[\s._-]+)(?=\S)/i;function V3(e,t){if(e===void 0||t!=="agent")return e;let l=e.replace(B3,"");return l.trim()?l:e}var q3=56,Y3=e=>{if(!e)return"?";let t=e.trim().split(/[\s\-_.]+/).filter(Boolean);if(t.length===0)return"?";let l=i=>(Array.from(i)[0]??"").toUpperCase();if(t.length>=2)return t.slice(0,2).map(l).join("")||"?";let n=t[0],a=n.split(/(?<=\p{Ll})(?=\p{Lu})/u);return a.length>=2?a.slice(0,2).map(l).join(""):Array.from(n).slice(0,2).map(i=>i.toUpperCase()).join("")||"?"},j3=10,K3=e=>{let t=0;for(let l=0;l<e.length;l+=1)t=t*31+e.charCodeAt(l)>>>0;return t%j3};function X3(e){return typeof e=="number"?e:Nh[e]}var Zr=({src:e,name:t,size:l="md",kind:n="agent",tone:a="neutral",ring:i,status:r,mark:o,markLabel:u,decorative:c=!1,colorSeed:h,character:g,hue:d,icon:m,className:b,style:x,...N})=>{let[f,s]=(0,mc.useState)(!1);(0,mc.useEffect)(()=>{s(!1)},[e]);let p=typeof l=="number"?null:l,y=X3(l),M=p===null?{"--crewlet-avatar-size":`${y}px`,fontSize:Math.max(9,Math.round(y*.36))}:{},O=a==="seeded"?K3(h??t??""):null,A=r===void 0&&o!==void 0&&o!==null,_=r!==void 0||A,Z=r!==void 0?k3[r]:A?u:void 0,C=t?`${t} avatar`:"Avatar",R=Z?`${C}, ${Z}`:C,K=B("crewlet-avatar",`crewlet-avatar--${n}`,p===null?null:`crewlet-avatar--${p}`,_?"crewlet-avatar--notched":null,i===void 0||_?null:`crewlet-avatar--ring-${i}`,_?null:b),T=_?M:{...M,...x};function j(){return g!==void 0&&n==="agent"?(0,We.jsx)("span",{...N,className:B(K,"crewlet-avatar--character",d===void 0?"crewlet-avatar--neutral":`crewlet-avatar--hue-${d}`),style:T,role:c?void 0:"img","aria-hidden":c?!0:void 0,"aria-label":c?void 0:R,children:(0,We.jsx)(Ah,{className:"crewlet-avatar__character",character:g,detail:y>=q3?"full":"compact"})}):e&&!f?(0,We.jsx)("img",{...N,className:B(K,"crewlet-avatar--image"),style:T,src:e,alt:c?"":Z?`${t??""}, ${Z}`:t??"","aria-hidden":c?!0:void 0,onError:()=>s(!0)}):(0,We.jsx)("span",{...N,className:B(K,"crewlet-avatar--fallback",`crewlet-avatar--${a}`,O===null?null:`crewlet-avatar--tint-${O}`,m==null?null:"crewlet-avatar--icon"),style:T,role:c?void 0:"img","aria-hidden":c?!0:void 0,"aria-label":c?void 0:R,children:m==null?Y3(V3(t,n)):(0,We.jsx)("span",{className:"crewlet-avatar__icon","aria-hidden":"true",children:m})})}let fe=j();return _?(0,We.jsxs)("span",{className:B("crewlet-avatar-frame",b),style:{"--crewlet-avatar-size":`${y}px`,...x},children:[fe,r!==void 0?(0,We.jsx)("span",{className:`crewlet-avatar__status crewlet-avatar__status--${r}`,"aria-hidden":"true",children:Q3[r]}):(0,We.jsx)("span",{className:"crewlet-avatar__status crewlet-avatar__status--mark","aria-hidden":"true",children:o})]}):fe},Q3={working:(0,We.jsx)("svg",{viewBox:"0 0 14 14",focusable:"false",children:(0,We.jsx)("path",{d:"M5.4 3.9 10.2 7l-4.8 3.1z",fill:"currentColor"})}),needs:(0,We.jsxs)("svg",{viewBox:"0 0 14 14",focusable:"false",children:[(0,We.jsx)("path",{d:"M5.1 5.3a1.9 1.9 0 1 1 2.7 1.7c-.55.27-.8.62-.8 1.15v.3",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),(0,We.jsx)("circle",{cx:"7",cy:"10.45",r:".85",fill:"currentColor"})]}),stopped:(0,We.jsx)("svg",{viewBox:"0 0 14 14",focusable:"false",children:(0,We.jsx)("rect",{x:"4.6",y:"4.6",width:"4.8",height:"4.8",rx:".7",fill:"currentColor"})})};var Sv=ie(ze(),1);function wt({as:e="span",id:t,className:l,children:n}){return(0,Sv.jsx)(e,{id:t,className:B("crewlet-visually-hidden",l),children:n})}var Zl=ie(ze(),1);function zh({members:e,self:t=!0,max:l=4,size:n="sm",onSelect:a,label:i,labels:r,className:o}){if(!Number.isInteger(l)||l<1)throw new RangeError(`PresenceStack max must be a whole number of at least 1; it was ${l}`);let u=qr(r),c=Cd(e);if(c.length===0&&!t)return null;let h=c.slice(0,l),g=c.slice(l),d=i??u.here(c.length,t),m=[d,...c.map(f=>u.member(f))].join(". "),b=f=>(0,Zl.jsx)(Zr,{name:f.name,kind:f.kind,src:f.src,character:f.character!==void 0&&Qr(f.character)?f.character:void 0,hue:f.kind==="agent"?f.hue:void 0,size:n,decorative:!0,className:B("crewlet-presence-stack__badge",f.hue!==void 0&&f.activity!=="idle"&&Cn(f.hue),f.hue!==void 0&&f.activity!=="idle"&&"crewlet-presence-stack__badge--present",f.activity==="idle"&&"crewlet-presence-stack__badge--idle")}),x=g.length>0?(0,Zl.jsxs)("span",{className:"crewlet-avatar-stack__member crewlet-avatar-stack__more","aria-hidden":"true",children:["+",g.length]}):null,N={"--crewlet-avatar-stack-size":`${Nh[n]}px`};return a===void 0?c.length===0?null:(0,Zl.jsxs)("span",{className:B("crewlet-avatar-stack","crewlet-presence-stack",o),style:N,role:"img","aria-label":m,children:[h.map(f=>(0,Zl.jsx)("span",{className:B("crewlet-avatar-stack__member","crewlet-presence-stack__member",`crewlet-presence-stack__member--${f.kind}`),children:b(f)},f.id)),x]}):(0,Zl.jsxs)("div",{className:B("crewlet-avatar-stack","crewlet-presence-stack",o),style:N,role:"group","aria-label":d,children:[h.map(f=>(0,Zl.jsx)("button",{type:"button",className:B("crewlet-avatar-stack__member","crewlet-presence-stack__member",`crewlet-presence-stack__member--${f.kind}`),"aria-label":u.member(f),title:u.member(f),onClick:()=>a(f),children:b(f)},f.id)),x,g.length>0?(0,Zl.jsx)(wt,{children:`${u.more(g.length)}: ${g.map(f=>u.member(f)).join(", ")}`}):null]})}var Jr=ie(ze(),1);function Ir({tone:e="neutral",pulse:t=!1,children:l,className:n}){let a=l!=null&&l!==!1&&l!=="",i=(0,Jr.jsx)("span",{"aria-hidden":!0,className:B("crewlet-status-dot",`crewlet-status-dot--${e}`,t&&"is-pulsing",!a&&n)});return a?(0,Jr.jsxs)("span",{className:B("crewlet-status",n),children:[i," ",(0,Jr.jsx)("span",{className:"crewlet-status__label",children:l})]}):i}var st=ie(ze(),1);function gc(e){let{variant:t="neutral",hue:l,appearance:n="soft",size:a="sm",leadingIcon:i,dot:r=!1,count:o,monospace:u=!1,animateIn:c=!1,onClick:h,pressed:g,onRemove:d,removeAriaLabel:m="Remove tag",className:b,children:x,...N}=e,f=h!==void 0,s=f||d!==void 0,p=f&&d!==void 0;s&&a==="xs"&&console.warn('[crewlet] Tag size="xs" cannot act: an interactive tag starts at "sm", so its target clears 24px. Drawn at "sm".');let y=s&&a==="xs"?"sm":a,M=B("crewlet-tag",l===void 0?`crewlet-tag--${t}`:`crewlet-tag--hue-${l}`,`crewlet-tag--${n}`,`crewlet-tag--${y}`,u&&"crewlet-tag--monospace",c&&"crewlet-tag--animate-in",s&&"crewlet-tag--acts",f&&!p&&"crewlet-tag--actionable",p&&"crewlet-tag--split",p&&g===!0&&"is-pressed",b),O=(0,st.jsxs)(st.Fragment,{children:[r?(0,st.jsx)(Ir,{tone:l===void 0?t:"neutral",className:"crewlet-tag__dot"}):null,i?(0,st.jsx)("span",{className:"crewlet-tag__icon","aria-hidden":!0,children:i}):null,(0,st.jsx)("span",{className:"crewlet-tag__label",children:x}),o===void 0?null:(0,st.jsx)("span",{className:"crewlet-tag__count",children:o})]}),A=d===void 0?null:(0,st.jsx)("button",{type:"button",className:"crewlet-tag__remove",onClick:_=>{_.stopPropagation(),d()},"aria-label":m,children:(0,st.jsx)(mh,{size:"xs"})});return p?(0,st.jsxs)("span",{...N,className:M,children:[(0,st.jsx)("button",{type:"button",className:"crewlet-tag__press",onClick:h,"aria-pressed":g===!0,children:O}),A]}):f?(0,st.jsx)("button",{...N,type:"button",className:M,onClick:h,"aria-pressed":g===!0,children:O}):(0,st.jsxs)("span",{...N,className:M,children:[O,A]})}var $r=ie(ze(),1);function _v({name:e,hue:t,kind:l="human",editing:n=!1,placement:a="top-end",className:i,...r}){let o=typeof e=="string"?e:e.join(", ");return(0,$r.jsxs)("span",{...r,"aria-hidden":"true",className:B("crewlet-cursor-flag",Cn(t),`crewlet-cursor-flag--${l}`,`crewlet-cursor-flag--${a}`,i),children:[n?(0,$r.jsx)(sh,{size:"xs",className:"crewlet-cursor-flag__glyph"}):null,(0,$r.jsx)("span",{className:"crewlet-cursor-flag__name",children:o})]})}var Fr=ie(cl(),1),Ev=ie(ze(),1),Oh="crewlet:viewchange",ha=4;function Tv(e,t,l,n=ha,a="below"){let i=e.y+e.height+n,r=e.y-n-t.height,o=l.y+l.height-i,u=e.y-n-l.y,h=(a==="below"?o>=t.height||o>=u:u>=t.height||u>=o)?a:a==="below"?"above":"below",g=h==="below"?i:r,d=l.y+l.height-t.height,m=Math.max(l.y,Math.min(g,d)),b=l.x+l.width-t.width;return{left:Math.max(l.x,Math.min(e.x,b)),top:m,side:h}}function Mv(){return{x:0,y:0,width:window.innerWidth,height:window.innerHeight}}function Av(e,t){return e.x+e.width<t.x||e.y+e.height<t.y||e.x>t.x+t.width||e.y>t.y+t.height}var Z3=(0,Fr.createContext)(null);function Nv(){let e=(0,Fr.useContext)(Z3);return e||(typeof document>"u"?null:document.body)}var xt=ie(cl(),1);var Ch={duration:{instant:"75ms",fast:"120ms",base:"150ms",moderate:"200ms",slow:"300ms",breath:"2200ms"},easing:{default:"ease",out:"ease-out",inOut:"ease-in-out",emphasized:"cubic-bezier(0.16, 1, 0.3, 1)",spring:"cubic-bezier(0.34, 1.56, 0.64, 1)"}};var Rh={base:"0",raised:"1",sticky:"10",presence:"20",dropdown:"100",overlay:"200",layerBase:"9000",layerMax:"9899",modal:"9999",popover:"10000",toast:"10001"};var zv=Symbol.for("crewlet.layer-stack");function J3(){let e=globalThis,t=e[zv];if(t)return t;let l={entries:[],opened:0,armed:null,listeners:new Set,version:0,locks:0,restore:null};return e[zv]=l,l}var Be=J3();function Ov(){Be.version+=1;for(let e of[...Be.listeners])e()}function I3(e){return Be.listeners.add(e),()=>Be.listeners.delete(e)}function Mi(e){let t;for(let l of Be.entries)e&&l.kind!==e||(!t||l.order>t.order)&&(t=l);return t}var Dh={base:Number(Rh.layerBase),max:Number(Rh.layerMax)};function $3(e){let t=0;for(let l of Be.entries)l.order<e&&(t+=1);return t}function F3(e){return e===0?Dh.base:Math.min(Dh.base+$3(e),Dh.max)}var W3=229;function Ai(e){let t="nativeEvent"in e&&e.nativeEvent||e;return!!t.isComposing||t.keyCode===W3}function P3(e){let t=["a[href]","button:not([disabled])","input:not([disabled]):not([type='hidden'])","select:not([disabled])","textarea:not([disabled])","[contenteditable='true']","[tabindex]"].join(",");return[...e.querySelectorAll(t)].filter(l=>l.tabIndex>=0&&!l.disabled&&!l.closest("[hidden],[inert]")&&(typeof l.checkVisibility!="function"||l.checkVisibility()))}function Cv(e){if(Ai(e))return;if(e.key==="Escape"){if(e.defaultPrevented)return;let c=Mi();if(!c)return;e.preventDefault(),c.dismissable()&&c.dismiss("escape");return}if(e.key!=="Tab"||e.defaultPrevented)return;let t=Mi("modal"),l=t?.panel();if(!t||!l)return;let n=Mi("popup"),a=document.activeElement;if(n&&n.order>t.order&&a&&n.panel()?.contains(a))return;let i=P3(l);if(i.length===0){e.preventDefault(),l.focus();return}let r=i[0],o=i[i.length-1];if(!(a instanceof Node)||!l.contains(a)){e.preventDefault(),(e.shiftKey?o:r).focus();return}let u=c=>(a.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_FOLLOWING)!==0;e.shiftKey&&!i.some(c=>c!==a&&!u(c))?(e.preventDefault(),o.focus()):!e.shiftKey&&!i.some(c=>c!==a&&u(c))&&(e.preventDefault(),r.focus())}function Rv(e){Be.armed=null;let t=Mi();if(!t||!(e.target instanceof Node))return;let l=e.target;if(t.kind==="modal"){l===t.veil()&&(Be.armed=t);return}[t.panel(),...t.inside()].some(a=>a?.contains(l))||t.dismissable()&&t.dismiss("outside")}function Dv(e){let t=Be.armed;Be.armed=null,!(!t||t!==Mi()||e.target!==t.veil())&&t.dismissable()&&t.dismiss("outside")}function e5(e){return Be.entries.length===0&&(document.addEventListener("keydown",Cv),document.addEventListener("pointerdown",Rv,!0),document.addEventListener("click",Dv,!0)),Be.entries.push(e),Ov(),()=>{let t=Be.entries.indexOf(e);t>=0&&Be.entries.splice(t,1),Be.armed===e&&(Be.armed=null),Be.entries.length===0&&(document.removeEventListener("keydown",Cv),document.removeEventListener("pointerdown",Rv,!0),document.removeEventListener("click",Dv,!0)),Ov()}}function t5(e){let t=(0,xt.useRef)(0);return e&&t.current===0&&(t.current=++Be.opened),e||(t.current=0),t.current}function l5(e){return(0,xt.useSyncExternalStore)(I3,()=>Be.version,()=>0),{zIndex:F3(e),isTopmost:e!==0&&Mi()?.order===e}}function Gv({open:e,onDismiss:t}){let l=(0,xt.useRef)(null),n=(0,xt.useRef)(null),a=(0,xt.useRef)(t);a.current=t;let i=t5(e),r=l5(i);(0,xt.useLayoutEffect)(()=>{if(e)return e5({kind:"popup",order:i,panel:()=>l.current,returnTo:[],veil:()=>null,inside:()=>[n.current],dismiss:c=>a.current(c),dismissable:()=>!0})},[e,i]);let o=(0,xt.useCallback)(c=>{l.current=c},[]),u=(0,xt.useCallback)(c=>{n.current=c},[]);return{panelRef:o,insideRef:u,...r}}var _e=ie(cl(),1),Hv=ie(qc(),1);var Ni=ie(ze(),1);function Uv(e){return Number.parseFloat(e)}function n5(e,t){if(typeof e=="function"){let n=e(t);return typeof n=="function"?n:()=>{e(null)}}if(!e)return()=>{};let l=e;return l.current=t,()=>{l.current=null}}var a5=Uv(Ch.duration.slow),i5=Uv(Ch.duration.base);function Lv({content:e,placement:t="top",disabled:l=!1,openDelay:n=a5,closeDelay:a=i5,className:i,children:r}){let u=`${(0,_e.useId)()}-tooltip`,[c,h]=(0,_e.useState)(!1),g=(0,_e.useRef)(null),d=(0,_e.useRef)(null),m=(0,_e.useRef)(void 0),b=(0,_e.useRef)({pointer:!1,focus:!1}),[x,N]=(0,_e.useState)(null),f=Nv(),s=(0,_e.useCallback)(()=>{m.current!==void 0&&clearTimeout(m.current),m.current=void 0},[]),p=(0,_e.useCallback)(T=>{if(s(),!l){if(T<=0){h(!0);return}m.current=setTimeout(()=>h(!0),T)}},[s,l]),y=(0,_e.useCallback)(T=>{s();let j=()=>{b.current.pointer||b.current.focus||h(!1)};if(T<=0){j();return}m.current=setTimeout(j,T)},[s]),M=Gv({open:c,onDismiss:()=>{b.current={pointer:!1,focus:!1},s(),h(!1)}});(0,_e.useEffect)(()=>s,[s]),(0,_e.useEffect)(()=>{l&&(s(),h(!1))},[l,s]);let O=(0,_e.useCallback)(()=>{let T=g.current,j=d.current;if(!T||!j||!f)return;let fe=f!==document.body,Ee=fe?f.getBoundingClientRect():Mv(),Ht=T.getBoundingClientRect(),Il=j.getBoundingClientRect(),Ut={x:Ht.x+Ht.width/2-Il.width/2-(fe?Ee.x:0),y:Ht.y-(fe?Ee.y:0),width:Ht.width,height:Ht.height},De={x:0,y:0,width:Ee.width,height:Ee.height},Dn={x:ha,y:ha,width:Ee.width-2*ha,height:Ee.height-2*ha};if(Av({...Ut,x:Ht.x-(fe?Ee.x:0)},De)){h(!1);return}let St=Tv(Ut,{width:Il.width,height:Il.height},Dn,ha,t==="top"?"above":"below");N(Lt=>Lt&&Lt.left===St.left&&Lt.top===St.top&&Lt.side===St.side?Lt:St)},[f,t]);(0,_e.useLayoutEffect)(()=>{if(!c)return;O();let T=()=>O();f?.addEventListener(Oh,T),window.addEventListener("resize",T),window.addEventListener("scroll",T,!0);let j=typeof ResizeObserver=="function"?new ResizeObserver(T):null;return d.current&&j?.observe(d.current),()=>{f?.removeEventListener(Oh,T),window.removeEventListener("resize",T),window.removeEventListener("scroll",T,!0),j?.disconnect()}},[c,f,O]),(0,_e.useEffect)(()=>{c||N(null)},[c]);let A=r,_=A.props["aria-describedby"],Z=A.props.ref,C=(0,_e.cloneElement)(A,{ref:T=>{g.current=T,M.insideRef(T);let j=n5(Z,T);return()=>{g.current=null,M.insideRef(null),j()}},"aria-describedby":c?B(_,u):_,onPointerEnter:T=>{b.current.pointer=!0,p(n),A.props.onPointerEnter?.(T)},onPointerLeave:T=>{b.current.pointer=!1,y(a),A.props.onPointerLeave?.(T)},onFocus:T=>{b.current.focus=!0,p(0),A.props.onFocus?.(T)},onBlur:T=>{b.current.focus=!1,y(0),A.props.onBlur?.(T)}}),R=x?{left:x.left,top:x.top,zIndex:M.zIndex}:{visibility:"hidden",zIndex:M.zIndex},K=c?(0,Ni.jsx)("div",{ref:T=>{d.current=T,M.panelRef(T)},id:u,role:"tooltip",className:B("crewlet-tooltip",`crewlet-tooltip--${x?.side??(t==="top"?"above":"below")}`,f!==null&&f!==document.body?"crewlet-tooltip--in-host":"crewlet-tooltip--fixed",i),style:R,onPointerEnter:()=>{b.current.pointer=!0,s()},onPointerLeave:()=>{b.current.pointer=!1,y(a)},children:e}):null;return(0,Ni.jsxs)(Ni.Fragment,{children:[C,K&&f?(0,Hv.createPortal)(K,f):null]})}var Gh=ie(ze(),1);function kv({by:e,at:t,previous:l=null,locale:n,className:a,labels:i}){let r=ac({by:e,at:t},Yr(i),l,n);return(0,Gh.jsx)(Lv,{content:r,children:(0,Gh.jsx)("span",{"aria-hidden":"true",className:B("crewlet-change-mark",a)})})}var rl=ie(cl(),1);var Ke=ie(ze(),1);function Bv({variant:e="primary",size:t="medium",shape:l="square",block:n,className:a},i){return B("crewlet-btn",`crewlet-btn--${e}`,`crewlet-btn--${t}`,`crewlet-btn--${l}`,n&&"crewlet-btn--block",i,a)}function Hh({leadingIcon:e,trailingIcon:t,loading:l,children:n}){return(0,Ke.jsxs)(Ke.Fragment,{children:[l?(0,Ke.jsx)("span",{className:"crewlet-btn__spinner","aria-hidden":!0}):e?(0,Ke.jsx)("span",{className:"crewlet-btn__icon",children:e}):null,(0,Ke.jsx)("span",{className:"crewlet-btn__label",children:n}),t?(0,Ke.jsx)("span",{className:"crewlet-btn__icon",children:t}):null]})}var Wr=(0,rl.forwardRef)(function({variant:t="primary",size:l="medium",shape:n="square",leadingIcon:a,trailingIcon:i,block:r,className:o,type:u="button",asChild:c=!1,loading:h=!1,pressed:g,disabledReason:d,disabled:m,onClick:b,title:x,children:N,...f},s){let p=(0,rl.useId)(),M=Bv({variant:t,size:l,shape:n,block:r,className:o},h?"crewlet-btn--loading":void 0);if(c){let A=rl.Children.only(N);if(!(0,rl.isValidElement)(A))throw new Error("Button with asChild expects exactly one valid React element child.");let _=A;return(0,rl.cloneElement)(_,{...f,title:x,className:B(_.props.className,M)},(0,Ke.jsx)(Hh,{leadingIcon:a,trailingIcon:i,children:_.props.children}))}let O=h||d!==void 0;return(0,Ke.jsxs)(Ke.Fragment,{children:[(0,Ke.jsx)("button",{...f,ref:s,type:u,className:M,disabled:m,title:x,"aria-label":f["aria-label"]??(N===void 0?x:void 0),"aria-pressed":g,"aria-busy":h||void 0,"aria-disabled":O||void 0,"aria-describedby":d===void 0?f["aria-describedby"]:B(f["aria-describedby"],p),onClick:A=>{if(O){A.preventDefault();return}b?.(A)},children:(0,Ke.jsx)(Hh,{leadingIcon:a,trailingIcon:i,loading:h,children:N})}),d===void 0?null:(0,Ke.jsx)(wt,{id:p,children:d})]})}),a7=(0,rl.forwardRef)(function({variant:t="primary",size:l="medium",shape:n="square",leadingIcon:a,trailingIcon:i,block:r,className:o,external:u=!1,title:c,children:h,...g},d){let m=i??(u?(0,Ke.jsx)(ch,{size:"sm"}):void 0);return(0,Ke.jsx)("a",{...g,ref:d,className:Bv({variant:t,size:l,shape:n,block:r,className:o}),title:c,"aria-label":g["aria-label"]??(h===void 0?c:void 0),target:u?"_blank":g.target,rel:u?"noreferrer":g.rel,children:(0,Ke.jsx)(Hh,{leadingIcon:a,trailingIcon:m,children:h})})});var z=ie(cl(),1);var E=ie(ze(),1);function Lh({column:e,id:t,labels:l}){let n=Kl(e,t);if(!n)return(0,E.jsx)(gc,{size:"xs",children:t});if(n.archived)return(0,E.jsx)(gc,{size:"xs",appearance:"outline",children:l.archived(n.label)});let a=tc(n.color);return(0,E.jsx)(gc,{size:"xs",hue:a==="neutral"?void 0:a,children:n.label})}function qv({person:e,fallback:t}){return e?(0,E.jsxs)("span",{className:"crewlet-sheet-cell__person",children:[(0,E.jsx)(Zr,{name:e.name,kind:e.kind==="human"?"human":"agent",src:e.src,character:e.character!==void 0&&Qr(e.character)?e.character:void 0,hue:e.kind==="agent"?e.hue:void 0,size:"xs",decorative:!0}),(0,E.jsx)("span",{className:"crewlet-sheet-cell__text",children:e.name})]}):(0,E.jsx)("span",{className:"crewlet-sheet-cell__muted",children:t})}function Yv({column:e,value:t,context:l,onOpenLink:n}){let{labels:a}=l;if(e.type==="checkbox"){let i=t===!0;return(0,E.jsxs)("span",{className:"crewlet-sheet-cell__checkbox",children:[(0,E.jsx)("span",{className:B("crewlet-sheet-cell__check",i&&"crewlet-sheet-cell__check--on"),"aria-hidden":"true",children:i?(0,E.jsx)(cc,{size:"xs"}):null}),(0,E.jsx)(wt,{children:i?a.checked:a.unchecked})]})}if(Ql(t))return(0,E.jsx)(wt,{children:a.empty});switch(e.type){case"select":return(0,E.jsx)(Lh,{column:e,id:String(t),labels:a});case"multiselect":return(0,E.jsx)("span",{className:"crewlet-sheet-cell__chips",children:t.map(i=>(0,E.jsx)(Lh,{column:e,id:i,labels:a},i))});case"status":{let i=Kl(e,String(t)),r=al(e,t,l);return(0,E.jsx)(Ir,{tone:i&&!i.archived?lc(i):"neutral",children:r})}case"person":return(0,E.jsx)(qv,{person:wi(l.people,String(t)),fallback:a.unknownPerson});case"rating":{let i=Xl(e),r=Number(t);return(0,E.jsxs)("span",{className:"crewlet-sheet-cell__rating",children:[(0,E.jsx)("span",{className:"crewlet-sheet-cell__stars","aria-hidden":"true",children:Array.from({length:i},(o,u)=>(0,E.jsx)(hh,{size:"sm",filled:u<r,className:B("crewlet-sheet-cell__star",u<r&&"crewlet-sheet-cell__star--on")},u))}),(0,E.jsx)(wt,{children:a.rating(r,i)})]})}case"url":{let i=String(t);return(0,E.jsx)("a",{className:"crewlet-sheet-cell__link",href:i,target:"_blank",rel:"noopener noreferrer",tabIndex:-1,onClick:n?r=>{r.preventDefault(),n(i)}:void 0,children:i})}case"number":return(0,E.jsx)("span",{className:"crewlet-sheet-cell__text crewlet-sheet-cell__number",children:al(e,t,l)});default:return(0,E.jsx)("span",{className:"crewlet-sheet-cell__text",children:al(e,t,l)})}}var r5=new Set(["text","number","url","date","rating"]),jv=new Set(["select","multiselect","status","person"]),o5=e=>e!=="checkbox",Vv=e=>r5.has(e)||jv.has(e)||e==="longtext";function Kv(e,t){if(e.key==="Tab")return e.shiftKey?"left":"right";if(e.key==="Enter")return t&&!fa(e)?void 0:e.shiftKey?"up":"down"}function kh(e){let t=(0,z.useRef)(!1);return{finish:()=>{t.current=!0},onBlur:l=>{if(t.current)return;let n=l.relatedTarget;n!==null&&l.currentTarget.contains(n)||(t.current=!0,e())}}}function u5(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return"";let l=n=>String(n).padStart(2,"0");return`${t.getFullYear()}-${l(t.getMonth()+1)}-${l(t.getDate())}T${l(t.getHours())}:${l(t.getMinutes())}`}function Bh({conflict:e,labels:t}){return(0,E.jsxs)("div",{className:"crewlet-sheet-editor__conflict",role:"alert",children:[(0,E.jsx)("p",{className:"crewlet-sheet-editor__conflict-text",children:t.conflict(e.writer,e.value)}),(0,E.jsxs)("div",{className:"crewlet-sheet-editor__conflict-actions",children:[(0,E.jsx)(Wr,{size:"small",variant:"secondary",onClick:e.onKeepMine,children:t.keepMine}),(0,E.jsx)(Wr,{size:"small",variant:"ghost",onClick:e.onUseTheirs,children:t.useTheirs(e.writer)})]})]})}function Vh({id:e,message:t}){return(0,E.jsxs)("p",{id:e,className:"crewlet-sheet-editor__error",children:[(0,E.jsx)(Ei,{size:"xs","aria-hidden":"true"}),(0,E.jsx)("span",{children:t})]})}function Xv(e){let{column:t}=e;return jv.has(t.type)?(0,E.jsx)(h5,{...e}):t.type==="longtext"?(0,E.jsx)(s5,{...e}):(0,E.jsx)(c5,{...e})}function c5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,conflict:o}){let{labels:u}=l,c=(0,z.useId)(),h=(0,z.useRef)(null),g=e.type==="date",d=(0,z.useMemo)(()=>{if(g){let p=typeof t=="string"?t:"";return e.time?u5(p):p}return n??xi(e,t,l)},[]),[m,b]=(0,z.useState)(d),[x,N]=(0,z.useState)(null);(0,z.useLayoutEffect)(()=>{let p=h.current;p&&(p.focus(),g||p.setSelectionRange(p.value.length,p.value.length))},[g]);let f=p=>{let y=g&&e.time&&m!==""?new Date(m).toISOString():m,M=Si(e,y,l);return M.ok?(s.finish(),i(M.value,p),!0):(N(M.error),!1)},s=kh(()=>{f(null)||r()});return(0,E.jsxs)("div",{className:"crewlet-sheet-editor crewlet-sheet-editor--line",onBlur:s.onBlur,children:[(0,E.jsx)("input",{ref:h,className:"crewlet-sheet-editor__input",type:g?e.time?"datetime-local":"date":e.type==="url"?"url":"text",inputMode:e.type==="number"?"decimal":e.type==="rating"?"numeric":void 0,"aria-label":a,"aria-invalid":x!==null,"aria-describedby":x!==null?c:void 0,maxLength:e.type==="text"?On(e):void 0,value:m,onChange:p=>{b(p.target.value),N(null)},onKeyDown:p=>{if(Ai(p))return;if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s.finish(),r();return}if(p.key==="Tab"&&o)return;let y=Kv(p,!1);y!==void 0&&(p.preventDefault(),p.stopPropagation(),f(y))}}),x!==null||o?(0,E.jsxs)("div",{className:B("crewlet-sheet-editor__panel"),children:[x!==null?(0,E.jsx)(Vh,{id:c,message:x}):null,o?(0,E.jsx)(Bh,{conflict:o,labels:u}):null]}):null]})}function s5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,side:o="below",conflict:u}){let{labels:c}=l,h=(0,z.useId)(),g=(0,z.useRef)(null),[d,m]=(0,z.useState)(()=>n??xi(e,t,l)),[b,x]=(0,z.useState)(null);(0,z.useLayoutEffect)(()=>{let s=g.current;s&&(s.focus(),s.setSelectionRange(s.value.length,s.value.length))},[]);let N=s=>{let p=Si(e,d,l);return p.ok?(f.finish(),i(p.value,s),!0):(x(p.error),!1)},f=kh(()=>{N(null)||r()});return(0,E.jsx)("div",{className:B("crewlet-sheet-editor","crewlet-sheet-editor--long",`crewlet-sheet-editor--${o}`),onBlur:f.onBlur,children:(0,E.jsxs)("div",{className:"crewlet-sheet-editor__panel crewlet-sheet-editor__panel--long",children:[(0,E.jsx)("textarea",{ref:g,className:"crewlet-sheet-editor__textarea","aria-label":a,"aria-invalid":b!==null,"aria-describedby":b!==null?h:void 0,maxLength:On(e),rows:5,value:d,onChange:s=>{m(s.target.value),x(null)},onKeyDown:s=>{if(Ai(s))return;if(s.key==="Escape"){s.preventDefault(),s.stopPropagation(),f.finish(),r();return}if(s.key==="Tab"&&u)return;let p=Kv(s,!0);p!==void 0&&(s.preventDefault(),s.stopPropagation(),N(p))}}),b!==null?(0,E.jsx)(Vh,{id:h,message:b}):null,u?(0,E.jsx)(Bh,{conflict:u,labels:c}):null]})})}function f5(e,t){return e.type==="person"?(t.people??[]).map(l=>({id:l.id,label:l.name,person:l})):yi(e).map(l=>({id:l.id,label:l.label,option:l}))}function d5({column:e,choice:t,context:l}){return t.person?(0,E.jsx)(qv,{person:t.person,fallback:t.label}):e.type==="status"&&t.option?(0,E.jsx)(Ir,{tone:lc(t.option),children:t.label}):(0,E.jsx)(Lh,{column:e,id:t.id,labels:l.labels})}function h5({column:e,value:t,context:l,seed:n,label:a,onCommit:i,onCancel:r,side:o="below",conflict:u}){let{labels:c}=l,h=e.type==="multiselect",g=(0,z.useId)(),d=(0,z.useId)(),m=(0,z.useRef)(null),[b,x]=(0,z.useState)(n??""),[N,f]=(0,z.useState)(()=>h?[...t??[]]:typeof t=="string"?[t]:[]),[s,p]=(0,z.useState)(null),y=(0,z.useMemo)(()=>f5(e,l),[e,l]),M=!h&&!e.required,O=(0,z.useMemo)(()=>{let T=b.trim().toLowerCase(),j=T===""?y:y.filter(fe=>fe.label.toLowerCase().includes(T));return M&&T===""?[{id:"",label:c.clear},...j]:j},[y,b,M,c.clear]),[A,_]=(0,z.useState)(()=>{let T=O.findIndex(j=>j.id!==""&&N.includes(j.id));return T>=0?T:0});(0,z.useEffect)(()=>{_(T=>Math.min(T,Math.max(O.length-1,0)))},[O.length]),(0,z.useLayoutEffect)(()=>{m.current?.focus()},[]);let Z=(T,j)=>{let fe=Ud(e,T,l);return fe!==null?(p(fe),!1):(C.finish(),i(T,j),!0)},C=kh(()=>{(!h||!Z(N,null))&&r()}),R=(T,j)=>{if(T){if(!h){Z(T.id===""?null:T.id,j);return}p(null),f(fe=>fe.includes(T.id)?fe.filter(Ee=>Ee!==T.id):[...fe,T.id])}},K=T=>`${g}-${T}`;return(0,E.jsx)("div",{className:B("crewlet-sheet-editor","crewlet-sheet-editor--list",`crewlet-sheet-editor--${o}`),onBlur:C.onBlur,children:(0,E.jsxs)("div",{className:"crewlet-sheet-editor__panel crewlet-sheet-editor__panel--list",children:[(0,E.jsx)("input",{ref:m,className:"crewlet-sheet-editor__filter",role:"combobox","aria-label":a,"aria-expanded":"true","aria-controls":g,"aria-autocomplete":"list","aria-activedescendant":O.length>0?K(A):void 0,"aria-invalid":s!==null,"aria-describedby":s!==null?d:void 0,placeholder:c.filter,value:b,onChange:T=>{x(T.target.value),_(0)},onKeyDown:T=>{if(!Ai(T))switch(T.key){case"Escape":T.preventDefault(),T.stopPropagation(),C.finish(),r();return;case"ArrowDown":T.preventDefault(),T.stopPropagation(),_(j=>Math.min(j+1,O.length-1));return;case"ArrowUp":T.preventDefault(),T.stopPropagation(),_(j=>Math.max(j-1,0));return;case"Home":case"End":if(b!=="")return;T.preventDefault(),T.stopPropagation(),_(T.key==="Home"?0:O.length-1);return;case"Enter":T.preventDefault(),T.stopPropagation(),h&&fa(T)?Z(N,"down"):R(O[A],T.shiftKey?"up":"down");return;case"Tab":if(u)return;T.preventDefault(),T.stopPropagation(),Z(h?N:t,T.shiftKey?"left":"right");return;default:return}}}),(0,E.jsx)("ul",{className:"crewlet-sheet-editor__list",id:g,role:"listbox","aria-label":a,"aria-multiselectable":h||void 0,children:O.length===0?(0,E.jsx)("li",{className:"crewlet-sheet-editor__empty",role:"presentation",children:c.noOptions}):O.map((T,j)=>{let fe=T.id===""?N.length===0:N.includes(T.id);return(0,E.jsxs)("li",{id:K(j),role:"option","aria-selected":fe,className:B("crewlet-sheet-editor__option",j===A&&"crewlet-sheet-editor__option--highlight",fe&&"crewlet-sheet-editor__option--selected"),onMouseDown:Ee=>Ee.preventDefault(),onMouseEnter:()=>_(j),onClick:()=>R(T,h?null:"down"),children:[(0,E.jsx)("span",{className:"crewlet-sheet-editor__mark","aria-hidden":"true",children:fe?(0,E.jsx)(cc,{size:"xs"}):null}),T.id===""?(0,E.jsx)("span",{className:"crewlet-sheet-cell__muted",children:T.label}):(0,E.jsx)(d5,{column:e,choice:T,context:l})]},T.id===""?"\0clear":T.id)})}),s!==null?(0,E.jsx)(Vh,{id:d,message:s}):null,u?(0,E.jsx)(Bh,{conflict:u,labels:c}):null]})})}var Rn=-1;function qh({label:e,columns:t,rows:l,people:n,mode:a="edit",onEdit:i,onAddRow:r,onShowHistory:o,onActiveCellChange:u,onEditingChange:c,onUndo:h,onRedo:g,onOpenLink:d,presence:m,sort:b,onSortChange:x,sync:N,onRetry:f,height:s,locale:p,className:y,labels:M,presenceLabels:O}){let A=(0,z.useId)(),_=(0,z.useMemo)(()=>Yr(M),[M]),Z=(0,z.useMemo)(()=>qr(O),[O]),C=(0,z.useMemo)(()=>({people:n,locale:p,labels:_}),[n,p,_]),R=(0,z.useMemo)(()=>Kd(t),[t]),K=(0,z.useMemo)(()=>Wd(R,l,b,C),[R,l,b,C]),T=a==="edit"&&i!==void 0,j=(0,z.useRef)(null),fe=(0,z.useRef)(null),Ee=(0,z.useRef)(null),[Ht,Il]=(0,z.useState)(0),Ut=(0,z.useRef)(0),[De,Dn]=(0,z.useState)(nc),[St,Lt]=(0,z.useState)(nc),[El,bc]=(0,z.useState)(0),[zi,to]=(0,z.useState)(0),[Gn,Hn]=(0,z.useState)(null),[lo,pa]=(0,z.useState)(null),[L,Un]=(0,z.useState)(null),[H,Y]=(0,z.useState)(new Map),[Ge,$t]=(0,z.useState)({text:"",n:0}),_t=(0,z.useRef)(!1),F=(0,z.useCallback)(v=>$t(S=>({text:v,n:S.n+1})),[]);(0,z.useLayoutEffect)(()=>{let v=()=>{let G=fe.current?.offsetHeight??0;G>0&&Dn(G);let D=Ee.current?.querySelector(".crewlet-sheet-grid__row--head")?.offsetHeight??0;D>0&&Lt(D),bc(j.current?.clientHeight??0)};if(v(),typeof ResizeObserver!="function")return;let S=new ResizeObserver(v);return j.current&&S.observe(j.current),fe.current&&S.observe(fe.current),()=>S.disconnect()},[]);let Ft=(0,z.useMemo)(()=>jd(R),[R]),Fv=(0,z.useMemo)(()=>[`${_i}px`,...R.map(v=>`${da(v)}px`)].join(" "),[R]),Wv=(0,z.useMemo)(()=>R.reduce((v,S)=>v+da(S),_i),[R]),wc=(0,z.useMemo)(()=>{let v=_i;return R.forEach((S,G)=>{S.frozen&&(v=(Ft[G]??v)+da(S))}),v},[R,Ft]),Ln=(0,z.useMemo)(()=>new Map(K.map((v,S)=>[v.id,S])),[K]),no=(0,z.useMemo)(()=>new Map(R.map((v,S)=>[v.field,S])),[R]),ma=(0,z.useCallback)(v=>{if(!v)return null;let S=no.get(v.field);if(S===void 0)return null;if(v.rowId===null)return{row:Rn,col:S};let G=Ln.get(v.rowId);return G===void 0?null:{row:G,col:S}},[no,Ln]),Tl=(0,z.useCallback)(v=>{let S=R[v.col];if(!S)return null;if(v.row===Rn)return{rowId:null,field:S.field};let G=K[v.row];return G?{rowId:G.id,field:S.field}:null},[R,K]),Pv=K.length>0&&R.length>0?{rowId:K[0].id,field:R[0].field}:R.length>0?{rowId:null,field:R[0].field}:null,P=ma(Gn)??ma(Pv),Pe=P?Tl(P):null,Xh=ma(lo)??P,nt=P&&Xh&&P.row!==Rn?kd(Xh,P):null,Qh=(0,z.useMemo)(()=>Pd(m),[m]),ey=(0,z.useMemo)(()=>eh(m),[m]),ty=(0,z.useMemo)(()=>th(m),[m]),Zh=(0,z.useRef)(null);(0,z.useEffect)(()=>{let v=Pe&&Pe.rowId!==null?{rowId:Pe.rowId,field:Pe.field}:null,S=v?il(v.rowId,v.field):null;S!==Zh.current&&(Zh.current=S,u?.(v))},[Pe,u]);let Jh=(0,z.useRef)(null);(0,z.useEffect)(()=>{let v=L?il(L.rowId,L.field):null;v!==Jh.current&&(Jh.current=v,c?.(L?{rowId:L.rowId,field:L.field}:null))},[L,c]);let ao=(0,z.useCallback)(v=>{v.length!==0&&(Y(S=>{let G=new Map(S);for(let D of v)G.set(il(D.rowId,D.field),D.error);return G}),F(v[0].error))},[F]),io=(0,z.useCallback)(v=>{Y(S=>{if(!v.some(D=>S.has(D)))return S;let G=new Map(S);for(let D of v)G.delete(D);return G})},[]),$l=(0,z.useCallback)(v=>{v.length===0||!i||(io(v.map(S=>il(S.rowId,S.field))),i(v))},[i,io]),kn=(0,z.useCallback)(v=>R[no.get(v)??-1],[R,no]),Bn=(0,z.useCallback)(v=>K[Ln.get(v)??-1],[K,Ln]),ga=(0,z.useCallback)(v=>T&&v!==void 0&&!v.readOnly,[T]),xc=(0,z.useCallback)(()=>Il(v=>v+1),[]),va=(0,z.useCallback)((v,S=!1)=>{v&&(Hn(v),S||pa(v),xc())},[xc]),Ih=v=>{Gn&&Gn.rowId===v.rowId&&Gn.field===v.field||(Hn(v),pa(v))},Oi=P?.row??null,Ci=P?.col??null;(0,z.useLayoutEffect)(()=>{if(Oi===null||Ci===null)return;let v=j.current;if(v&&Oi>=0){let S=qd(Oi,v.scrollTop,v.clientHeight,De,St);S!==v.scrollTop&&(v.scrollTop=S,to(S));let G=R[Ci];if(G&&!G.frozen){let D=Ft[Ci]??0,ne=D+da(G);D-wc<v.scrollLeft?v.scrollLeft=Math.max(D-wc,0):ne>v.scrollLeft+v.clientWidth&&(v.scrollLeft=ne-v.clientWidth)}}Ht===Ut.current||L||(Ut.current=Ht,document.getElementById(Uh(A,{row:Oi,col:Ci}))?.focus({preventScroll:!0}))},[Oi,Ci,Ht,L,A,De,St,R,Ft,wc]);let ro=(0,z.useCallback)((v,S)=>{if(v.rowId===null)return;let G=kn(v.field),D=Bn(v.rowId);if(!(!D||!G)){if(!ga(G)){F(T?_.readOnly(G.label):_.forbidden);return}o5(G.type)&&(io([il(v.rowId,v.field)]),Un({rowId:v.rowId,field:v.field,seed:S,base:ct(G,D.values[G.field])}))}},[ga,io,kn,T,_,Bn,F]),Sc=(0,z.useCallback)(v=>{if(v.rowId===null)return;let S=kn(v.field),G=Bn(v.rowId);if(!(!G||!S||S.type!=="checkbox")){if(!ga(S)){F(T?_.readOnly(S.label):_.forbidden);return}$l([{rowId:G.id,field:S.field,value:ct(S,G.values[S.field])!==!0}])}},[ga,kn,T,$l,_,Bn,F]),$h=(0,z.useCallback)((v,S)=>{if(S===null)return Tl(v);let G={down:{row:Math.min(v.row+1,K.length-1),col:v.col},up:{row:Math.max(v.row-1,0),col:v.col},right:{row:v.row,col:Math.min(v.col+1,R.length-1)},left:{row:v.row,col:Math.max(v.col-1,0)}}[S];return Tl(G)},[Tl,R.length,K.length]),Fh=(0,z.useCallback)((v,S)=>{if(!L)return;let G=ma({rowId:L.rowId,field:L.field}),D=kn(L.field),ne=Bn(L.rowId);Un(null),v!==void 0&&D&&ne&&!bi(v,ct(D,ne.values[D.field]))&&$l([{rowId:ne.id,field:D.field,value:v}]);let Ae=document.activeElement,ft=Ae!==null&&Ae!==document.body&&!!Ee.current?.contains(Ae);G&&ft&&va($h(G,S))},[kn,L,$l,va,ma,Bn,$h]);(0,z.useEffect)(()=>{L&&!Ln.has(L.rowId)&&Un(null)},[L,Ln]);let oo=L?Bn(L.rowId):void 0,ya=L?kn(L.field):void 0,_c=L&&oo&&ya?ct(ya,oo.values[ya.field]):null,Wh=!!(L&&oo&&ya&&!bi(_c,L.base)),ly=Wh&&L?oo?.changed?.[L.field]?.by??_.someone:"",uo=Wh&&L&&ya?{writer:ly,value:al(ya,_c,C)||_.empty,onKeepMine:()=>Un(v=>v&&{...v,base:_c}),onUseTheirs:()=>{let v=ma({rowId:L.rowId,field:L.field});Un(null),v&&va(Tl(v))}}:null,Ec=uo?_.conflict(uo.writer,uo.value):"";(0,z.useEffect)(()=>{Ec&&F(Ec)},[Ec,F]);let Ph=v=>{L||!nt||(v.preventDefault(),v.clipboardData.setData("text/plain",Qd(R,K,nt,C)))},e0=(0,z.useCallback)(()=>{if(!nt)return;if(!T){F(_.forbidden);return}let v=Id(R,K,nt,C);$l(v.edits),ao(v.refused)},[R,C,T,$l,_.forbidden,nt,ao,K,F]),ny=v=>{L||!nt||(Ph(v),e0())},ay=v=>{if(L||!nt)return;if(v.preventDefault(),!T){F(_.forbidden);return}let S=Jd(R,K,nt,Zd(v.clipboardData.getData("text/plain")),C);$l(S.edits),ao(S.refused)},iy=Math.max(1,Math.floor(Math.max(El-St,De)/De)-1),ry=v=>{if(L||Ai(v)||!P||!Pe)return;let S=R[P.col],G=fa(v);if(G&&v.altKey&&v.key.toLowerCase()==="h"){o&&Pe.rowId!==null&&(v.preventDefault(),o({rowId:Pe.rowId,field:Pe.field}));return}if(G&&!v.altKey&&v.key.toLowerCase()==="z"){let ne=v.shiftKey?g:h;ne&&(v.preventDefault(),ne());return}if(G&&!v.altKey&&v.key.toLowerCase()==="y"){g&&(v.preventDefault(),g());return}if(G&&!v.altKey&&v.key.toLowerCase()==="a"){if(v.preventDefault(),K.length===0)return;pa(Tl({row:0,col:0})),Hn(Tl({row:K.length-1,col:R.length-1})),xc();return}let D=Ld(P,v,{rows:K.length,cols:R.length,page:iy});if(D){v.preventDefault();let ne=v.shiftKey&&D.row!==Rn&&P.row!==Rn;va(Tl(D),ne);return}if(v.key==="Tab"){let ne=v.shiftKey?-1:1,Ae=P.col+ne;if(Ae<0||Ae>=R.length)return;v.preventDefault(),va(Tl({row:P.row,col:Ae}));return}if(P.row===Rn){(v.key==="Enter"||v.key===" ")&&S&&x&&(v.preventDefault(),x(rc(b,S.field)));return}switch(v.key){case"Enter":case"F2":if(v.preventDefault(),v.key==="Enter"&&G&&S?.type==="url"){let ne=K[P.row],Ae=ne?ct(S,ne.values[S.field]):null;typeof Ae=="string"&&Ae&&(d?d(Ae):window.open(Ae,"_blank","noopener,noreferrer"));return}S?.type==="checkbox"?Sc(Pe):ro(Pe);return;case" ":v.preventDefault(),S?.type==="checkbox"?Sc(Pe):S&&Vv(S.type)&&ro(Pe," ");return;case"Delete":case"Backspace":v.preventDefault(),e0();return;case"Escape":lo&&nt&&(nt.top!==nt.bottom||nt.left!==nt.right)&&(v.preventDefault(),pa(Pe));return}if(Xd(v)&&S){if(S.type==="rating"&&/^\d$/.test(v.key)){if(v.preventDefault(),!ga(S)){F(T?_.readOnly(S.label):_.forbidden);return}let ne=Number(v.key),Ae=K[P.row];if(!Ae)return;if(ne>Xl(S)){ao([{rowId:Ae.id,field:S.field,error:_.notARating(S.label,Xl(S))}]);return}$l([{rowId:Ae.id,field:S.field,value:ne===0?null:ne}]);return}Vv(S.type)&&(v.preventDefault(),ro(Pe,S.type==="date"?void 0:v.key))}};(0,z.useEffect)(()=>{let v=()=>{_t.current=!1};return window.addEventListener("mouseup",v),()=>window.removeEventListener("mouseup",v)},[]);let t0=(v,S)=>{if(v.button!==0)return;let G=v.shiftKey&&S.rowId!==null&&Pe?.rowId!==null;L&&L.rowId===S.rowId&&L.field===S.field||va(S,G),_t.current=S.rowId!==null},oy=v=>{!_t.current||v.rowId===null||Hn(v)},[l0,n0]=Vd(Math.max(zi-St,0),El,De,K.length),Ri=[];for(let v=l0;v<=n0;v+=1)Ri.push(v);if(P&&P.row>=0&&(P.row<l0||P.row>n0)&&Ri.push(P.row),L){let v=Ln.get(L.rowId);v!==void 0&&!Ri.includes(v)&&Ri.push(v)}let a0=`${A}-described`,i0=`${A}-help`,Di=P?R[P.col]:void 0,co=P&&P.row>=0?K[P.row]:void 0,uy=co&&Di?Qh.get(il(co.id,Di.field))??[]:[],cy=co&&Di?nh(Di,p5(co,H,Di.field),uy,C,Z):"",sy={"--crewlet-sheet-columns":Fv,"--crewlet-sheet-row-height":`${De}px`,width:`${Wv}px`},fy=v=>{let S=St+v*De-zi,G=El>0?El:De*12;return Yd(S,S+De,St,G,De*8)};return(0,E.jsxs)("div",{className:B("crewlet-sheet-grid",a==="read"&&"crewlet-sheet-grid--read",y),children:[(0,E.jsx)("div",{ref:fe,className:"crewlet-sheet-grid__probe","aria-hidden":"true"}),(0,E.jsx)("div",{ref:j,className:"crewlet-sheet-grid__scroller",style:s!==void 0?{height:`${s}px`}:void 0,onScroll:v=>to(v.currentTarget.scrollTop),children:(0,E.jsxs)("div",{ref:Ee,role:"grid","aria-label":e,"aria-rowcount":K.length+1,"aria-colcount":R.length+1,"aria-readonly":!T||void 0,"aria-multiselectable":"true","aria-describedby":i0,tabIndex:-1,className:"crewlet-sheet-grid__grid",style:sy,onKeyDown:ry,onCopy:Ph,onCut:ny,onPaste:ay,children:[(0,E.jsx)("div",{role:"rowgroup",className:"crewlet-sheet-grid__head",children:(0,E.jsxs)("div",{role:"row","aria-rowindex":1,className:"crewlet-sheet-grid__row crewlet-sheet-grid__row--head",children:[(0,E.jsx)("div",{role:"columnheader","aria-colindex":1,className:"crewlet-sheet-grid__corner",children:(0,E.jsx)(wt,{children:_.rowHeader})}),R.map((v,S)=>{let G={row:Rn,col:S},D=P?.row===Rn&&P.col===S,ne=b?.field===v.field?b.direction:void 0,Ae=ty.get(v.field)??[];return(0,E.jsxs)("div",{id:Uh(A,G),role:"columnheader","aria-colindex":S+2,"aria-sort":ne??(x?"none":void 0),tabIndex:D?0:-1,className:B("crewlet-sheet-grid__header",v.frozen&&"crewlet-sheet-grid__cell--frozen",D&&"crewlet-sheet-grid__header--active"),style:v.frozen?{insetInlineStart:`${Ft[S]}px`}:void 0,onMouseDown:ft=>t0(ft,{rowId:null,field:v.field}),onFocus:ft=>{ft.target===ft.currentTarget&&Ih({rowId:null,field:v.field})},onClick:()=>{x&&x(rc(b,v.field))},title:x?_.sortBy(v.label):void 0,children:[(0,E.jsx)("span",{className:"crewlet-sheet-grid__header-label",children:v.label}),(0,E.jsx)(wt,{children:`, ${_.types[v.type]}`}),ne?(0,E.jsx)("span",{className:"crewlet-sheet-grid__sort","aria-hidden":"true",children:ne==="ascending"?(0,E.jsx)(oh,{size:"xs"}):(0,E.jsx)(rh,{size:"xs"})}):null,Ae.length>0?(0,E.jsx)("span",{className:"crewlet-sheet-grid__header-presence","aria-hidden":"true",children:Ae.map(ft=>(0,E.jsx)(Zr,{name:ft.name,kind:ft.kind,size:16,decorative:!0,className:B("crewlet-sheet-grid__header-badge",Cn(ft.hue))},ft.id))}):null]},v.field)})]})}),(0,E.jsx)("div",{role:"rowgroup",className:"crewlet-sheet-grid__body",style:{height:`${K.length*De}px`},children:Ri.map(v=>{let S=K[v],G=ey.get(S.id);return(0,E.jsxs)("div",{role:"row","aria-rowindex":v+2,className:"crewlet-sheet-grid__row",style:{top:`${v*De}px`},children:[(0,E.jsxs)("div",{role:"rowheader","aria-colindex":1,className:B("crewlet-sheet-grid__rownum",G&&"crewlet-sheet-grid__rownum--present",G&&Cn(G.hue)),children:[(0,E.jsx)("span",{"aria-hidden":"true",children:v+1}),(0,E.jsx)(wt,{children:oc(R,S,v,C)})]}),R.map((D,ne)=>{let Ae={row:v,col:ne},ft=il(S.id,D.field),Gi=P?.row===v&&P.col===ne,r0=nt?Bd(nt,v,ne):!1,dy=S.pending?.includes(D.field)??!1,so=S.refused?.[D.field]??H.get(ft),Hi=S.changed?.[D.field],o0=ct(D,S.values[D.field]),fo=Qh.get(ft),Fl=fo?.[0],Ui=L?.rowId===S.id&&L.field===D.field;return(0,E.jsxs)("div",{id:Uh(A,Ae),role:"gridcell","aria-colindex":ne+2,"aria-selected":r0,"aria-readonly":!ga(D)||void 0,"aria-describedby":Gi?a0:void 0,tabIndex:Gi&&!Ui?0:-1,className:B("crewlet-sheet-grid__cell",`crewlet-sheet-grid__cell--${D.type}`,D.frozen&&"crewlet-sheet-grid__cell--frozen",r0&&"crewlet-sheet-grid__cell--selected",Gi&&"crewlet-sheet-grid__cell--active",dy&&"crewlet-sheet-grid__cell--pending",so!==void 0&&"crewlet-sheet-grid__cell--refused",Ui&&"crewlet-sheet-grid__cell--editing",Fl&&"crewlet-presence-ring",Fl&&Cn(Fl.hue),Fl&&(Fl.idle?"crewlet-presence-ring--idle":null)),style:D.frozen?{insetInlineStart:`${Ft[ne]}px`}:void 0,onMouseDown:kt=>t0(kt,{rowId:S.id,field:D.field}),onFocus:kt=>{kt.target===kt.currentTarget&&Ih({rowId:S.id,field:D.field})},onMouseEnter:()=>oy({rowId:S.id,field:D.field}),onDoubleClick:()=>{D.type!=="checkbox"&&ro({rowId:S.id,field:D.field})},onClick:kt=>{D.type==="checkbox"&&kt.target.closest(".crewlet-sheet-cell__check")&&Sc({rowId:S.id,field:D.field})},children:[(0,E.jsx)("span",{className:"crewlet-sheet-grid__value",children:(0,E.jsx)(Yv,{column:D,value:o0,context:C,onOpenLink:d})}),so!==void 0?(0,E.jsx)("span",{className:"crewlet-sheet-grid__refused","aria-hidden":"true",children:(0,E.jsx)(Ei,{size:"xs"})}):null,Hi?(0,E.jsx)(kv,{by:Hi.by,at:Hi.at,previous:ic(Hi)&&al(D,ct(D,Hi.previous),C)||null,locale:p,labels:_}):null,fo&&Fl?(0,E.jsx)(_v,{name:lh(fo),hue:Fl.hue,kind:Fl.kind,editing:fo.some(kt=>kt.editing)}):null,Gi&&so!==void 0&&!Ui?(0,E.jsx)("span",{className:"crewlet-sheet-grid__message","aria-hidden":"true",children:so}):null,Gi&&o&&!Ui?(0,E.jsx)("button",{type:"button",tabIndex:-1,"aria-hidden":"true",className:"crewlet-sheet-grid__history",title:_.history,onMouseDown:kt=>kt.stopPropagation(),onClick:()=>o({rowId:S.id,field:D.field}),children:(0,E.jsx)(dh,{size:"xs"})}):null,Ui?(0,E.jsx)(Xv,{column:D,value:o0,context:C,seed:L.seed,label:`${D.label}, ${oc(R,S,v,C)}`,side:fy(v),conflict:uo,onCommit:(kt,hy)=>Fh(kt,hy),onCancel:()=>Fh(void 0,null)}):null]},D.field)})]},S.id)})})]})}),(0,E.jsx)(wt,{id:a0,children:cy}),(0,E.jsx)(wt,{id:i0,children:_.keyboardHelp}),(0,E.jsx)(wt,{children:(0,E.jsx)("span",{role:"status","aria-live":"polite",children:(0,E.jsx)("span",{children:Ge.text},Ge.n)})}),r||N?(0,E.jsxs)("div",{className:"crewlet-sheet-grid__foot",children:[r&&T?(0,E.jsx)(Wr,{size:"small",variant:"ghost",onClick:r,leadingIcon:(0,E.jsx)(fh,{size:"sm"}),children:_.addRow}):null,N?(0,E.jsxs)("span",{className:B("crewlet-sheet-grid__sync",(N.failed??0)>0&&"crewlet-sheet-grid__sync--failed"),children:[(0,E.jsx)("span",{children:_.sync(N)}),(N.failed??0)>0&&f?(0,E.jsx)(Wr,{size:"small",variant:"ghost",onClick:f,children:_.retry}):null]}):null]}):null]})}function Uh(e,t){return`${e}-r${t.row<0?"h":t.row}-c${t.col}`}function p5(e,t,l){let n=t.get(il(e.id,l));return n===void 0||e.refused?.[l]!==void 0?e:{...e,refused:{...e.refused,[l]:n}}}var Jl=ie(ze(),1),Pr={noData:"This page did not declare the data capability, so the sheet cannot load.",noColumns:e=>`The ${e} collection has no columns yet.`,undoSkipped:e=>e?`${e} Undo skipped.`:"Somebody changed this after you. Undo skipped.",addRowFailed:e=>`Could not add a row. ${e}`};function vc(e,t){console.warn(`[crewlet artifact-kit] ${e}`,t)}var m5=e=>e.outcome==="applied"||e.outcome==="pending";function Qv(e){return m5(e)?null:e.outcome==="refused"?$d(e.code,e.detail,jl):jl.couldNotSave}function Zv({runtime:e,collection:t,columns:l,sort:n,frozen:a,readOnly:i=!1,label:r,height:o}){let u=e.capabilities.has("data"),c=e.capabilities.has("presence"),h=e.capabilities.has("identity"),g=(0,Q.useMemo)(()=>e.data.collection(t),[e,t]),[d,m]=(0,Q.useState)(null),[b,x]=(0,Q.useState)(void 0),[N,f]=(0,Q.useState)([]),[s,p]=(0,Q.useState)(n),[y,M]=(0,Q.useState)(null),[O,A]=(0,Q.useState)([]),[_,Z]=(0,Q.useState)([]),[C,R]=(0,Q.useState)(!1),[K,T]=(0,Q.useState)(0),[j,fe]=(0,Q.useState)({text:"",n:0}),Ee=(0,Q.useCallback)(H=>fe(Y=>({text:H,n:Y.n+1})),[]),[,Ht]=(0,Q.useState)(0),Il=(0,Q.useRef)(new Map),Ut=(0,Q.useMemo)(()=>new Fd,[]);(0,Q.useEffect)(()=>p(n),[n]),(0,Q.useEffect)(()=>Ut.subscribe(()=>Ht(H=>H+1)),[Ut]),(0,Q.useEffect)(()=>{if(!u)return;let H=!0;return g.schema().then(Y=>{H&&(x(Y?.title),l||m(Zg(Y)))}).catch(Y=>{vc(`the schema of ${t} could not be read`,Y),H&&!l&&m([])}),()=>{H=!1}},[g,l,u,t]),(0,Q.useEffect)(()=>{if(u)return g.subscribe(null,H=>{f(H.docs.map(Y=>({id:Y.id,values:Y.data})))})},[g,u]),(0,Q.useEffect)(()=>{if(!h)return;let H=!0;return e.identity.me().then(Y=>{H&&M(Y)}).catch(Y=>vc("the reader could not be identified",Y)),e.identity.people().then(Y=>{H&&A(Y.map(ih))}).catch(Y=>vc("the people a person cell offers could not be listed",Y)),()=>{H=!1}},[e,h]);let De=(0,Q.useMemo)(()=>Fg(l??d??[],a),[l,d,a]),Dn=(0,Q.useMemo)(()=>{let H=new Set(O.map(Ge=>Ge.id)),Y=new Set;for(let Ge of De)if(Ge.type==="person")for(let $t of N){let _t=$t.values[Ge.field];typeof _t=="string"&&!H.has(_t)&&Y.add(_t)}return[...Y].sort()},[De,N,O]),St=Dn.join("\0");(0,Q.useEffect)(()=>{if(!h||Dn.length===0)return;let H=!0;return e.identity.lookup(Dn).then(Y=>{if(!H)return;let Ge=Object.values(Y).filter($t=>$t!==null).map(ih);Ge.length>0&&A($t=>[...$t,...Ge.filter(_t=>!$t.some(F=>F.id===_t.id))])}).catch(Y=>vc("the people named in person cells could not be looked up",Y)),()=>{H=!1}},[e,h,St]),(0,Q.useEffect)(()=>{if(c)return e.presence.subscribe(H=>Z(H))},[e,c]),(0,Q.useEffect)(()=>{if(e.connection)return R(e.connection.state==="offline"),e.connection.subscribe(H=>R(H==="offline"))},[e]);let Lt=(0,Q.useMemo)(()=>{let H=Pg(_,Il.current);return Il.current=H,H},[_]),El=y?.id??null,bc=(0,Q.useMemo)(()=>ev(_,t,El,Lt),[_,t,El,Lt]),zi=(0,Q.useMemo)(()=>tv(_,El,Lt),[_,El,Lt]),to=(0,Q.useCallback)(H=>{let Y=H.map(F=>Ut.begin(F.rowId,F.field)),Ge=F=>{for(let Ft of Y)Ft(F===null?{ok:!0}:{ok:!1,message:F})},$t=F=>({[F.field]:F.value}),_t;if(H.length===1){let[F]=H;_t=g.update(F.rowId,$t(F))}else{let F=e.data.batch();for(let Ft of H)F.update(t,Ft.rowId,$t(Ft));_t=F.commit()}_t.then(F=>Ge(Qv(F)),F=>Ge(F instanceof Error&&F.message?F.message:jl.couldNotSave))},[t,Ut,e,g]),Gn=(0,Q.useCallback)(()=>{g.create({}).then(H=>{let Y=Qv(H);T(Ge=>Y===null?0:Ge+1),Y!==null&&Ee(Pr.addRowFailed(Y))},H=>{T(Y=>Y+1),Ee(Pr.addRowFailed(H instanceof Error&&H.message?H.message:jl.couldNotSave))})},[g,Ee]),Hn=(0,Q.useCallback)(H=>{H().then(Y=>{let Ge=Y;Ge&&Ge.outcome==="refused"&&Ee(Pr.undoSkipped(Ge.detail))},Y=>Ee(Y instanceof Error&&Y.message?Y.message:jl.couldNotSave))},[Ee]),lo=(0,Q.useCallback)(H=>{c&&e.presence.set({focus:H?{collection:t,doc:H.rowId,field:H.field}:null})},[e,c,t]),pa=(0,Q.useCallback)(H=>{c&&e.presence.set({editing:H?{collection:t,doc:H.rowId,field:H.field}:null})},[e,c,t]);if(!u)return(0,Jl.jsx)(Kr,{variant:"warning",children:Pr.noData});if(De.length===0&&(l!==null||d!==null))return(0,Jl.jsx)(Kr,{variant:"neutral",children:Pr.noColumns(t)});let L=i||y?.role==="viewer",Un={...Ut.sync(C),failed:K};return(0,Jl.jsxs)("div",{className:"crewlet-kit-sheet",children:[zi.length>0?(0,Jl.jsx)("div",{className:"crewlet-kit-sheet__presence",children:(0,Jl.jsx)(zh,{members:zi})}):null,(0,Jl.jsx)(qh,{label:r??b??t,columns:De,rows:Ut.decorate(N),people:O,mode:L?"read":"edit",onEdit:L?void 0:to,onAddRow:L?void 0:Gn,onActiveCellChange:lo,onEditingChange:pa,onUndo:()=>Hn(()=>e.data.undo()),onRedo:()=>Hn(()=>e.data.redo()),presence:bc,sort:s,onSortChange:p,sync:Un,onRetry:K>0?Gn:void 0,height:o}),j.text?(0,Jl.jsx)(Kr,{variant:"warning",live:"polite",children:j.text},j.n):null]})}var Yh="crewlet:ready";function jh(e=window){return e.crewlet?Promise.resolve(e.crewlet):new Promise(t=>{let l=()=>{e.crewlet&&(e.removeEventListener(Yh,l),t(e.crewlet))};e.addEventListener(Yh,l)})}var $v=ie(ze(),1);function Iv(e,t){let l=e.ownerDocument.createElement("div");l.className="crewlet-kit-sheet__root",e.append(l);let n=(0,Jv.createRoot)(l),a=t,i=t.runtime??null,r=!1,o=()=>{r||!i||n.render((0,$v.jsx)(Zv,{runtime:i,collection:a.collection,columns:a.columns&&a.columns.length>0?a.columns:null,sort:a.sort??null,frozen:a.frozen,readOnly:a.readOnly,label:a.label,height:a.height}))};return i?o():jh(e.ownerDocument.defaultView??window).then(u=>{i=u,o()}),{update(u){a=u,u.runtime&&(i=u.runtime),o()},unmount(){r=!0,n.unmount(),l.remove()}}}var eo=class extends HTMLElement{static get observedAttributes(){return Jg}attributeChangedCallback(){this.closest("crewlet-sheet")?.dispatchEvent(new Event("crewlet-columnchange"))}toColumn(){return Ig(t=>this.getAttribute(t))}},g5=["collection","sort","frozen","readonly","label","height"],yc=class extends HTMLElement{constructor(){super(...arguments);Ml(this,"mounted",null);Ml(this,"observer",typeof MutationObserver=="function"?new MutationObserver(()=>this.refresh()):null);Ml(this,"onColumnChange",()=>this.refresh())}static get observedAttributes(){return g5}connectedCallback(){this.addEventListener("crewlet-columnchange",this.onColumnChange),this.observer?.observe(this,{childList:!0}),this.refresh()}disconnectedCallback(){this.removeEventListener("crewlet-columnchange",this.onColumnChange),this.observer?.disconnect(),this.mounted?.unmount(),this.mounted=null}attributeChangedCallback(){this.isConnected&&this.refresh()}options(){let l=this.getAttribute("collection")?.trim();if(!l)return null;let n=[...this.children].filter(u=>u instanceof eo).map(u=>u.toColumn()).filter(u=>u!==null),a=Number(this.getAttribute("frozen")),i=Number(this.getAttribute("height")),r={collection:l,columns:n,sort:$g(this.getAttribute("sort")),readOnly:this.hasAttribute("readonly")};this.hasAttribute("frozen")&&Number.isInteger(a)&&a>=0&&(r.frozen=a),this.hasAttribute("height")&&Number.isFinite(i)&&i>0&&(r.height=i);let o=this.getAttribute("label")?.trim();return o&&(r.label=o),r}refresh(){let l=this.options();if(!l){this.mounted?.unmount(),this.mounted=null;return}this.mounted?this.mounted.update(l):this.mounted=Iv(this,l)}};function Kh(e=customElements){e.get("crewlet-column")||e.define("crewlet-column",eo),e.get("crewlet-sheet")||e.define("crewlet-sheet",yc)}Kh();export{eo as CrewletColumnElement,yc as CrewletSheetElement,Yh as RUNTIME_READY_EVENT,Kh as defineElements,Iv as mountSheet,jh as whenRuntime};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/artifact-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"description": "The Crewlet design system as a framework-free browser bundle for artifact pages: the tokens, every theme, the fonts and the base stylesheet, the theme bootstrap, and the sheet as custom elements bound to the artifact runtime.",
|
|
5
5
|
"license": "MIT AND OFL-1.1 AND ISC",
|
|
6
6
|
"repository": {
|
|
@@ -34,9 +34,9 @@
|
|
|
34
34
|
"clean": "rm -rf dist"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@crewlethq/icons": "0.
|
|
38
|
-
"@crewlethq/tokens": "0.
|
|
39
|
-
"@crewlethq/ui": "0.
|
|
37
|
+
"@crewlethq/icons": "0.20.0",
|
|
38
|
+
"@crewlethq/tokens": "0.20.0",
|
|
39
|
+
"@crewlethq/ui": "0.20.0",
|
|
40
40
|
"@types/react": "^19.0.0",
|
|
41
41
|
"@types/react-dom": "^19.3.0",
|
|
42
42
|
"esbuild": "^0.28.2",
|