:root{--font-sans: "Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs: .6875rem;--text-sm: .75rem;--text-base: .8125rem;--text-md: .875rem;--text-lg: 1rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.65;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-xs: 3px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .1s;--duration-base: .15s;--duration-slow: .25s;--sidebar-width: 64px;--topbar-height: 40px;--z-sidebar: 50;--z-topbar: 40;--z-drawer-overlay: 190;--z-drawer: 200;--z-popover: 300;--z-toast: 400;--z-dialog: 500}:root,[data-theme=light]{color-scheme:light;--bg: #fafafa;--surface: #ffffff;--surface-raised: #ffffff;--surface-overlay: #ffffff;--surface-hover: rgba(0, 0, 0, .025);--surface-active: rgba(0, 0, 0, .05);--surface-sunken: #f4f4f5;--text-primary: #0a0a0a;--text-secondary: #404040;--text-muted: #737373;--text-faint: #a3a3a3;--text-placeholder: #b5b5b5;--text-on-accent: #ffffff;--text-link: #4f46e5;--border-subtle: rgba(0, 0, 0, .06);--border-default: rgba(0, 0, 0, .1);--border-strong: rgba(0, 0, 0, .15);--border-focus: #4f46e5;--accent: #4f46e5;--accent-hover: #4338ca;--accent-pressed: #3730a3;--accent-soft: rgba(79, 70, 229, .08);--accent-soft-strong: rgba(79, 70, 229, .16);--success-bg: #f0fdf4;--success-fg: #15803d;--success-border: #bbf7d0;--warning-bg: #fffbeb;--warning-fg: #b45309;--warning-border: #fde68a;--danger-bg: #fef2f2;--danger-fg: #b91c1c;--danger-border: #fecaca;--info-bg: #eff6ff;--info-fg: #1d4ed8;--info-border: #bfdbfe;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 2px 4px rgba(0, 0, 0, .04);--shadow-md: 0 4px 8px rgba(0, 0, 0, .06), 0 2px 4px rgba(0, 0, 0, .04);--shadow-popover: 0 10px 30px rgba(0, 0, 0, .08), 0 4px 8px rgba(0, 0, 0, .04);--shadow-dialog: 0 25px 50px -12px rgba(0, 0, 0, .15);--scrollbar-thumb: rgba(0, 0, 0, .2);--scrollbar-thumb-hover: rgba(0, 0, 0, .3)}[data-theme=dark]{color-scheme:dark;--bg: #0a0a0a;--surface: #111111;--surface-raised: #18181b;--surface-overlay: #1c1c1f;--surface-hover: rgba(255, 255, 255, .04);--surface-active: rgba(255, 255, 255, .07);--surface-sunken: #050505;--text-primary: #fafafa;--text-secondary: #d4d4d8;--text-muted: #a1a1aa;--text-faint: #71717a;--text-placeholder: #52525b;--text-on-accent: #ffffff;--text-link: #818cf8;--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .15);--border-focus: #818cf8;--accent: #6366f1;--accent-hover: #818cf8;--accent-pressed: #4f46e5;--accent-soft: rgba(99, 102, 241, .12);--accent-soft-strong: rgba(99, 102, 241, .22);--success-bg: rgba(34, 197, 94, .1);--success-fg: #4ade80;--success-border: rgba(34, 197, 94, .3);--warning-bg: rgba(245, 158, 11, .12);--warning-fg: #fbbf24;--warning-border: rgba(245, 158, 11, .3);--danger-bg: rgba(239, 68, 68, .12);--danger-fg: #f87171;--danger-border: rgba(239, 68, 68, .3);--info-bg: rgba(59, 130, 246, .12);--info-fg: #60a5fa;--info-border: rgba(59, 130, 246, .3);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-popover: 0 10px 30px rgba(0, 0, 0, .5), 0 4px 8px rgba(0, 0, 0, .3);--shadow-dialog: 0 25px 50px -12px rgba(0, 0, 0, .6);--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-thumb-hover: rgba(255, 255, 255, .25)}:root,[data-theme=light],[data-theme=dark]{--color-bg: var(--bg);--color-bg-deep: var(--surface-sunken);--color-surface: var(--surface-raised);--color-border: var(--border-default);--color-border-light: var(--border-strong);--color-accent: var(--accent);--color-accent-hover: var(--accent-hover);--color-accent-10: var(--accent-soft);--color-accent-20: var(--accent-soft-strong);--color-secondary: var(--surface-raised);--color-secondary-hover: var(--surface-hover);--color-text: var(--text-primary);--color-text-bright: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-soft: var(--text-secondary);--color-text-muted: var(--text-muted);--color-text-dim: var(--text-faint);--color-text-faint: var(--text-faint);--color-text-placeholder: var(--text-placeholder);--color-error: var(--danger-fg);--color-warning: var(--warning-fg);--color-link: var(--text-link);--color-hover-subtle: var(--surface-hover);--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-3);--space-lg: var(--space-4);--space-xl: var(--space-6);--space-2xl: var(--space-8);--radius-pill: var(--radius-full);--font-family: var(--font-sans);--font-xs: var(--text-xs);--font-sm: var(--text-sm);--font-base: var(--text-base);--font-md: var(--text-md);--font-lg: var(--text-lg);--font-xl: var(--text-xl);--shadow-card: var(--shadow-sm);--transition-fast: var(--duration-fast) var(--ease-out);--transition-normal: var(--duration-base) var(--ease-out)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full);border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:content-box}::selection{background:var(--accent-soft-strong);color:var(--text-primary)}a{color:var(--text-link);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}.btn{padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-md);font-weight:var(--weight-medium);background:var(--accent);color:var(--text-on-accent);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);line-height:1.4}.btn:hover:not(:disabled){background:var(--accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:.3rem .7rem;font-size:var(--text-sm)}.btn-secondary{background:var(--surface-raised);color:var(--text-primary);border-color:var(--border-default)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}input,select,textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-size:var(--text-md);width:100%;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}input::placeholder,textarea::placeholder{color:var(--text-placeholder)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--border-default);box-shadow:var(--shadow-xs)}.ui-btn{--btn-padding-y: var(--space-2);--btn-padding-x: var(--space-4);--btn-font: var(--text-md);--btn-radius: var(--radius-md);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--btn-padding-y) var(--btn-padding-x);border:1px solid transparent;border-radius:var(--btn-radius);font-size:var(--btn-font);font-weight:var(--weight-medium);font-family:inherit;line-height:1.4;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--border-focus)}.ui-btn:disabled,.ui-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.ui-btn--sm{--btn-padding-y: .3rem;--btn-padding-x: .7rem;--btn-font: var(--text-sm)}.ui-btn--primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}.ui-btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.ui-btn--secondary{background:var(--surface);color:var(--text-primary);border-color:var(--border-default)}.ui-btn--secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.ui-btn--ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ui-btn--danger{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-border)}.ui-btn--danger:hover:not(:disabled){background:var(--danger-fg);color:var(--text-on-accent);border-color:var(--danger-fg)}.ui-btn[data-loading=true]{cursor:progress}.ui-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ui-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ui-icon-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--border-focus)}.ui-icon-btn:disabled{opacity:.4;cursor:not-allowed}.ui-icon-btn--sm{width:1.5rem;height:1.5rem}.ui-field{display:flex;flex-direction:column;gap:var(--space-1)}.ui-field__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}.ui-field__hint{font-size:var(--text-xs);color:var(--text-muted)}.ui-field__error{font-size:var(--text-xs);color:var(--danger-fg)}.ui-input{display:block;width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-size:var(--text-md);font-family:inherit;line-height:1.4;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-input::placeholder{color:var(--text-placeholder)}.ui-input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.ui-input--error{border-color:var(--danger-fg)}.ui-input--error:focus{box-shadow:0 0 0 3px var(--danger-bg)}.ui-input[type=datetime-local]{font-family:var(--font-mono);font-size:var(--text-sm)}.ui-textarea{resize:vertical;min-height:6rem;font-family:inherit}.ui-card{background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);display:flex;flex-direction:column}.ui-card--padded{padding:var(--space-5)}.ui-card--danger{border-color:var(--danger-border);background:var(--danger-bg)}.ui-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle)}.ui-card__header--no-border{border-bottom:none}.ui-card__header-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ui-card__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--leading-tight)}.ui-card__subtitle{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal)}.ui-card__actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.ui-card__body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.ui-card__body--tight{padding:var(--space-3) var(--space-5);gap:var(--space-2)}.ui-card__footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.ui-section-header{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--space-3)}.ui-section-header__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:-.01em}.ui-section-header__subtitle{font-size:var(--text-sm);color:var(--text-muted)}.ui-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:var(--text-xs);font-weight:var(--weight-medium);font-family:var(--font-sans);line-height:1.4;border-radius:var(--radius-full);border:1px solid transparent;white-space:nowrap}.ui-badge--neutral{background:var(--surface-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.ui-badge--accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft-strong)}.ui-badge--success{background:var(--success-bg);color:var(--success-fg);border-color:var(--success-border)}.ui-badge--warning{background:var(--warning-bg);color:var(--warning-fg);border-color:var(--warning-border)}.ui-badge--danger{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-border)}.ui-badge--info{background:var(--info-bg);color:var(--info-fg);border-color:var(--info-border)}.ui-badge--mono{font-family:var(--font-mono);font-size:10px}.ui-badge__dot{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}.ui-spinner{display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-full);animation:ui-spinner-spin .7s linear infinite}.ui-spinner--xs{font-size:12px;border-width:1.5px}.ui-spinner--sm{font-size:14px}.ui-spinner--md{font-size:18px}@keyframes ui-spinner-spin{to{transform:rotate(360deg)}}.ui-skeleton{display:block;background:linear-gradient(90deg,var(--surface-hover) 0%,var(--surface-active) 50%,var(--surface-hover) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:ui-skeleton-shimmer 1.4s ease-in-out infinite}@keyframes ui-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ui-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-10) var(--space-6);gap:var(--space-3);color:var(--text-muted)}.ui-empty__icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--surface-hover);color:var(--text-faint);margin-bottom:var(--space-2)}.ui-empty__title{font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-primary)}.ui-empty__description{font-size:var(--text-sm);color:var(--text-muted);max-width:28rem;line-height:var(--leading-relaxed)}.ui-empty__action{margin-top:var(--space-3)}.ui-tabs{display:flex;flex-direction:column;gap:var(--space-4)}.ui-tabs__list{display:flex;gap:0;border-bottom:1px solid var(--border-default);padding:0 var(--space-1)}.ui-tabs__trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:inherit;cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.ui-tabs__trigger:hover{color:var(--text-primary)}.ui-tabs__trigger[data-state=active]{color:var(--text-primary);border-bottom-color:var(--accent)}.ui-tabs__trigger:focus-visible{outline:none;border-radius:var(--radius-sm);box-shadow:0 0 0 3px var(--accent-soft)}.ui-tabs__content{outline:none}.ui-toggle-group{display:inline-flex;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface);padding:2px;gap:2px}.ui-toggle-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-secondary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:inherit;font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ui-toggle-item:hover:not([data-state=on]){background:var(--surface-hover);color:var(--text-primary)}.ui-toggle-item[data-state=on]{background:var(--accent-soft);color:var(--accent)}.ui-toggle-item:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.ui-select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:var(--text-md);font-family:inherit;cursor:pointer;min-width:8rem;transition:border-color var(--duration-fast) var(--ease-out)}.ui-select-trigger:hover{border-color:var(--border-strong)}.ui-select-trigger:focus-visible{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.ui-select-trigger[data-state=open]{border-color:var(--border-focus)}.ui-select-trigger__chev{flex-shrink:0;opacity:.6}.ui-popover{background:var(--surface-overlay);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);padding:var(--space-1);min-width:var(--radix-popper-anchor-width, 10rem);z-index:var(--z-popover);outline:none;animation:ui-popover-in var(--duration-fast) var(--ease-out)}@keyframes ui-popover-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.ui-menu-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;transition:background-color var(--duration-fast) var(--ease-out)}.ui-menu-item[data-highlighted],.ui-menu-item:hover{background:var(--surface-hover)}.ui-menu-item[data-state=checked]{color:var(--accent)}.ui-menu-item[data-disabled]{color:var(--text-faint);cursor:not-allowed}.ui-menu-item--danger{color:var(--danger-fg)}.ui-menu-item--danger[data-highlighted],.ui-menu-item--danger:hover{background:var(--danger-bg)}.ui-menu-separator{height:1px;background:var(--border-subtle);margin:var(--space-1) 0}.ui-tooltip{background:var(--text-primary);color:var(--bg);padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-medium);box-shadow:var(--shadow-md);z-index:var(--z-popover);-webkit-user-select:none;user-select:none;max-width:16rem}.ui-tooltip-arrow{fill:var(--text-primary)}.ui-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-dialog);animation:ui-fade-in var(--duration-base) var(--ease-out)}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}.ui-dialog-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--surface-overlay);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-dialog);width:90vw;max-width:28rem;max-height:85vh;overflow:auto;z-index:calc(var(--z-dialog) + 1);display:flex;flex-direction:column;animation:ui-dialog-in var(--duration-base) var(--ease-out)}@keyframes ui-dialog-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.ui-dialog-content:focus{outline:none}.ui-dialog-close{position:absolute;top:var(--space-3);right:var(--space-3);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ui-dialog-close:hover{background:var(--surface-hover);color:var(--text-primary)}.ui-dialog-close:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.ui-dialog-header{padding:var(--space-5) var(--space-5) var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.ui-dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.ui-dialog-description{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed)}.ui-dialog-body{padding:0 var(--space-5)}.ui-dialog-footer{padding:var(--space-4) var(--space-5);display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);border-top:1px solid var(--border-subtle)}.ui-toast-viewport{position:fixed;bottom:0;right:0;display:flex;flex-direction:column;padding:var(--space-4);gap:var(--space-2);width:24rem;max-width:100vw;z-index:var(--z-toast);list-style:none;outline:none}.ui-toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-overlay);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);animation:ui-toast-in var(--duration-base) var(--ease-out)}.ui-toast[data-state=closed]{animation:ui-toast-out var(--duration-fast) var(--ease-out) forwards}@keyframes ui-toast-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes ui-toast-out{to{opacity:0;transform:translate(100%)}}.ui-toast--success{border-left:3px solid var(--success-fg)}.ui-toast--error{border-left:3px solid var(--danger-fg)}.ui-toast--info{border-left:3px solid var(--info-fg)}.ui-toast__body{flex:1;min-width:0;font-size:var(--text-sm);color:var(--text-primary);line-height:var(--leading-normal)}.ui-toast__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-faint);cursor:pointer;padding:2px;margin:-2px;line-height:1;flex-shrink:0}.ui-toast__close:hover{color:var(--text-primary)}.ui-stepper{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0}.ui-stepper__step{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.ui-stepper__step[data-state=active]{color:var(--text-primary);font-weight:var(--weight-medium)}.ui-stepper__step[data-state=complete]{color:var(--success-fg)}.ui-stepper__indicator{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-full);border:1.5px solid var(--border-strong);background:var(--surface);font-size:var(--text-xs);font-weight:var(--weight-semibold);flex-shrink:0}.ui-stepper__step[data-state=active] .ui-stepper__indicator{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.ui-stepper__step[data-state=complete] .ui-stepper__indicator{background:var(--success-fg);border-color:var(--success-fg);color:#fff}.ui-stepper__sep{flex:1;height:1px;background:var(--border-default);min-width:var(--space-4)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");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}.mc-wrap[data-v-059dc9ac]{position:relative}.mc-spinner[data-v-059dc9ac]{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);pointer-events:none}.mc-dropdown[data-v-059dc9ac]{position:absolute;top:100%;left:0;right:0;z-index:var(--z-popover, 200);margin-top:4px;background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);max-height:280px;overflow-y:auto;list-style:none;padding:var(--space-1) 0;margin-left:0;margin-right:0}.mc-option[data-v-059dc9ac]{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm);margin:0 var(--space-1)}.mc-option[data-v-059dc9ac]:hover,.mc-option--active[data-v-059dc9ac]{background:var(--surface-hover)}.mc-option__id[data-v-059dc9ac]{font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-primary);line-height:1.3}.mc-option__name[data-v-059dc9ac]{font-size:var(--text-xs);color:var(--text-muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-gate__hint[data-v-3c4a0337]{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:1rem}.invite-gate__field[data-v-3c4a0337]{display:flex;flex-direction:column;gap:.375rem}.invite-gate__input[data-v-3c4a0337]{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);font-size:1rem;font-family:monospace;letter-spacing:.08em;width:100%}.invite-gate__input[data-v-3c4a0337]:disabled{opacity:.6}.invite-gate__error[data-v-3c4a0337]{color:var(--color-danger);font-size:.8125rem}#app[data-v-2a6d4d84]{display:grid;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--topbar-height) 1fr;grid-template-areas:"sidebar topbar" "sidebar main";min-height:100vh;background:var(--bg)}#app.no-shell[data-v-2a6d4d84]{display:block}.app-sidebar[data-v-2a6d4d84]{grid-area:sidebar;background:var(--surface);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;padding:var(--space-3) 0;gap:var(--space-3)}.sidebar-nav[data-v-2a6d4d84]{display:flex;flex-direction:column;gap:var(--space-1);align-items:stretch;width:100%;padding:0 var(--space-2)}.sidebar-link[data-v-2a6d4d84]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) 0;border-radius:var(--radius-md);color:var(--text-muted);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);cursor:pointer;font-family:inherit;position:relative}.sidebar-link[data-v-2a6d4d84]:hover{background:var(--surface-hover);color:var(--text-primary)}.sidebar-link--active[data-v-2a6d4d84]{color:var(--text-primary);background:var(--surface-hover)}.sidebar-link--active[data-v-2a6d4d84]:before{content:"";position:absolute;left:-8px;top:8px;bottom:8px;width:2px;background:var(--accent);border-radius:var(--radius-full)}.sidebar-link svg[data-v-2a6d4d84]{width:18px;height:18px;flex-shrink:0}.sidebar-label[data-v-2a6d4d84]{font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:var(--weight-medium)}.app-topbar[data-v-2a6d4d84]{grid-area:topbar;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-5);background:var(--bg);border-bottom:1px solid var(--border-subtle);z-index:var(--z-topbar)}.app-topbar__title[data-v-2a6d4d84]{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:-.01em}.app-topbar__actions[data-v-2a6d4d84]{display:flex;align-items:center;gap:var(--space-2)}.app-topbar__avatar[data-v-2a6d4d84]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:26px;height:26px;border-radius:var(--radius-full);background:var(--accent);color:var(--text-on-accent);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:var(--weight-semibold);cursor:pointer;border:none;font-family:inherit;transition:filter var(--duration-fast) var(--ease-out)}.app-topbar__avatar[data-v-2a6d4d84]:hover{filter:brightness(1.1)}.app-topbar__avatar[data-v-2a6d4d84]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.app-topbar__menu-header[data-v-2a6d4d84]{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.app-topbar__menu-header strong[data-v-2a6d4d84]{color:var(--text-primary);font-weight:var(--weight-medium)}.app-main[data-v-2a6d4d84]{grid-area:main;padding:var(--space-5) var(--space-6);max-width:1500px;width:100%;overflow:auto;height:calc(100vh - var(--topbar-height));display:flex;flex-direction:column}#app.no-shell .app-main[data-v-2a6d4d84]{margin-left:0;padding:0;max-width:none;height:100vh;grid-area:unset}@media(max-width:768px){#app[data-v-2a6d4d84]{--sidebar-width: 56px;grid-template-columns:var(--sidebar-width) 1fr}.app-main[data-v-2a6d4d84]{padding:var(--space-3) var(--space-4)}}.login-view[data-v-88564ad9]{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:var(--space-6)}.login-card[data-v-88564ad9]{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.login-card__header[data-v-88564ad9]{margin-bottom:var(--space-6)}.login-card__title[data-v-88564ad9]{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:-.01em}.login-card__subtitle[data-v-88564ad9]{margin-top:4px;font-size:var(--text-sm);color:var(--text-muted)}.login-form[data-v-88564ad9]{display:flex;flex-direction:column;gap:var(--space-4)}.login-form>.ui-btn[data-v-88564ad9]{margin-top:var(--space-2)}.login-error[data-v-88564ad9]{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-fg);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-normal)}.login-switch[data-v-88564ad9]{margin-top:var(--space-4);display:flex;justify-content:center}.login-link[data-v-88564ad9]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--text-link);cursor:pointer;font-size:var(--text-sm);font-family:inherit;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.login-link[data-v-88564ad9]:hover{text-decoration:underline}.login-link[data-v-88564ad9]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.login-link[data-v-88564ad9]:disabled{opacity:.5;cursor:not-allowed}.login-divider[data-v-88564ad9]{margin:var(--space-5) 0;display:flex;align-items:center;gap:var(--space-3);color:var(--text-faint);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.login-divider[data-v-88564ad9]:before,.login-divider[data-v-88564ad9]:after{content:"";height:1px;background:var(--border-subtle);flex:1}.login-google[data-v-88564ad9]{width:100%;text-decoration:none}.chat-list[data-v-ddbd13b9]{height:100%;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-lg)}.chat-list__header[data-v-ddbd13b9]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.chat-list__title[data-v-ddbd13b9]{font-size:var(--text-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.chat-list__search[data-v-ddbd13b9]{width:100%;font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.chat-list__loading[data-v-ddbd13b9]{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0}.chat-list__rows[data-v-ddbd13b9]{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1px;padding:var(--space-1) 0}.chat-list__hint[data-v-ddbd13b9]{padding:var(--space-1) var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint)}.chat-list__hint code[data-v-ddbd13b9]{color:var(--text-secondary);background:none;padding:0}.chat-row[data-v-ddbd13b9]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;color:inherit;transition:background-color var(--duration-fast) var(--ease-out);position:relative;width:100%}.chat-row[data-v-ddbd13b9]:hover{background:var(--surface-hover)}.chat-row[data-v-ddbd13b9]:focus-visible{outline:none;background:var(--surface-hover);box-shadow:0 0 0 2px var(--accent-soft) inset}.chat-row--active[data-v-ddbd13b9]{background:var(--accent-soft)}.chat-row--active[data-v-ddbd13b9]:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--accent);border-radius:var(--radius-full)}.chat-row__info[data-v-ddbd13b9]{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}.chat-row__title[data-v-ddbd13b9]{font-weight:var(--weight-medium);font-size:var(--text-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.chat-row__type[data-v-ddbd13b9]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint);text-transform:lowercase}.chat-list__empty[data-v-ddbd13b9]{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);padding:var(--space-3)}.chat-list__error[data-v-ddbd13b9]{color:var(--danger-fg);padding:var(--space-3);font-size:var(--text-sm);white-space:pre-wrap}.chat-list__empty-actions[data-v-ddbd13b9]{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}.chat-list__loadmore[data-v-ddbd13b9]{display:flex;justify-content:center;padding:var(--space-2)}.chat-row--with-actions[data-v-ddbd13b9]{padding:0;display:flex;align-items:stretch;gap:0}.chat-row__main[data-v-ddbd13b9]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;font-family:inherit;color:inherit;flex:1;min-width:0}.chat-row__main[data-v-ddbd13b9]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft) inset}.chat-row__delete[data-v-ddbd13b9]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-muted);padding:0 var(--space-2);cursor:pointer;display:flex;align-items:center;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);border-radius:var(--radius-sm)}.chat-row--with-actions:hover .chat-row__delete[data-v-ddbd13b9],.chat-row__delete[data-v-ddbd13b9]:focus-visible{opacity:1}.chat-row__delete[data-v-ddbd13b9]:hover{color:var(--danger-fg)}.chat-row__delete[data-v-ddbd13b9]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft) inset}.chat-list__danger[data-v-ddbd13b9]{display:flex;justify-content:center;padding:var(--space-2);border-top:1px solid var(--border-default);margin-top:var(--space-2)}.message-list[data-v-45aa6449]{flex:1;display:flex;flex-direction:column;overflow:hidden}.message-list[data-v-45aa6449] .ui-card__body{flex:1;overflow:hidden;padding:0;gap:0}.message-list[data-v-45aa6449] .ui-card__header{flex-shrink:0}.message-list[data-v-45aa6449] .ui-card__footer{justify-content:center}.message-list__title-row[data-v-45aa6449]{display:flex;align-items:center;gap:var(--space-3)}.message-list__loading[data-v-45aa6449]{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4)}.messages[data-v-45aa6449]{flex:1;overflow-y:auto;display:flex;flex-direction:column;padding:var(--space-2);gap:2px}.message-item[data-v-45aa6449]{display:flex;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);align-items:flex-start}.message-item[data-v-45aa6449]:hover{background:var(--surface-hover)}.message-item.selected[data-v-45aa6449]{background:var(--accent-soft)}.message-item__check[data-v-45aa6449]{margin-top:4px;width:auto;cursor:pointer;accent-color:var(--accent);flex-shrink:0}.message-item__body[data-v-45aa6449]{flex:1;min-width:0}.message-item__meta[data-v-45aa6449]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:2px;flex-wrap:wrap}.message-item__sender[data-v-45aa6449]{font-weight:var(--weight-semibold);color:var(--text-primary);font-size:var(--text-sm)}.message-item__date[data-v-45aa6449]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint)}.message-item__text[data-v-45aa6449]{font-size:var(--text-md);line-height:var(--leading-normal);word-wrap:break-word;color:var(--text-secondary);white-space:pre-wrap}.message-deleted .message-item__text[data-v-45aa6449]{text-decoration:line-through;color:var(--text-faint)}.message-item__transcript[data-v-45aa6449]{font-size:var(--text-md);line-height:var(--leading-normal);word-wrap:break-word;color:var(--text-secondary);white-space:pre-wrap;margin-top:2px;padding:var(--space-2) var(--space-3);border-left:2px solid var(--info-border);background:var(--info-bg);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.message-item__transcript-label[data-v-45aa6449]{display:inline-block;margin-right:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.message-item__edit-btn[data-v-45aa6449]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;margin:0;cursor:pointer;display:inline-flex}.message-item__edit-btn[data-v-45aa6449]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft);border-radius:var(--radius-full)}.message-item__history[data-v-45aa6449]{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-left:2px solid var(--info-border);background:var(--info-bg);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.history-loading[data-v-45aa6449],.history-error[data-v-45aa6449],.history-empty[data-v-45aa6449]{font-size:var(--text-sm);color:var(--text-muted);font-style:italic;display:inline-flex;align-items:center;gap:var(--space-2)}.history-error[data-v-45aa6449]{color:var(--danger-fg);font-style:normal}.history-list[data-v-45aa6449]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.history-entry[data-v-45aa6449]{display:flex;gap:var(--space-3)}.history-time[data-v-45aa6449]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint);white-space:nowrap;min-width:9rem;flex-shrink:0}.history-text[data-v-45aa6449]{font-size:var(--text-sm);line-height:var(--leading-normal);white-space:pre-wrap;word-wrap:break-word;color:var(--text-secondary)}.llm-md[data-v-2fec514e]{position:relative}.llm-md__copy[data-v-2fec514e]{position:absolute;top:0;right:0;display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font:inherit;font-size:.75rem;cursor:pointer;background:var(--surface-raised, #f4f4f4);color:var(--text-secondary, #555);border:1px solid var(--border-subtle, #d0d0d0);border-radius:.375rem;opacity:0;transition:opacity var(--duration-fast, .12s) ease,color var(--duration-fast, .12s) ease}.llm-md:hover .llm-md__copy[data-v-2fec514e],.llm-md__copy[data-v-2fec514e]:focus-visible{opacity:1}.llm-md__copy--ok[data-v-2fec514e]{color:var(--success-fg, #157f3d)}.llm-md__copy--err[data-v-2fec514e]{color:var(--danger-fg, #c33)}.llm-md__copy-label[data-v-2fec514e]{font-family:var(--font-mono, monospace)}.llm-md__content[data-v-2fec514e] h1,.llm-md__content[data-v-2fec514e] h2,.llm-md__content[data-v-2fec514e] h3,.llm-md__content[data-v-2fec514e] h4,.llm-md__content[data-v-2fec514e] h5,.llm-md__content[data-v-2fec514e] h6{margin:.6em 0 .3em;font-weight:var(--weight-semibold, 600);line-height:1.3}.llm-md__content[data-v-2fec514e] h1{font-size:1.4em}.llm-md__content[data-v-2fec514e] h2{font-size:1.25em}.llm-md__content[data-v-2fec514e] h3{font-size:1.1em}.llm-md__content[data-v-2fec514e] h4,.llm-md__content[data-v-2fec514e] h5,.llm-md__content[data-v-2fec514e] h6{font-size:1em}.llm-md__content[data-v-2fec514e] p{margin:.4em 0;line-height:1.55}.llm-md__content[data-v-2fec514e] ul,.llm-md__content[data-v-2fec514e] ol{margin:.4em 0;padding-left:1.5rem;line-height:1.55}.llm-md__content[data-v-2fec514e] li{margin:.15em 0}.llm-md__content[data-v-2fec514e] li>p{margin:0}.llm-md__content[data-v-2fec514e] blockquote{margin:.5em 0;padding:.2em .8em;border-left:3px solid var(--border-default, #d0d0d0);color:var(--text-secondary, #555)}.llm-md__content[data-v-2fec514e] code{font-family:var(--font-mono, monospace);font-size:.92em;padding:.1em .3em;background:var(--surface-raised, #f4f4f4);border-radius:.25rem}.llm-md__content[data-v-2fec514e] pre{margin:.5em 0;padding:.6em .8em;background:var(--surface-raised, #f4f4f4);border:1px solid var(--border-subtle, #e0e0e0);border-radius:.4rem;overflow-x:auto}.llm-md__content[data-v-2fec514e] pre code{padding:0;background:transparent;border-radius:0}.llm-md__content[data-v-2fec514e] a{color:var(--accent, #4d8cff);text-decoration:underline;text-decoration-thickness:1px}.llm-md__content[data-v-2fec514e] a:hover{text-decoration-thickness:2px}.llm-md__content[data-v-2fec514e] table{border-collapse:collapse;margin:.5em 0;font-size:.95em}.llm-md__content[data-v-2fec514e] th,.llm-md__content[data-v-2fec514e] td{border:1px solid var(--border-subtle, #d0d0d0);padding:.3em .6em;text-align:left}.llm-md__content[data-v-2fec514e] th{background:var(--surface-raised, #f4f4f4);font-weight:var(--weight-semibold, 600)}.llm-md__content[data-v-2fec514e] hr{border:0;border-top:1px solid var(--border-subtle, #e0e0e0);margin:.8em 0}.llm-md__content[data-v-2fec514e] .llm-md__mermaid-error{background:var(--danger-bg, #fee);color:var(--danger-fg, #c33);font-size:.85em;white-space:pre-wrap}.llm-md__mermaid{display:block;width:100%;height:28rem;margin:.6em 0;padding:0;background:var(--surface-base, #fff);border:1px solid var(--border-subtle, #e0e0e0);border-radius:.4rem;overflow:hidden;box-sizing:border-box;position:relative}.llm-md__mermaid--rendering{color:transparent;-webkit-user-select:none;user-select:none}.llm-md__mermaid svg{width:100%!important;height:100%!important;display:block!important;max-width:none!important}.llm-md__mermaid-error{background:var(--danger-bg, #fee);color:var(--danger-fg, #c33);font-size:.85em;white-space:pre-wrap;padding:.5em;margin:0}.llm-panel[data-v-e0ef9a07]{display:flex;flex-direction:column;min-height:0;gap:var(--space-3);height:100%;overflow:hidden;padding:var(--space-1)}.llm-top[data-v-e0ef9a07]{flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-3)}.llm-card[data-v-e0ef9a07]{flex-shrink:0}.llm-title-row[data-v-e0ef9a07]{display:flex;align-items:center;gap:var(--space-2)}.llm-select-hint[data-v-e0ef9a07]{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--leading-normal);margin:0}.llm-submit-form[data-v-e0ef9a07]{display:flex;flex-direction:column;gap:var(--space-2)}.llm-scope[data-v-e0ef9a07]{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-raised)}.llm-scope>.ui-btn[data-v-e0ef9a07]{flex:1 1 auto;min-width:7rem}.llm-range[data-v-e0ef9a07]{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.llm-save-row[data-v-e0ef9a07]{display:flex;gap:var(--space-2);align-items:flex-end}.llm-save-row>.ui-field[data-v-e0ef9a07]{flex:1;min-width:0}.llm-job-card[data-v-e0ef9a07] .ui-card__body{gap:var(--space-2)}.llm-job-row[data-v-e0ef9a07]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:var(--text-xs);color:var(--text-muted)}.llm-job-row--secondary[data-v-e0ef9a07]{font-size:var(--text-xs)}.llm-job__label[data-v-e0ef9a07]{font-family:var(--font-mono);color:var(--text-faint)}.llm-job__metric[data-v-e0ef9a07]{font-family:var(--font-mono);font-size:var(--text-xs)}.llm-job__metric code[data-v-e0ef9a07]{color:var(--text-primary);font-weight:var(--weight-medium);background:none;padding:0}.llm-job__rate[data-v-e0ef9a07]{color:var(--warning-fg)}.llm-job__error[data-v-e0ef9a07]{margin-top:var(--space-1);color:var(--danger-fg);font-size:var(--text-xs);line-height:var(--leading-normal)}.llm-result-card[data-v-e0ef9a07]{flex:1;min-height:0;overflow:hidden}.llm-result-card[data-v-e0ef9a07] .ui-card__body{flex:1;overflow-y:auto;min-height:0}.llm-result__text[data-v-e0ef9a07]{white-space:pre-wrap;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--text-primary);margin:0}.llm-result__error[data-v-e0ef9a07]{color:var(--danger-fg);font-size:var(--text-sm);line-height:var(--leading-normal)}.llm-chat[data-v-e0ef9a07]{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;flex:1}.llm-chat__turns[data-v-e0ef9a07]{display:flex;flex-direction:column;gap:var(--space-3);flex:1;min-height:0;overflow-y:auto}.llm-turn[data-v-e0ef9a07]{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.llm-turn--user[data-v-e0ef9a07]{background:var(--surface-raised);border-color:var(--border-subtle)}.llm-turn--assistant[data-v-e0ef9a07]{background:var(--surface-base)}.llm-turn--pending[data-v-e0ef9a07]{opacity:.7}.llm-turn__role[data-v-e0ef9a07]{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em}.llm-turn__content[data-v-e0ef9a07]{white-space:pre-wrap;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--text-primary);margin:0}.llm-turn__content--pending[data-v-e0ef9a07]{color:var(--text-muted);font-style:italic}.llm-chat__input[data-v-e0ef9a07]{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0;padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.llm-chat__input-actions[data-v-e0ef9a07]{display:flex;gap:var(--space-2);justify-content:flex-end}.llm-history-card[data-v-e0ef9a07]{flex-shrink:0}.llm-history-card[data-v-e0ef9a07] .ui-card__body{padding-top:var(--space-2);padding-bottom:var(--space-2)}.llm-history[data-v-e0ef9a07]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px;max-height:14rem;overflow-y:auto}.llm-history__row[data-v-e0ef9a07]{border-radius:var(--radius-sm);position:relative}.llm-history__row--active[data-v-e0ef9a07]{background:var(--accent-soft)}.llm-history__row--active[data-v-e0ef9a07]:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:2px;background:var(--accent);border-radius:var(--radius-full)}.llm-history__main[data-v-e0ef9a07]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;text-align:left;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:var(--space-2);align-items:center;font-family:inherit;color:inherit;border-radius:var(--radius-sm);transition:background-color var(--duration-fast) var(--ease-out)}.llm-history__main[data-v-e0ef9a07]:hover{background:var(--surface-hover)}.llm-history__main[data-v-e0ef9a07]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft) inset}.llm-history__time[data-v-e0ef9a07]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.llm-history__prompt[data-v-e0ef9a07]{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.llm-history__meta[data-v-e0ef9a07]{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.llm-history__meta code[data-v-e0ef9a07]{background:none;padding:0;font-family:var(--font-mono)}.llm-history__state[data-v-e0ef9a07]{text-transform:lowercase;font-family:var(--font-mono)}.llm-history__state--completed[data-v-e0ef9a07]{color:var(--success-fg, #157f3d)}.llm-history__state--failed[data-v-e0ef9a07],.llm-history__state--rate_limited[data-v-e0ef9a07],.llm-history__state--canceled[data-v-e0ef9a07]{color:var(--danger-fg, #c33)}.llm-history__state--queued[data-v-e0ef9a07],.llm-history__state--syncing[data-v-e0ef9a07],.llm-history__state--calling_llm[data-v-e0ef9a07],.llm-history__state--delayed[data-v-e0ef9a07]{color:var(--accent, #4d8cff)}.auth-form[data-v-80102c13]{display:flex;flex-direction:column;gap:var(--space-lg)}.field[data-v-80102c13]{display:flex;flex-direction:column;gap:.3rem}.field label[data-v-80102c13]{font-size:var(--font-base);color:var(--color-text-muted)}.auth-form[data-v-3fb74d02]{display:flex;flex-direction:column;gap:var(--space-lg)}.field[data-v-3fb74d02]{display:flex;flex-direction:column;gap:.3rem}.field label[data-v-3fb74d02]{font-size:var(--font-base);color:var(--color-text-muted)}.verify-form[data-v-f406cef2]{display:flex;flex-direction:column;gap:var(--space-lg)}.field[data-v-f406cef2]{display:flex;flex-direction:column;gap:.3rem}.field label[data-v-f406cef2]{font-size:var(--font-base);color:var(--color-text-muted)}.tg-connect-panel[data-v-bbcb96d8]{display:flex;flex-direction:column;gap:var(--space-md)}.connect-mode[data-v-bbcb96d8]{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg)}.connect-mode .btn.active[data-v-bbcb96d8]{outline:2px solid var(--color-accent)}.server-configured[data-v-bbcb96d8]{margin-bottom:var(--space-lg);color:var(--color-text-soft);font-size:var(--font-md)}.qr-panel[data-v-bbcb96d8]{margin-top:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.qr-help[data-v-bbcb96d8]{color:var(--color-text-soft);font-size:var(--font-md)}.qr-box[data-v-bbcb96d8]{display:flex;justify-content:center;align-items:center;padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-deep)}.qr-box img[data-v-bbcb96d8]{max-width:280px;width:100%;height:auto}.qr-box.placeholder[data-v-bbcb96d8]{min-height:320px}.qr-actions[data-v-bbcb96d8]{display:flex;gap:var(--space-sm)}.qr-link[data-v-bbcb96d8]{color:var(--color-text-dim);font-size:var(--font-base)}.qr-link code[data-v-bbcb96d8]{display:block;word-break:break-all;margin-top:var(--space-xs)}.error[data-v-bbcb96d8]{color:var(--color-error);margin-top:var(--space-lg)}.chats-view[data-v-635b3278]{display:flex;gap:var(--space-5);height:100%}.sidebar[data-v-635b3278]{width:300px;flex-shrink:0;overflow-y:auto}.main-panel[data-v-635b3278]{flex:1;display:flex;flex-direction:column;gap:var(--space-3);overflow:hidden;min-width:0;min-height:0}.tools-panel[data-v-635b3278]{flex:1;min-width:300px;display:flex;flex-direction:column;overflow:hidden}.drawer-toggles[data-v-635b3278]{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;padding:0 var(--space-1)}.drawer-overlay[data-v-635b3278]{display:none}@media(max-width:1024px){.tools-panel[data-v-635b3278]{position:fixed;right:0;top:0;bottom:0;width:360px;transform:translate(100%);transition:transform var(--duration-slow) var(--ease-out);z-index:var(--z-drawer);background:var(--surface);border-left:1px solid var(--border-default);box-shadow:var(--shadow-popover);padding:var(--space-4);overflow-y:auto}.tools-panel.open[data-v-635b3278]{transform:translate(0)}.drawer-overlay[data-v-635b3278]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:var(--z-drawer-overlay);animation:drawer-fade-in-635b3278 var(--duration-base) var(--ease-out)}}@media(max-width:768px){.sidebar[data-v-635b3278]{position:fixed;left:var(--sidebar-width);top:0;bottom:0;width:280px;transform:translate(calc(-100% - var(--sidebar-width)));transition:transform var(--duration-slow) var(--ease-out);z-index:var(--z-drawer);background:var(--surface);border-right:1px solid var(--border-default);box-shadow:var(--shadow-popover);padding:var(--space-3)}.sidebar.open[data-v-635b3278]{transform:translate(0)}}@keyframes drawer-fade-in-635b3278{0%{opacity:0}to{opacity:1}}.sync-card[data-v-635b3278]{flex-shrink:0}.sync-card__title-row[data-v-635b3278]{display:flex;align-items:center;gap:var(--space-3)}.sync-card--collapsed[data-v-635b3278] .ui-card__header{border-bottom:none}.sync-card--collapsed[data-v-635b3278] .ui-card__body{display:none}.sync-card__title-actions[data-v-635b3278]{margin-left:auto;display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.sync-card__live[data-v-635b3278]{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.sync-pane[data-v-635b3278]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.sync-pane--stacked[data-v-635b3278]{flex-direction:column;align-items:stretch}.sync-pane__hint[data-v-635b3278]{flex:1;min-width:14rem;font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-normal)}.sync-row[data-v-635b3278]{display:flex;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap}.sync-row>.ui-field[data-v-635b3278]{min-width:0}.sync-row>.ui-field[data-v-635b3278]:has(input[type=datetime-local]){flex:1 1 14rem}.sync-row>.ui-field[data-v-635b3278]:has(input[type=number]){flex:0 1 12rem}.sync-sep[data-v-635b3278]{font-size:var(--text-sm);color:var(--text-faint);align-self:center;padding-bottom:var(--space-2)}.sync-status[data-v-635b3278]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding-top:var(--space-3);border-top:1px solid var(--border-subtle);margin-top:var(--space-1);font-size:var(--text-xs);color:var(--text-muted)}.sync-status__metric[data-v-635b3278]{font-family:var(--font-mono);font-size:var(--text-xs)}.sync-status__metric code[data-v-635b3278]{color:var(--text-primary);font-weight:var(--weight-medium);background:none;padding:0}.sync-status__rate[data-v-635b3278]{color:var(--warning-fg)}.connect[data-v-635b3278]{width:100%;display:flex;justify-content:center;padding-top:var(--space-12)}.connect-card[data-v-635b3278]{width:100%;max-width:480px}.connect-card__title[data-v-635b3278]{font-size:var(--text-xl);font-weight:var(--weight-semibold);margin-bottom:var(--space-4);color:var(--text-primary)}
