.toast-container[data-v-9a52972d]{top:var(--spacing-lg);z-index:var(--z-toast);align-items:center;gap:var(--spacing-sm);pointer-events:none;flex-direction:column;width:100%;max-width:400px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast[data-v-9a52972d]{pointer-events:auto;width:100%;padding:var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.toast--success[data-v-9a52972d]{border-left:4px solid var(--color-success)}.toast--error[data-v-9a52972d]{border-left:4px solid var(--color-error)}.toast--warning[data-v-9a52972d]{border-left:4px solid var(--color-warning)}.toast--info[data-v-9a52972d]{border-left:4px solid var(--color-info)}.toast__content[data-v-9a52972d]{align-items:flex-start;gap:var(--spacing-sm);display:flex}.toast__icon[data-v-9a52972d]{width:20px;height:20px;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast--success .toast__icon[data-v-9a52972d]{color:var(--color-success)}.toast--error .toast__icon[data-v-9a52972d]{color:var(--color-error)}.toast--warning .toast__icon[data-v-9a52972d]{color:var(--color-warning)}.toast--info .toast__icon[data-v-9a52972d]{color:var(--color-info)}.toast__message[data-v-9a52972d]{min-width:0;color:var(--color-text-primary);font-size:var(--font-size-base);white-space:pre-wrap;overflow-wrap:anywhere;flex:1}.toast__copy[data-v-9a52972d],.toast__close[data-v-9a52972d]{padding:var(--spacing-xs);color:var(--color-text-muted);font-size:var(--font-size-lg);cursor:pointer;transition:color var(--transition-fast) var(--easing-smooth);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast__copy[data-v-9a52972d]:hover,.toast__close[data-v-9a52972d]:hover{color:var(--color-text-primary)}.toast__copy-icon[data-v-9a52972d]{width:16px;height:16px}.toast__progress[data-v-9a52972d]{height:3px;margin-top:var(--spacing-xs);background:var(--color-border-light);align-self:stretch;position:relative;overflow:hidden}.toast__progress[data-v-9a52972d]:after{content:"";background:var(--toast-accent);width:100%;height:100%;animation:linear forwards toast-progress-9a52972d;position:absolute;top:0;left:0}@keyframes toast-progress-9a52972d{0%{width:100%}to{width:0%}}.toast-enter-active[data-v-9a52972d],.toast-leave-active[data-v-9a52972d]{transition:all var(--transition-normal) var(--easing-smooth)}.toast-enter-from[data-v-9a52972d],.toast-leave-to[data-v-9a52972d]{opacity:0;transform:translateY(-20px)}.toast-move[data-v-9a52972d]{transition:transform var(--transition-normal) var(--easing-smooth)}.consent-footer[data-v-a99e9299]{gap:var(--spacing-md);margin-top:var(--spacing-sm);flex-direction:column;display:flex}.st-root[data-v-72194d99]{--st-bg:#fff;--st-bg-subtle:#f9fafb;--st-bg-hover:#f3f4f6;--st-border:#e5e7eb;--st-border-light:#f3f4f6;--st-border-input:#d1d5db;--st-text:#1f2937;--st-text-heading:#111827;--st-text-muted:#6b7280;--st-text-faint:#9ca3af;--st-accent:#2563eb;--st-accent-bg:#eff6ff;--st-input-bg:#fff;--st-shadow:#00000014;--st-shadow-sm:#0000001a;--st-slider-track:#e5e7eb;--st-slider-thumb-border:#fff}.st-root[data-st-theme=dark][data-v-72194d99]{--st-bg:#1e1e1e;--st-bg-subtle:#2a2a2a;--st-bg-hover:#333;--st-border:#404040;--st-border-light:#333;--st-border-input:#525252;--st-text:#e5e5e5;--st-text-heading:#fafafa;--st-text-muted:#a3a3a3;--st-text-faint:#737373;--st-accent:#60a5fa;--st-accent-bg:#1e3a5f;--st-input-bg:#2a2a2a;--st-shadow:#0000004d;--st-shadow-sm:#0006;--st-slider-track:#404040;--st-slider-thumb-border:#1e1e1e}.st-toggle[data-v-72194d99]{z-index:10000;border:1px solid var(--st-border-input);background:var(--st-bg);width:36px;height:36px;color:var(--st-text);cursor:pointer;box-shadow:-2px 2px 8px var(--st-shadow-sm);border-right:none;border-radius:8px 0 0 8px;justify-content:center;align-items:center;transition:right .25s;display:flex;position:fixed;top:70px;right:0}.st-toggle--open[data-v-72194d99]{right:340px}.st-toggle[data-v-72194d99]:hover{background:var(--st-bg-hover)}.st-toggle-icon[data-v-72194d99]{width:20px;height:20px}.st-panel[data-v-72194d99]{z-index:9999;background:var(--st-bg);border-left:1px solid var(--st-border);width:340px;box-shadow:-4px 0 16px var(--st-shadow);color:var(--st-text);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;display:flex;position:fixed;top:0;bottom:0;right:0}.st-slide-enter-active[data-v-72194d99],.st-slide-leave-active[data-v-72194d99]{transition:transform .25s}.st-slide-enter-from[data-v-72194d99],.st-slide-leave-to[data-v-72194d99]{transform:translate(100%)}.st-header[data-v-72194d99]{border-bottom:1px solid var(--st-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.st-title[data-v-72194d99]{color:var(--st-text-heading);font-size:15px;font-weight:600}.st-header-actions[data-v-72194d99]{gap:6px;display:flex}.st-btn[data-v-72194d99]{border:1px solid var(--st-border-input);background:var(--st-bg);color:var(--st-text);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.st-btn[data-v-72194d99]:hover{background:var(--st-bg-hover);border-color:var(--st-text-faint)}.st-btn-icon[data-v-72194d99]{width:14px;height:14px}.st-btn--small[data-v-72194d99]{padding:2px 8px;font-size:11px}.st-toolbar[data-v-72194d99]{border-bottom:1px solid var(--st-border-light);align-items:center;gap:8px;padding:8px 12px;display:flex}.st-search[data-v-72194d99]{border:1px solid var(--st-border-input);background:var(--st-input-bg);border-radius:6px;flex:1;align-items:center;gap:6px;padding:4px 8px;display:flex}.st-search-icon[data-v-72194d99]{width:14px;height:14px;color:var(--st-text-faint);flex-shrink:0}.st-search-input[data-v-72194d99]{color:var(--st-text);background:0 0;border:none;outline:none;width:100%;font-size:12px}.st-search-input[data-v-72194d99]::placeholder{color:var(--st-text-faint)}.st-section-controls[data-v-72194d99]{flex-shrink:0;gap:4px;display:flex}.st-content[data-v-72194d99]{flex:1;padding-bottom:24px;overflow:hidden auto}.st-category[data-v-72194d99]{border-bottom:1px solid var(--st-border-light)}.st-category-header[data-v-72194d99]{background:var(--st-bg-subtle);width:100%;color:var(--st-text);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:none;align-items:center;gap:6px;padding:10px 16px;font-size:12px;font-weight:600;transition:background .15s;display:flex}.st-category-header[data-v-72194d99]:hover{background:var(--st-bg-hover)}.st-chevron[data-v-72194d99]{flex-shrink:0;width:14px;height:14px}.st-category-body[data-v-72194d99]{padding:4px 16px 12px}.st-var[data-v-72194d99]{padding:6px 0}.st-var+.st-var[data-v-72194d99]{border-top:1px solid var(--st-border-light)}.st-var--modified .st-var-name[data-v-72194d99]{color:var(--st-accent)}.st-var-label[data-v-72194d99]{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.st-var-name[data-v-72194d99]{color:var(--st-text-muted);text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,Consolas,Monaco,monospace;font-size:11px;font-weight:500;overflow:hidden}.st-var-reset[data-v-72194d99]{width:20px;height:20px;color:var(--st-text-faint);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.st-var-reset[data-v-72194d99]:hover{color:var(--st-accent);background:var(--st-accent-bg)}.st-var-reset-icon[data-v-72194d99]{width:12px;height:12px}.st-control[data-v-72194d99]{align-items:center;gap:8px;display:flex}.st-control-color[data-v-72194d99]{gap:8px}.st-color-picker[data-v-72194d99]{border:1px solid var(--st-border-input);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;width:32px;height:28px;padding:1px}.st-color-picker[data-v-72194d99]::-webkit-color-swatch-wrapper{padding:0}.st-color-picker[data-v-72194d99]::-webkit-color-swatch{border:none;border-radius:3px}.st-color-text[data-v-72194d99]{flex:1;min-width:0}.st-control-slider[data-v-72194d99]{gap:8px}.st-slider[data-v-72194d99]{appearance:none;background:var(--st-slider-track);cursor:pointer;border-radius:2px;outline:none;flex:1;min-width:0;height:4px}.st-slider[data-v-72194d99]::-webkit-slider-thumb{appearance:none;background:var(--st-accent);border:2px solid var(--st-slider-thumb-border);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0003}.st-slider[data-v-72194d99]::-moz-range-thumb{background:var(--st-accent);border:2px solid var(--st-slider-thumb-border);cursor:pointer;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0003}.st-slider-value[data-v-72194d99]{flex-shrink:0;align-items:center;gap:2px;min-width:70px;display:flex}.st-number-input[data-v-72194d99]{border:1px solid var(--st-border-input);width:50px;color:var(--st-text);background:var(--st-input-bg);text-align:right;border-radius:4px;outline:none;padding:2px 4px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:11px;transition:border-color .15s}.st-number-input[data-v-72194d99]:focus{border-color:var(--st-accent)}.st-unit[data-v-72194d99]{color:var(--st-text-faint);font-family:SF Mono,Consolas,Monaco,monospace;font-size:10px}.st-text-input[data-v-72194d99]{border:1px solid var(--st-border-input);width:100%;color:var(--st-text);background:var(--st-input-bg);border-radius:4px;outline:none;padding:4px 8px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:12px;transition:border-color .15s}.st-text-input[data-v-72194d99]:focus{border-color:var(--st-accent)}.st-complex-input[data-v-72194d99]{font-size:11px}.st-content[data-v-72194d99]::-webkit-scrollbar{width:6px}.st-content[data-v-72194d99]::-webkit-scrollbar-track{background:0 0}.st-content[data-v-72194d99]::-webkit-scrollbar-thumb{background:var(--st-border-input);border-radius:3px}.st-content[data-v-72194d99]::-webkit-scrollbar-thumb:hover{background:var(--st-text-faint)}.st-btn--active[data-v-72194d99]{background:var(--st-accent);color:#fff;border-color:var(--st-accent)}.st-btn--active[data-v-72194d99]:hover{background:var(--st-accent);border-color:var(--st-accent)}.st-inspect-tooltip[data-v-72194d99]{z-index:10001;pointer-events:none;background:var(--st-bg);border:1px solid var(--st-border);max-width:420px;box-shadow:0 4px 16px var(--st-shadow-sm);color:var(--st-text);border-radius:8px;padding:8px 12px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:11px;line-height:1.5;position:fixed}.st-inspect-selector[data-v-72194d99]{color:var(--st-accent);word-break:break-all;margin-bottom:2px;font-size:12px;font-weight:600}.st-inspect-breadcrumb[data-v-72194d99]{color:var(--st-text-muted);border-bottom:1px solid var(--st-border-light);word-break:break-all;margin-bottom:6px;padding-bottom:6px;font-size:10px}.st-inspect-tokens[data-v-72194d99]{flex-direction:column;gap:3px;display:flex}.st-inspect-token-row[data-v-72194d99]{align-items:center;gap:4px;display:flex}.st-inspect-token-prop[data-v-72194d99]{color:var(--st-text-muted);min-width:36px;font-size:10px}.st-inspect-token-arrow[data-v-72194d99]{color:var(--st-text-faint);font-size:10px}.st-inspect-token-name[data-v-72194d99]{color:var(--st-accent);font-size:11px;font-weight:600}.st-inspect-token-swatch[data-v-72194d99]{border:1px solid var(--st-border-input);border-radius:2px;flex-shrink:0;width:10px;height:10px}.st-inspect-token-section[data-v-72194d99]{color:var(--st-accent);opacity:.8;white-space:nowrap;margin-left:auto;font-size:9px}.st-inspect-no-tokens[data-v-72194d99]{color:var(--st-text-faint);font-size:10px;font-style:italic}.notification-dropdown[data-v-bd2e2052]{align-items:center;display:flex;position:relative}.notification-trigger[data-v-bd2e2052]{position:relative}.notification-badge[data-v-bd2e2052]{min-width:16px;height:16px;font-size:10px;font-weight:var(--font-weight-bold);text-align:center;color:var(--color-error-on);background-color:var(--color-error);border-radius:var(--radius-full);padding:0 4px;line-height:16px;position:absolute;top:4px;right:4px}.app-header[data-v-3940083e]{height:var(--header-height);padding:0 var(--spacing-md) 0 0;z-index:var(--z-dropdown);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.header-left[data-v-3940083e]{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex;overflow:hidden}.app-title[data-v-3940083e],.header-tenant[data-v-3940083e]{white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;overflow:hidden}.header-separator[data-v-3940083e]{flex-shrink:0}.header-right[data-v-3940083e]{align-items:center;gap:var(--spacing-sm);flex-shrink:0;display:flex}.header-search-btn[data-v-3940083e]{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 6px;display:flex}.header-search-btn__icon[data-v-3940083e]{flex-shrink:0;width:16px;height:16px}.header-search-btn__label[data-v-3940083e]{display:none}@media (width>=640px){.header-search-btn[data-v-3940083e]{padding:4px 10px}.header-search-btn__label[data-v-3940083e]{display:inline}}.app-header__burger[data-v-3940083e]{border-radius:0;justify-content:center;align-items:center;width:64px;height:100%;padding:0;display:flex}.user-avatar[data-v-3940083e]{object-fit:cover;border-radius:50%;width:24px;height:24px}.drawer-overlay[data-v-1cb27fd4]{inset:0;top:var(--header-height);z-index:calc(var(--z-dropdown) - 2);position:fixed}.app-drawer[data-v-1cb27fd4]{top:var(--header-height);width:var(--drawer-width);transition:transform var(--transition-normal) var(--easing-smooth);z-index:calc(var(--z-dropdown) - 1);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;transform:translate(-100%)}.app-drawer.open[data-v-1cb27fd4]{box-shadow:var(--shadow-lg);transform:translate(0)}.drawer-nav[data-v-1cb27fd4]{flex-direction:column;flex:1;display:flex}@media (width>=840px){.app-drawer.desktop[data-v-1cb27fd4]{cursor:pointer;width:64px;transform:translate(0)}.app-drawer.desktop.open[data-v-1cb27fd4]{width:var(--drawer-width);cursor:default}.app-drawer.desktop .nav-label[data-v-1cb27fd4]{opacity:0;width:0;overflow:hidden}.app-drawer.desktop .nav-item[data-v-1cb27fd4]{padding:var(--spacing-sm);justify-content:center;gap:0;width:44px;height:44px;margin:0 auto}.app-drawer.desktop .drawer-nav[data-v-1cb27fd4]{padding:var(--spacing-md) 0;align-items:center}.app-drawer.desktop .drawer-bottom[data-v-1cb27fd4]{padding:var(--spacing-md) 0;flex-direction:column;align-items:center;display:flex}.app-drawer.desktop .nav-separator[data-v-1cb27fd4]{margin:var(--spacing-sm) 0 0;gap:0;padding:0}.app-drawer.desktop .nav-separator--collapsible[data-v-1cb27fd4]{padding:var(--spacing-sm);justify-content:center;width:44px;height:44px;margin:0 auto}.app-drawer.desktop .nav-separator[data-v-1cb27fd4]:not(.nav-separator--collapsible){width:44px;margin-left:auto;margin-right:auto}.app-drawer.desktop .nav-separator__label[data-v-1cb27fd4],.app-drawer.desktop .nav-separator__chevron[data-v-1cb27fd4],.app-drawer.desktop .nav-separator__line[data-v-1cb27fd4]{opacity:0;width:0;overflow:hidden}.app-drawer.desktop.open .nav-separator[data-v-1cb27fd4]{width:auto;height:auto;margin:var(--spacing-sm) 0 0;padding:0 var(--spacing-md);gap:var(--spacing-sm);justify-content:flex-start}.app-drawer.desktop.open .nav-separator__label[data-v-1cb27fd4],.app-drawer.desktop.open .nav-separator__chevron[data-v-1cb27fd4],.app-drawer.desktop.open .nav-separator__line[data-v-1cb27fd4]{opacity:1;width:auto}.app-drawer.desktop.open .nav-separator__icon[data-v-1cb27fd4]{display:none}.app-drawer.desktop.open .nav-label[data-v-1cb27fd4]{opacity:1;width:auto}.app-drawer.desktop.open .nav-item[data-v-1cb27fd4]{padding:var(--spacing-sm) var(--spacing-md);justify-content:flex-start;gap:var(--spacing-md);width:auto;height:auto;min-height:var(--min-touch-target);margin:0}.app-drawer.desktop.open .drawer-nav[data-v-1cb27fd4],.app-drawer.desktop.open .drawer-bottom[data-v-1cb27fd4]{padding:var(--spacing-md);align-items:stretch}}.ai-chat-bubble-wrapper[data-v-0878855c]{bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-modal);transition:bottom .2s;position:fixed}.ai-chat-bubble-wrapper--above-fab[data-v-0878855c]{bottom:calc(var(--spacing-lg) + 48px + var(--spacing-sm))}.ai-chat-bubble{border-radius:var(--radius-full);background:var(--btn-primary-bg);width:48px;height:48px;color:var(--btn-primary-text);cursor:pointer;box-shadow:var(--shadow-lg);transition:background-color var(--transition-fast) var(--easing-smooth), transform var(--transition-fast) var(--easing-smooth);border:none;justify-content:center;align-items:center;display:flex;position:relative}.ai-chat-bubble:hover{background:var(--btn-primary-hover-bg);transform:scale(1.08)}.ai-chat-bubble--active{background:var(--btn-primary-hover-bg)}.ai-chat-bubble__icon{width:22px;height:22px}.ai-chat-bubble__badge{background:var(--color-error);min-width:20px;height:20px;color:var(--color-error-on);font-size:11px;font-weight:var(--font-weight-bold);border-radius:10px;justify-content:center;align-items:center;padding:0 4px;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.ai-chat-panel{background:var(--color-bg-primary);border-left:1px solid var(--color-border);box-shadow:var(--shadow-xl);position:relative}.ai-chat-panel__resize-handle{cursor:col-resize;z-index:10;width:6px;height:100%;position:absolute;top:0;left:-3px}.ai-chat-panel__resize-handle:hover,.ai-chat-panel__resize-handle:active{background:var(--color-primary);opacity:.3}@media (width<=839px){.ai-chat-panel__resize-handle{display:none}}.ai-chat-panel__header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ai-chat-panel__header-left{align-items:center;gap:var(--spacing-xs);display:flex}.ai-chat-panel__header-right{align-items:center;gap:2px;display:flex}.ai-chat-panel__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ai-chat-panel__header-btn{cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);color:var(--color-text-secondary);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.ai-chat-panel__header-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ai-chat-panel__header-icon{width:18px;height:18px}.ai-chat-panel__context{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);flex-shrink:0}.ai-chat-panel__messages{padding:var(--spacing-md) 0;gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-chat-panel__empty{text-align:center;color:var(--color-text-muted);padding:var(--spacing-2xl) var(--spacing-md);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.ai-chat-panel__empty-icon{width:40px;height:40px;color:var(--color-primary);margin-bottom:var(--spacing-sm);opacity:.5}.ai-chat-panel__empty-hint{font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.ai-chat-turn{gap:var(--spacing-sm);padding-left:var(--spacing-md);padding-right:var(--spacing-md);flex-direction:column;display:flex}.ai-chat-msg{flex-direction:column;width:100%;display:flex}.ai-chat-msg--system{align-self:center;max-width:95%}.ai-chat-msg__bubble{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-normal);white-space:pre-wrap;word-break:break-word}.ai-chat-msg--user{top:calc(-1 * var(--spacing-md));z-index:1;background:var(--color-bg-primary);padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));width:calc(100% + 2 * var(--spacing-md));box-sizing:border-box;position:sticky}.ai-chat-msg--user:after{content:"";background:linear-gradient(to bottom, var(--color-bg-primary), transparent);pointer-events:none;height:12px;position:absolute;top:100%;left:0;right:0}.ai-chat-msg--user .ai-chat-msg__bubble{background:var(--color-primary);color:var(--color-primary-on)}.ai-chat-msg--assistant .ai-chat-msg__bubble{background:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-light)}.ai-chat-msg--system .ai-chat-msg__bubble{background:var(--color-bg-cool);color:var(--color-text-secondary);font-size:var(--font-size-xs);text-align:center;border:1px dashed var(--color-border-light)}.ai-chat-msg__time{color:var(--color-text-muted);margin-top:2px;font-size:10px}.ai-chat-panel__typing{align-items:center;gap:4px;padding:4px 0;display:flex}.ai-chat-panel__status-phrase{margin-left:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.ai-chat-panel__typing-dot{background:var(--color-text-muted);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both ai-typing-bounce}.ai-chat-panel__typing-dot:first-child{animation-delay:0s}.ai-chat-panel__typing-dot:nth-child(2){animation-delay:.16s}.ai-chat-panel__typing-dot:nth-child(3){animation-delay:.32s}@keyframes ai-typing-bounce{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.ai-chat-panel__input-area{align-items:flex-end;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border-light);background:var(--color-bg-primary);flex-shrink:0;display:flex}.ai-chat-panel__input{resize:none;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-primary);line-height:var(--line-height-normal);max-height:15em;transition:border-color var(--transition-fast), height .1s ease;flex:1;overflow-y:hidden}.ai-chat-panel__input:focus{border-color:var(--color-input-border-focus,var(--color-border-focus));outline:none}.ai-chat-panel__input::placeholder{color:var(--color-text-muted)}.ai-chat-panel__send-btn{border-radius:var(--radius-md);background:var(--color-primary);width:36px;height:36px;color:var(--color-primary-on);cursor:pointer;transition:background var(--transition-fast), opacity var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ai-chat-panel__send-btn:hover:not(:disabled){background:var(--color-primary-dark)}.ai-chat-panel__send-btn:disabled{opacity:.4;cursor:not-allowed}.ai-chat-panel__send-icon{width:18px;height:18px}.ai-chat-panel__stop-btn{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-secondary);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ai-chat-panel__stop-btn:hover{color:var(--color-error);border-color:var(--color-error);background:var(--color-bg-primary)}.ai-chat-panel__stop-icon{width:18px;height:18px}.ai-chat-panel__queue{padding:var(--spacing-xs) var(--spacing-md);border-top:1px solid var(--color-border-light);background:var(--color-bg-cool)}.ai-chat-panel__queue-label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-semibold)}.ai-chat-panel__queue-item{justify-content:space-between;align-items:center;gap:var(--spacing-xs);padding:2px var(--spacing-xs);border-radius:var(--radius-xs);background:var(--color-bg-secondary);margin-top:2px;display:flex}.ai-chat-panel__queue-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ai-chat-panel__queue-remove{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;padding:2px;display:flex}.ai-chat-panel__queue-remove:hover{color:var(--color-error)}.ai-chat-panel__queue-remove-icon{width:12px;height:12px}.ai-chat-thinking{cursor:pointer;margin-bottom:var(--spacing-xs);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:2px 0;display:flex}.ai-chat-thinking__icon{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0}.ai-chat-thinking__label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.ai-chat-thinking:hover .ai-chat-thinking__label,.ai-chat-thinking:hover .ai-chat-thinking__icon{color:var(--color-text-secondary)}.ai-chat-thinking__content{margin-bottom:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-left:2px solid var(--color-border);background:var(--color-bg-cool);border-radius:0 var(--radius-xs) var(--radius-xs) 0}.ai-chat-thinking__step{margin-bottom:var(--spacing-xs)}.ai-chat-thinking__step:last-child{margin-bottom:0}.ai-chat-thinking__step-name{font-size:10px;font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;display:block}.ai-chat-thinking__step-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-word;max-height:200px;margin:0;font-family:inherit;line-height:1.4;overflow-y:auto}.ai-chat-panel__session-list{padding:var(--spacing-sm);flex:1;overflow-y:auto}.ai-chat-panel__session-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast) ease;justify-content:space-between;align-items:center;display:flex}.ai-chat-panel__session-item:hover{background:var(--color-bg-hover)}.ai-chat-panel__session-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ai-chat-panel__session-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ai-chat-panel__session-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ai-chat-panel__session-delete{cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);color:var(--color-text-muted);opacity:0;transition:opacity var(--transition-fast), color var(--transition-fast);background:0 0;border:none;display:flex}.ai-chat-panel__session-item:hover .ai-chat-panel__session-delete{opacity:1}.ai-chat-panel__session-delete:hover{color:var(--color-error)}.ai-chat-panel__session-delete-icon{width:16px;height:16px}.ai-action-card{background:var(--color-bg-cool);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md)}.ai-action-card--executed{opacity:.7}.ai-action-card__header{margin-bottom:var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.ai-action-card__type{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px}.ai-action-card__count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ai-action-card__cells{margin:0 0 var(--spacing-sm);padding:0;list-style:none}.ai-action-card__cell{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);padding:3px 0;display:flex}.ai-action-card__cell-icon{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0}.ai-action-card__cell-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-family:monospace}.ai-action-card__cell-type{color:var(--color-text-muted)}.ai-action-card__actions{gap:var(--spacing-xs);display:flex}.ai-action-card__status{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);display:flex}.ai-action-card__status--applied{color:var(--color-success)}.ai-action-card__status--rejected{color:var(--color-text-muted)}.ai-action-card__status--error{color:var(--color-error)}.ai-action-card__status-icon{width:16px;height:16px}.ai-action-card__canvas-link{color:var(--color-primary);font-weight:var(--font-weight-medium);align-items:center;gap:2px;text-decoration:none;display:inline-flex}.ai-action-card__canvas-link:hover{text-decoration:underline}.ai-action-card__link-icon{width:14px;height:14px}.ai-panel-slide-enter-active,.ai-panel-slide-leave-active{transition:transform var(--transition-normal) var(--easing-smooth)}.ai-panel-slide-enter-from,.ai-panel-slide-leave-to{transform:translate(100%)}.page-header__left{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.page-header__actions{align-items:center;gap:var(--spacing-sm);flex-shrink:0;display:flex}.ai-workflow-graph__header{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.ai-workflow-graph__label{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.ai-workflow-steps-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.ai-step-node{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:border-color var(--transition-fast) var(--easing-smooth), background var(--transition-fast) var(--easing-smooth)}.ai-step-node:hover{border-color:var(--color-primary)}.ai-step-node--selected{border-color:var(--color-primary);background:var(--color-bg-hover)}.ai-step-node__header{align-items:center;gap:var(--spacing-xs);display:flex}.ai-step-node__name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.ai-step-node__meta{gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px;display:flex}.ai-test-result{margin-top:var(--spacing-md)}.ai-test-result h4{margin:0 0 var(--spacing-xs);font-size:var(--font-size-sm)}.ai-tool-editor-grid{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.ai-tool-test-output{margin-top:var(--spacing-md)}.ai-tool-test-output h4{margin:0 0 var(--spacing-xs);font-size:var(--font-size-sm)}.ai-bridge-ref{margin-top:var(--spacing-lg);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-md)}.ai-bridge-ref__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--spacing-sm)}.ai-bridge-ref__list{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ai-bridge-ref__item{padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border-light)}.ai-bridge-ref__item:last-child{border-bottom:none}.ai-bridge-ref__item code{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.ai-markdown-content{font-size:var(--font-size-sm);line-height:var(--line-height-normal);word-break:break-word;overflow-wrap:anywhere}.ai-markdown-content h1,.ai-markdown-content h2,.ai-markdown-content h3,.ai-markdown-content h4{margin:var(--spacing-sm) 0 var(--spacing-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.ai-markdown-content h1{font-size:var(--font-size-lg)}.ai-markdown-content h2{font-size:var(--font-size-md)}.ai-markdown-content h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ai-markdown-content h4{font-size:var(--font-size-sm)}.ai-markdown-content h1:first-child,.ai-markdown-content h2:first-child,.ai-markdown-content h3:first-child,.ai-markdown-content h4:first-child{margin-top:0}.ai-markdown-content p{margin:0 0 var(--spacing-xs)}.ai-markdown-content p:last-child{margin-bottom:0}.ai-markdown-content ul,.ai-markdown-content ol{margin:0 0 var(--spacing-xs);padding-left:var(--spacing-md)}.ai-markdown-content li,.ai-markdown-content li>p{margin-bottom:0}.ai-markdown-content a{color:var(--link-color);text-decoration:none}.ai-markdown-content a:hover{text-decoration:underline}.ai-markdown-content code{background-color:var(--color-bg-secondary);border-radius:var(--radius-sm);font-family:var(--font-family-mono);padding:1px 5px;font-size:.88em}.ai-markdown-content pre{background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-sm);margin:var(--spacing-xs) 0;font-size:var(--font-size-xs);line-height:var(--line-height-normal);overflow-x:auto}.ai-markdown-content pre code{font-size:inherit;background:0 0;border-radius:0;padding:0}.ai-markdown-content .ai-collapsible{margin:var(--spacing-xs) 0;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-secondary)}.ai-markdown-content .ai-collapsible__summary{cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);-webkit-user-select:none;user-select:none}.ai-markdown-content .ai-collapsible__summary:hover{color:var(--color-text-primary)}.ai-markdown-content .ai-collapsible pre{border:none;border-top:1px solid var(--color-border-light);border-radius:0 0 var(--radius-md) var(--radius-md);background:0 0;margin:0}.ai-markdown-content blockquote{border-left:3px solid var(--color-border-medium);padding-left:var(--spacing-sm);margin:var(--spacing-xs) 0;color:var(--color-text-secondary)}.ai-markdown-content table{border-collapse:collapse;width:100%;margin:var(--spacing-xs) 0;font-size:var(--font-size-xs)}.ai-markdown-content th,.ai-markdown-content td{border:1px solid var(--color-border-light);padding:var(--spacing-xs) var(--spacing-sm);text-align:left}.ai-markdown-content th{background-color:var(--color-bg-secondary);font-weight:var(--font-weight-semibold)}.ai-markdown-content hr{border:none;border-top:1px solid var(--color-border-light);margin:var(--spacing-sm) 0}.ai-markdown-content strong{font-weight:var(--font-weight-medium,500)}.ai-mermaid-placeholder{margin:var(--spacing-xs) 0;justify-content:center;align-items:center;min-height:40px;display:flex}.ai-mermaid-rendered{overflow-x:auto}.ai-mermaid-rendered svg{max-width:100%;height:auto}.ai-mermaid-error-box{gap:var(--spacing-xs);flex-direction:column;display:flex}.ai-mermaid-error-source{padding:var(--spacing-sm);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);font-family:var(--font-family-mono);font-size:var(--font-size-xs);white-space:pre-wrap;color:var(--color-text-secondary);margin:0;overflow-x:auto}.ai-mermaid-error-msg{font-size:var(--font-size-xs);color:var(--color-danger)}.ai-echarts-placeholder{margin:var(--spacing-sm) 0;border-radius:var(--radius-md);min-height:40px;overflow:hidden}.ai-echarts-rendered{border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-primary)}.ai-echarts-chart{width:100%}.ai-echarts-error-box{gap:var(--spacing-xs);flex-direction:column;display:flex}.ai-echarts-error-source{padding:var(--spacing-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-xs);margin:0;overflow-x:auto}.ai-echarts-error-msg{font-size:var(--font-size-xs);color:var(--color-danger)}.ai-markdown-content pre code.hljs{background:0 0;padding:0}.ai-markdown-content .hljs-keyword,.ai-markdown-content .hljs-selector-tag,.ai-markdown-content .hljs-built_in,.ai-markdown-content .hljs-type{color:var(--color-primary-dark)}.ai-markdown-content .hljs-string,.ai-markdown-content .hljs-attr{color:var(--color-success)}.ai-markdown-content .hljs-number,.ai-markdown-content .hljs-literal{color:var(--color-accent-orange)}.ai-markdown-content .hljs-comment{color:var(--color-text-muted);font-style:italic}.ai-markdown-content .hljs-function,.ai-markdown-content .hljs-title{color:var(--color-accent-purple)}.ai-markdown-content .hljs-variable,.ai-markdown-content .hljs-template-variable{color:var(--color-accent-teal)}.ai-markdown-content .hljs-meta{color:var(--color-text-secondary)}.ai-markdown-content .hljs-deletion{color:var(--color-error);background:var(--badge-error-bg)}.ai-markdown-content .hljs-addition{color:var(--color-success);background:var(--badge-success-bg)}.ai-chat-msg--user .ai-chat-msg__bubble{position:relative}.ai-chat-edit-btn{top:var(--spacing-xs);right:var(--spacing-xs);cursor:pointer;border-radius:var(--radius-sm);color:var(--color-primary-on);opacity:0;transition:opacity var(--transition-fast), background var(--transition-fast);background:0 0;border:none;padding:3px;position:absolute}.ai-chat-msg--user .ai-chat-msg__bubble:hover .ai-chat-edit-btn{opacity:.7}.ai-chat-edit-btn:hover{background:#fff3;opacity:1!important}.ai-chat-edit-btn__icon{width:14px;height:14px}.ai-chat-edit{gap:var(--spacing-xs);flex-direction:column;display:flex}.ai-chat-edit__textarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-primary);line-height:var(--line-height-normal);box-sizing:border-box;min-height:60px;max-height:200px}.ai-chat-edit__textarea:focus{border-color:var(--color-input-border-focus,var(--color-border-focus));outline:none}.ai-chat-edit__actions{justify-content:flex-end;gap:var(--spacing-xs);display:flex}.ai-chat-edit__cancel{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast)}.ai-chat-edit__cancel:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ai-chat-edit__save{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary);color:var(--color-primary-on);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast), opacity var(--transition-fast);border:none}.ai-chat-edit__save:hover:not(:disabled){background:var(--color-primary-dark)}.ai-chat-edit__save:disabled{opacity:.4;cursor:not-allowed}.ai-chat-resend{padding:var(--spacing-xs) var(--spacing-md);justify-content:center;display:flex}.ai-chat-resend__btn{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-full);font-size:var(--font-size-xs);line-height:var(--line-height-tight);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth), color var(--transition-fast) var(--easing-smooth), border-color var(--transition-fast) var(--easing-smooth);display:inline-flex}.ai-chat-resend__btn:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-medium)}.ai-chat-resend__icon{width:14px;height:14px}.ai-chat-suggestions{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);flex-wrap:wrap;display:flex}.ai-chat-suggestions__chip{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-full);font-size:var(--font-size-xs);line-height:var(--line-height-tight);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth), border-color var(--transition-fast) var(--easing-smooth);white-space:nowrap;text-overflow:ellipsis;align-items:center;max-width:100%;display:inline-flex;overflow:hidden}.ai-chat-suggestions__chip:hover{background-color:var(--color-bg-hover);border-color:var(--color-border-medium)}.ai-chat-suggestions__chip:active{background-color:var(--color-bg-active,var(--color-bg-hover))}.ai-debug-panel{width:min(600px,90vw);z-index:calc(var(--z-modal) + 1);background:var(--color-bg-primary);border-left:1px solid var(--color-border-light);box-shadow:var(--shadow-xl);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden}.ai-debug-panel__header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ai-debug-panel__title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.ai-debug-panel__actions{align-items:center;gap:var(--spacing-xs);display:flex}.ai-debug-panel__action-btn{cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-xs);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;display:flex}.ai-debug-panel__action-btn:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.ai-debug-panel__action-btn:disabled{opacity:.4;cursor:default}.ai-debug-panel__close{cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-xs);border-radius:var(--radius-sm);background:0 0;border:none}.ai-debug-panel__close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ai-debug-panel__body{padding:var(--spacing-md);flex:1;overflow-y:auto}.ai-debug-section{margin-bottom:var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.ai-debug-section__header{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:left;width:100%;color:var(--color-text-primary);border:none;display:flex}.ai-debug-section__header:hover{background:var(--color-bg-hover)}.ai-debug-section__icon{width:14px;height:14px;transition:transform var(--transition-fast);flex-shrink:0}.ai-debug-section__content{padding:var(--spacing-sm);font-size:var(--font-size-xs);font-family:var(--font-family-mono);line-height:var(--line-height-normal);white-space:pre-wrap;word-break:break-word;background:var(--color-bg-primary);max-height:400px;overflow-y:auto}.ai-debug-section__meta{padding:var(--spacing-sm);font-size:var(--font-size-xs);gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.ai-debug-section__meta-item{align-items:center;gap:var(--spacing-xs);display:flex}.ai-debug-section__meta-label{color:var(--color-text-secondary)}.ai-debug-section__meta-value{font-weight:var(--font-weight-semibold)}.ai-debug-btn{cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition-fast), color var(--transition-fast);background:0 0;border:none;padding:2px}.ai-chat-msg--assistant:hover .ai-debug-btn{opacity:1}.ai-debug-btn:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.ai-debug-btn__icon{width:14px;height:14px}.ai-chat-sources{padding:var(--spacing-xs) 0;margin-top:var(--spacing-xs);border-top:1px solid var(--color-border-light);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.ai-chat-sources__icon{width:12px;height:12px;color:var(--color-text-muted);flex-shrink:0}.ai-chat-sources__label{color:var(--color-text-muted);white-space:nowrap;font-size:10px}.ai-chat-sources__tag{background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-full);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;align-items:center;max-width:180px;padding:1px 6px;font-size:10px;display:inline-flex;overflow:hidden}.ai-chat-sources__more{color:var(--color-text-muted);font-size:10px;font-style:italic}.ai-memory-panel{flex-direction:column;flex:1;display:flex;overflow:hidden}.ai-memory-panel__list{padding:var(--spacing-sm) var(--spacing-md);flex:1;overflow-y:auto}.ai-memory-panel__empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.ai-memory-fact{align-items:flex-start;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-sm);display:flex}.ai-memory-fact:last-child{border-bottom:none}.ai-memory-fact__text{line-height:var(--line-height-normal);flex:1}.ai-memory-fact__delete{cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;padding:2px}.ai-memory-fact__delete:hover{color:var(--color-error);background:var(--color-bg-hover)}.ai-memory-fact__delete-icon{width:14px;height:14px}.ai-memory-panel__add{gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border-light);display:flex}.ai-memory-panel__add-input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);flex:1;font-family:inherit}.ai-memory-panel__add-input:focus{border-color:var(--color-input-border-focus,var(--color-primary));outline:none}.ai-memory-panel__add-btn{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary);color:var(--btn-primary-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;border:none}.ai-memory-panel__add-btn:hover{opacity:.9}.ai-memory-panel__add-btn:disabled{opacity:.5;cursor:not-allowed}.ai-debug-sources-list{flex-wrap:wrap;gap:4px;display:flex}.ai-debug-source-tag{background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-secondary);align-items:center;padding:2px 8px;display:inline-flex}.ai-debug-trace{padding:var(--spacing-xs) var(--spacing-sm)}.ai-debug-trace-step{border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);overflow:hidden}.ai-debug-trace-step__header{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.ai-debug-trace-step__name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ai-debug-trace-step__duration{font-size:var(--font-size-xs);color:var(--color-text-muted);font-family:var(--font-family-mono)}.ai-debug-trace-step__detail{padding:var(--spacing-xs) var(--spacing-sm);color:var(--color-text-muted);border-bottom:1px solid var(--color-border-light);font-size:11px}.ai-debug-trace-call{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}.ai-debug-trace-call:last-child{border-bottom:none}.ai-debug-trace-call__row{align-items:center;gap:var(--spacing-xs);margin-bottom:2px;display:flex}.ai-debug-trace-call__label{font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.ai-debug-trace-call__badge{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:10px;font-family:var(--font-family-mono);padding:1px 6px;display:inline-flex}.ai-debug-trace-call__stats{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.ai-debug-trace-call__stat{color:var(--color-text-muted);font-size:10px;font-family:var(--font-family-mono)}.ai-debug-trace-expand{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:none;border-bottom:1px solid var(--color-border-light);cursor:pointer;color:var(--color-text-secondary);text-align:left;background:0 0;align-items:center;gap:4px;font-size:11px;display:flex}.ai-debug-trace-expand:hover{background:var(--color-bg-hover)}.ai-debug-trace-raw{padding:var(--spacing-sm);font-size:11px;font-family:var(--font-family-mono);color:var(--color-text-secondary);background:var(--color-bg-secondary);white-space:pre-wrap;word-break:break-all;border-bottom:1px solid var(--color-border-light);max-height:400px;margin:0;overflow-y:auto}.ai-rich-block-wrapper{position:relative}.ai-rich-block-actions{top:var(--spacing-xs);right:var(--spacing-xs);opacity:0;transition:opacity var(--transition-fast) var(--easing-smooth);z-index:1;gap:4px;display:flex;position:absolute}.ai-rich-block-wrapper:hover .ai-rich-block-actions{opacity:1}.ai-rich-block-download{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast) var(--easing-smooth), color var(--transition-fast) var(--easing-smooth);align-items:center;gap:4px;padding:3px 8px;font-size:10px;display:inline-flex}.ai-rich-block-download:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ai-rich-block-download__icon{width:12px;height:12px}.app-layout[data-v-93da279e]{flex-direction:column;height:100dvh;display:flex}.app-body[data-v-93da279e]{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.app-main[data-v-93da279e]{flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}.app-main[data-v-93da279e]>*{flex:1}@media (width>=840px){.app-main[data-v-93da279e]{margin-left:64px}.app-body--ai-open .app-main[data-v-93da279e]{margin-right:var(--ai-panel-width)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#1aa3db;--color-primary-light:#4ec3e0;--color-primary-dark:#007bb8;--color-primary-darker:#005a8a;--color-primary-on:#fff;--color-secondary:#004976;--color-secondary-light:#1a5d8a;--color-secondary-dark:#003a5f;--color-secondary-on:#fff;--color-success:#10b981;--color-success-on:#fff;--color-warning:#cc8400;--color-error:#dc2626;--color-error-on:#fff;--color-info:#4ec3e0;--color-accent-teal:#00a997;--color-accent-orange:#e85c0e;--color-accent-yellow:#f8ea44;--color-accent-purple:#8b5cf6;--color-accent-pink:#ec4899;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--font-family:"Inter", "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-family-mono:"Fira Code", "Cascadia Code", "JetBrains Mono", "Consolas", monospace;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.9375rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-snug:1.35;--line-height-normal:1.5;--line-height-relaxed:1.75;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--letter-spacing-wider:.06em;--letter-spacing-widest:.1em;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-badge:6px;--radius-full:9999px;--transition-fast:.15s;--transition-normal:.25s;--transition-slow:.35s;--easing-standard:cubic-bezier(.2, 0, 0, 1);--easing-smooth:cubic-bezier(.4, 0, .2, 1);--z-toolbar:10;--z-dropdown:1000;--z-modal:1050;--z-toast:1100;--z-tooltip:1200;--header-height:56px;--drawer-width:280px;--ai-panel-width:400px;--min-touch-target:44px}:root,[data-theme=light]{--color-bg-primary:#f4f7fb;--color-bg-secondary:#fafbfe;--color-bg-elevated:#fdfeff;--color-bg-cool:#eef3fa;--color-bg-warm:#fef8f5;--color-bg-hover:#0092d10f;--color-bg-sunken:#ecf0f7;--color-surface:#fafbfe;--color-surface-raised:#fdfeff;--color-surface-sunken:#ecf0f7;--color-surface-overlay:#0c162266;--color-text-primary:#0c1622;--color-text-secondary:#3a4d62;--color-text-muted:#738ba2;--color-text-inverse:#fff;--color-text-link:var(--color-primary);--color-text-link-hover:var(--color-primary-darker);--color-border:#d8e1ed;--color-border-light:#ebf0f7;--color-border-strong:#b8c6d8;--color-border-focus:#0092d1;--color-hover:#0092d10f;--color-active:#0092d11f;--color-selected:#0092d114;--color-brand-subtle:#e8f3fb;--color-highlight:#f5be0b2e;--focus-ring-color:var(--color-border-focus);--focus-ring-shadow:0 0 0 3px #0092d159;--color-input-bg:var(--color-surface);--color-input-border:var(--color-border);--color-input-border-focus:var(--color-primary);--color-input-placeholder:var(--color-text-muted);--color-code-bg:#eef3fa;--color-code-text:var(--color-secondary);--shadow-xs:0 1px 2px #0049760d;--shadow-sm:0 1px 3px #00497612, 0 0 0 1px #0049760a;--shadow-md:0 4px 16px #00497617, 0 1px 4px #0049760d, 0 0 0 1px #00497608;--shadow-lg:0 12px 40px #0049761c, 0 2px 8px #0049760d, 0 0 0 1px #00497608;--shadow-xl:0 24px 60px #00497624, 0 4px 12px #0049760f, 0 0 0 1px #00497608;--color-badge-active-bg:#10b981;--color-badge-active-text:#fff;--color-badge-inactive-bg:#dc2626;--color-badge-inactive-text:#fff;--link-color:var(--color-primary);--link-hover-color:var(--color-primary-dark);--btn-primary-bg:var(--color-primary);--btn-primary-hover-bg:var(--color-primary-dark);--btn-primary-text:var(--color-primary-on);--btn-primary-outline-color:var(--color-primary);--btn-danger-bg:var(--color-error);--btn-danger-text:var(--color-error-on);--tab-active-bg:var(--color-primary-dark);--tab-active-text:var(--color-primary-on);--tab-active-border:var(--color-primary-dark);--toggle-active-bg:var(--color-primary);--toggle-track-bg:var(--color-border);--selection-bg:var(--color-primary);--selection-text:var(--color-primary-on);--chip-bg:var(--color-primary);--chip-text:var(--color-primary-on);--spinner-color:var(--color-primary);--accent-color:var(--color-primary);--callout-border:var(--color-primary);--toast-accent:var(--color-primary);--overlay-bg:#0c162266;--overlay-bg-heavy:#0c16228c;--scrollbar-thumb:var(--color-border-strong);--scrollbar-thumb-hover:var(--color-text-muted);--scrollbar-track:var(--color-surface-sunken);--progress-track-bg:var(--color-border-light);--badge-muted-bg:var(--color-text-muted);--badge-success-bg:#d1fae5;--badge-success-text:#065f46;--badge-warning-bg:#fef3c7;--badge-warning-text:#92400e;--badge-error-bg:#fee2e2;--badge-error-text:#991b1b;--badge-info-bg:#e0f2fe;--badge-info-text:#075985;--badge-primary-bg:var(--color-primary-light);--badge-primary-text:#003a5f;--badge-accent-bg:#ede9fe;--badge-accent-text:#5b21b6;--badge-standard-text:var(--color-accent-teal);--badge-customised-text:var(--color-accent-purple);--badge-centralised-text:var(--color-accent-pink);--badge-active-text:var(--color-success);--icon-muted-color:var(--color-border);--color-status-active-bg:#d5e3de;--color-status-active-text:#047857;--color-status-draft-bg:#fef3c7;--color-status-draft-text:#92400e;--color-status-closed-bg:#e0e4eb;--color-status-closed-text:#5c6778;--color-status-danger-bg:#fee2e2;--color-status-danger-text:#991b1b;--color-status-info-bg:#e3f2fd;--color-status-info-text:#004976;--nav-active-bg:var(--color-primary);--nav-active-text:var(--color-primary-on);--resize-handle-active:var(--color-primary);--edit-toolbar-bg:var(--color-primary-dark);--edit-toolbar-text:var(--color-primary-on);--edit-toolbar-btn-border:#fff6;--edit-toolbar-btn-hover-bg:#ffffff26;--a11y-good:var(--color-success);--a11y-warning:var(--color-warning);--a11y-poor:var(--color-error);--ws-dimension-color:#3b82f6;--ws-dimension-bg:#eff6ff;--ws-dimension-border:#bfdbfe;--ws-measure-color:#16a34a;--ws-measure-bg:#f0fdf4;--ws-measure-border:#bbf7d0;--ws-entity-0-bg:#e3f2fd;--ws-entity-0-border:#b3e0f7;--ws-entity-0-color:#005a8a;--ws-entity-0-accent:#0092d1;--ws-entity-1-bg:#fff7ed;--ws-entity-1-border:#fbc89a;--ws-entity-1-color:#b84a09;--ws-entity-1-accent:#e85c0e;--ws-entity-2-bg:#e8f7f5;--ws-entity-2-border:#99d9d5;--ws-entity-2-color:#007a6e;--ws-entity-2-accent:#00a997;--ws-entity-3-bg:#f9fbe7;--ws-entity-3-border:#d4e88a;--ws-entity-3-color:#7a8700;--ws-entity-3-accent:#c4d600;--ws-entity-4-bg:#fdf2f8;--ws-entity-4-border:#e8a8ca;--ws-entity-4-color:#7b1756;--ws-entity-4-accent:#991e66;--ws-entity-5-bg:#ede9fe;--ws-entity-5-border:#c4b5fd;--ws-entity-5-color:#5b21b6;--ws-entity-5-accent:#8b5cf6;--ws-entity-6-bg:#fef3c7;--ws-entity-6-border:#fcd34d;--ws-entity-6-color:#7c4a00;--ws-entity-6-accent:#cc8400;--ws-entity-7-bg:#f0f9ff;--ws-entity-7-border:#a5d8f0;--ws-entity-7-color:#0070a0;--ws-entity-7-accent:#4ec3e0;--ws-shelf-bg:var(--color-bg-secondary);--ws-shelf-border:var(--color-border-light);--ws-drop-target-bg:#1aa3db14;--ws-drop-target-border:var(--color-primary);--ws-panel-width:220px;--ws-marks-width:160px;--ws-showme-height:40px;--ws-tabs-height:36px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary-on:#fff;--color-bg-primary:#0a1420;--color-bg-secondary:#0f1c2c;--color-bg-elevated:#152638;--color-bg-cool:#0f1c2c;--color-bg-warm:#0f1c2c;--color-bg-hover:#0092d11a;--color-bg-sunken:#070e18;--color-surface:#0f1c2c;--color-surface-raised:#152638;--color-surface-sunken:#070e18;--color-surface-overlay:#040810b3;--color-text-primary:#e2ebf5;--color-text-secondary:#92aac4;--color-text-muted:#5c7a96;--color-text-inverse:#0a1420;--color-text-link:#7dccf0;--color-text-link-hover:#b3e0f7;--color-border:#1c2f46;--color-border-light:#132136;--color-border-strong:#2a4260;--color-border-focus:#0092d1;--color-hover:#0092d11a;--color-active:#0092d12e;--color-selected:#0092d124;--color-brand-subtle:#0e2038;--color-highlight:#f5be0b3d;--focus-ring-shadow:0 0 0 3px #0092d173;--color-input-bg:var(--color-surface-sunken);--color-input-border:var(--color-border);--color-input-border-focus:#4ec3e0;--color-input-placeholder:var(--color-text-muted);--color-code-bg:#0d1824;--color-code-text:#7dccf0;--shadow-xs:0 0 0 1px #0092d10f;--shadow-sm:0 1px 4px #050c184d, 0 0 0 1px #0092d112;--shadow-md:0 4px 20px #050c1866, 0 0 0 1px #0092d10f;--shadow-lg:0 12px 48px #050c1880, 0 0 0 1px #0092d114;--shadow-xl:0 24px 64px #050c1899, 0 0 0 1px #0092d11a;--color-badge-active-bg:#059669;--color-badge-active-text:#fff;--color-badge-inactive-bg:#b91c1c;--color-badge-inactive-text:#fff;--badge-success-bg:#064e3b;--badge-success-text:#6ee7b7;--badge-warning-bg:#78350f;--badge-warning-text:#fde68a;--badge-error-bg:#7f1d1d;--badge-error-text:#fca5a5;--badge-info-bg:#0c4a6e;--badge-info-text:#7dd3fc;--badge-primary-bg:var(--color-primary-darker);--badge-primary-text:#a5e4f5;--badge-accent-bg:#2e1065;--badge-accent-text:#c4b5fd;--badge-standard-text:#5eead4;--badge-customised-text:#c4b5fd;--badge-centralised-text:#f9a8d4;--badge-active-text:#6ee7b7;--color-status-active-bg:#0a3024;--color-status-active-text:#34d399;--color-status-draft-bg:#49300a;--color-status-draft-text:#fcd34d;--color-status-closed-bg:#1a2433;--color-status-closed-text:#8a9cb4;--color-status-danger-bg:#4c1020;--color-status-danger-text:#fca5a5;--color-status-info-bg:#0a2640;--color-status-info-text:#7dccf0;--overlay-bg:#040810b3;--overlay-bg-heavy:#040810cc;--scrollbar-thumb:var(--color-border-strong);--scrollbar-thumb-hover:var(--color-text-muted);--scrollbar-track:var(--color-surface-sunken);--tab-active-text:#fff;--edit-toolbar-bg:#0f1c2c;--edit-toolbar-text:var(--color-text-primary);--edit-toolbar-btn-border:var(--color-border-strong);--edit-toolbar-btn-hover-bg:#0092d11a;--ws-dimension-color:#60a5fa;--ws-dimension-bg:#1e3a5f;--ws-dimension-border:#2563eb;--ws-measure-color:#4ade80;--ws-measure-bg:#14532d;--ws-measure-border:#16a34a;--ws-entity-0-bg:#0092d11f;--ws-entity-0-border:#0092d166;--ws-entity-0-color:#7dd3ea;--ws-entity-0-accent:#0092d1;--ws-entity-1-bg:#e85c0e24;--ws-entity-1-border:#e85c0e73;--ws-entity-1-color:#ff9a6b;--ws-entity-1-accent:#e85c0e;--ws-entity-2-bg:#00a9971f;--ws-entity-2-border:#00a99766;--ws-entity-2-color:#5ecea4;--ws-entity-2-accent:#00a997;--ws-entity-3-bg:#c4d6001a;--ws-entity-3-border:#c4d60061;--ws-entity-3-color:#d4e88a;--ws-entity-3-accent:#c4d600;--ws-entity-4-bg:#991e661f;--ws-entity-4-border:#991e6666;--ws-entity-4-color:#e87ab0;--ws-entity-4-accent:#991e66;--ws-entity-5-bg:#8b5cf61f;--ws-entity-5-border:#8b5cf666;--ws-entity-5-color:#c4b5fd;--ws-entity-5-accent:#8b5cf6;--ws-entity-6-bg:#cc84001f;--ws-entity-6-border:#cc840066;--ws-entity-6-color:#f9c24c;--ws-entity-6-accent:#cc8400;--ws-entity-7-bg:#4ec3e01a;--ws-entity-7-border:#4ec3e059;--ws-entity-7-color:#90d8ef;--ws-entity-7-accent:#4ec3e0;--ws-shelf-bg:var(--color-bg-secondary);--ws-shelf-border:var(--color-border-light);--ws-drop-target-bg:#1aa3db1f;--ws-drop-target-border:var(--color-primary)}[data-theme=grey]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary-on:#fff;--color-bg-primary:#1b1d21;--color-bg-secondary:#26292e;--color-bg-elevated:#31353b;--color-bg-cool:#26292e;--color-bg-warm:#26292e;--color-bg-hover:#0092d11a;--color-bg-sunken:#141618;--color-surface:#26292e;--color-surface-raised:#31353b;--color-surface-sunken:#141618;--color-surface-overlay:#080c1299;--color-text-primary:#e6eaf0;--color-text-secondary:#adb5c0;--color-text-muted:#727b88;--color-text-inverse:#1b1d21;--color-text-link:#7dccf0;--color-text-link-hover:#b3e0f7;--color-border:#383c43;--color-border-light:#2d3137;--color-border-strong:#484e56;--color-border-focus:#0092d1;--color-hover:#0092d11a;--color-active:#0092d12e;--color-selected:#0092d124;--color-brand-subtle:#152030;--color-highlight:#f5be0b3d;--focus-ring-shadow:0 0 0 3px #0092d173;--color-input-bg:var(--color-surface-sunken);--color-input-border:var(--color-border);--color-input-border-focus:#4ec3e0;--color-input-placeholder:var(--color-text-muted);--color-code-bg:#1e2126;--color-code-text:#7dccf0;--shadow-xs:0 1px 2px #00122333;--shadow-sm:0 1px 4px #00122340, 0 0 0 1px #005c9614;--shadow-md:0 4px 16px #000e1e52, 0 1px 4px #00122326, 0 0 0 1px #005c9612;--shadow-lg:0 12px 40px #000c1a61, 0 2px 8px #00122326, 0 0 0 1px #005c9612;--shadow-xl:0 24px 60px #000a1670, 0 4px 12px #0012232e, 0 0 0 1px #005c9614;--color-badge-active-bg:#059669;--color-badge-active-text:#fff;--color-badge-inactive-bg:#b91c1c;--color-badge-inactive-text:#fff;--badge-success-bg:#064e3b;--badge-success-text:#6ee7b7;--badge-warning-bg:#78350f;--badge-warning-text:#fde68a;--badge-error-bg:#7f1d1d;--badge-error-text:#fca5a5;--badge-info-bg:#0c4a6e;--badge-info-text:#7dd3fc;--badge-primary-bg:var(--color-primary-darker);--badge-primary-text:#a5e4f5;--badge-accent-bg:#2e1065;--badge-accent-text:#c4b5fd;--badge-standard-text:#5eead4;--badge-customised-text:#c4b5fd;--badge-centralised-text:#f9a8d4;--badge-active-text:#6ee7b7;--color-status-active-bg:#0e3428;--color-status-active-text:#34d399;--color-status-draft-bg:#49300a;--color-status-draft-text:#fcd34d;--color-status-closed-bg:#2a2e34;--color-status-closed-text:#949ca8;--color-status-danger-bg:#4c1020;--color-status-danger-text:#fca5a5;--color-status-info-bg:#0e2a40;--color-status-info-text:#7dccf0;--overlay-bg:#080c1299;--overlay-bg-heavy:#080c12bf;--scrollbar-thumb:var(--color-border-strong);--scrollbar-thumb-hover:var(--color-text-muted);--scrollbar-track:var(--color-surface-sunken);--tab-active-text:#fff;--edit-toolbar-bg:#26292e;--edit-toolbar-text:var(--color-text-primary);--edit-toolbar-btn-border:var(--color-border-strong);--edit-toolbar-btn-hover-bg:#0092d11a;--ws-dimension-color:#60a5fa;--ws-dimension-bg:#1e3a5f;--ws-dimension-border:#2563eb;--ws-measure-color:#4ade80;--ws-measure-bg:#14532d;--ws-measure-border:#16a34a;--ws-entity-0-bg:#0092d11f;--ws-entity-0-border:#0092d166;--ws-entity-0-color:#7dd3ea;--ws-entity-0-accent:#0092d1;--ws-entity-1-bg:#e85c0e24;--ws-entity-1-border:#e85c0e73;--ws-entity-1-color:#ff9a6b;--ws-entity-1-accent:#e85c0e;--ws-entity-2-bg:#00a9971f;--ws-entity-2-border:#00a99766;--ws-entity-2-color:#5ecea4;--ws-entity-2-accent:#00a997;--ws-entity-3-bg:#c4d6001a;--ws-entity-3-border:#c4d60061;--ws-entity-3-color:#d4e88a;--ws-entity-3-accent:#c4d600;--ws-entity-4-bg:#991e661f;--ws-entity-4-border:#991e6666;--ws-entity-4-color:#e87ab0;--ws-entity-4-accent:#991e66;--ws-entity-5-bg:#8b5cf61f;--ws-entity-5-border:#8b5cf666;--ws-entity-5-color:#c4b5fd;--ws-entity-5-accent:#8b5cf6;--ws-entity-6-bg:#cc84001f;--ws-entity-6-border:#cc840066;--ws-entity-6-color:#f9c24c;--ws-entity-6-accent:#cc8400;--ws-entity-7-bg:#4ec3e01a;--ws-entity-7-border:#4ec3e059;--ws-entity-7-color:#90d8ef;--ws-entity-7-accent:#4ec3e0;--ws-shelf-bg:var(--color-bg-secondary);--ws-shelf-border:var(--color-border-light);--ws-drop-target-bg:#1aa3db1f;--ws-drop-target-border:var(--color-primary)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary-on:#fff;--color-bg-primary:#0a1420;--color-bg-secondary:#0f1c2c;--color-bg-elevated:#152638;--color-bg-cool:#0f1c2c;--color-bg-warm:#0f1c2c;--color-bg-hover:#0092d11a;--color-bg-sunken:#070e18;--color-surface:#0f1c2c;--color-surface-raised:#152638;--color-surface-sunken:#070e18;--color-surface-overlay:#040810b3;--color-text-primary:#e2ebf5;--color-text-secondary:#92aac4;--color-text-muted:#5c7a96;--color-text-inverse:#0a1420;--color-text-link:#7dccf0;--color-text-link-hover:#b3e0f7;--color-border:#1c2f46;--color-border-light:#132136;--color-border-strong:#2a4260;--color-hover:#0092d11a;--color-active:#0092d12e;--color-selected:#0092d124;--color-brand-subtle:#0e2038;--color-highlight:#f5be0b3d;--focus-ring-shadow:0 0 0 3px #0092d173;--color-input-bg:var(--color-surface-sunken);--color-input-border:var(--color-border);--color-input-border-focus:#4ec3e0;--color-input-placeholder:var(--color-text-muted);--color-code-bg:#0d1824;--color-code-text:#7dccf0;--shadow-xs:0 0 0 1px #0092d10f;--shadow-sm:0 1px 4px #050c184d, 0 0 0 1px #0092d112;--shadow-md:0 4px 20px #050c1866, 0 0 0 1px #0092d10f;--shadow-lg:0 12px 48px #050c1880, 0 0 0 1px #0092d114;--shadow-xl:0 24px 64px #050c1899, 0 0 0 1px #0092d11a;--color-badge-active-bg:#059669;--color-badge-active-text:#fff;--color-badge-inactive-bg:#b91c1c;--color-badge-inactive-text:#fff;--badge-success-bg:#064e3b;--badge-success-text:#6ee7b7;--badge-warning-bg:#78350f;--badge-warning-text:#fde68a;--badge-error-bg:#7f1d1d;--badge-error-text:#fca5a5;--badge-info-bg:#0c4a6e;--badge-info-text:#7dd3fc;--badge-primary-bg:var(--color-primary-darker);--badge-primary-text:#a5e4f5;--badge-accent-bg:#2e1065;--badge-accent-text:#c4b5fd;--badge-standard-text:#5eead4;--badge-customised-text:#c4b5fd;--badge-centralised-text:#f9a8d4;--badge-active-text:#6ee7b7;--color-status-active-bg:#0a3024;--color-status-active-text:#34d399;--color-status-draft-bg:#49300a;--color-status-draft-text:#fcd34d;--color-status-closed-bg:#1a2433;--color-status-closed-text:#8a9cb4;--color-status-danger-bg:#4c1020;--color-status-danger-text:#fca5a5;--color-status-info-bg:#0a2640;--color-status-info-text:#7dccf0;--overlay-bg:#040810b3;--overlay-bg-heavy:#040810cc;--scrollbar-thumb:var(--color-border-strong);--scrollbar-thumb-hover:var(--color-text-muted);--scrollbar-track:var(--color-surface-sunken);--tab-active-text:#fff;--edit-toolbar-bg:#0f1c2c;--edit-toolbar-text:var(--color-text-primary);--edit-toolbar-btn-border:var(--color-border-strong);--edit-toolbar-btn-hover-bg:#0092d11a;--ws-dimension-color:#60a5fa;--ws-dimension-bg:#1e3a5f;--ws-dimension-border:#2563eb;--ws-measure-color:#4ade80;--ws-measure-bg:#14532d;--ws-measure-border:#16a34a;--ws-entity-0-bg:#0092d11f;--ws-entity-0-border:#0092d166;--ws-entity-0-color:#7dd3ea;--ws-entity-0-accent:#0092d1;--ws-entity-1-bg:#e85c0e24;--ws-entity-1-border:#e85c0e73;--ws-entity-1-color:#ff9a6b;--ws-entity-1-accent:#e85c0e;--ws-entity-2-bg:#00a9971f;--ws-entity-2-border:#00a99766;--ws-entity-2-color:#5ecea4;--ws-entity-2-accent:#00a997;--ws-entity-3-bg:#c4d6001a;--ws-entity-3-border:#c4d60061;--ws-entity-3-color:#d4e88a;--ws-entity-3-accent:#c4d600;--ws-entity-4-bg:#991e661f;--ws-entity-4-border:#991e6666;--ws-entity-4-color:#e87ab0;--ws-entity-4-accent:#991e66;--ws-entity-5-bg:#8b5cf61f;--ws-entity-5-border:#8b5cf666;--ws-entity-5-color:#c4b5fd;--ws-entity-5-accent:#8b5cf6;--ws-entity-6-bg:#cc84001f;--ws-entity-6-border:#cc840066;--ws-entity-6-color:#f9c24c;--ws-entity-6-accent:#cc8400;--ws-entity-7-bg:#4ec3e01a;--ws-entity-7-border:#4ec3e059;--ws-entity-7-color:#90d8ef;--ws-entity-7-accent:#4ec3e0;--ws-shelf-bg:var(--color-bg-secondary);--ws-shelf-border:var(--color-border-light);--ws-drop-target-bg:#1aa3db1f;--ws-drop-target-border:var(--color-primary)}}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}body{line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none;outline:none}:focus-visible{box-shadow:var(--focus-ring-shadow);outline:none}input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:none}html{font-size:16px}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;transition:background-color var(--transition-normal) var(--easing-smooth), color var(--transition-normal) var(--easing-smooth)}#app{flex-direction:column;min-height:100vh;display:flex}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-elevated{background-color:var(--color-bg-elevated)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-base)}h6{font-size:var(--font-size-sm)}a{color:var(--link-color);transition:color var(--transition-fast) var(--easing-smooth)}a:hover{color:var(--link-hover-color)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track,var(--color-bg-secondary))}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb,var(--color-border));border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header{background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-light)}.app-title-link{text-decoration:none}.app-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.header-separator{color:var(--color-text-muted);font-size:var(--font-size-lg);font-weight:var(--font-weight-light)}.header-tenant{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.connection-dot{width:8px;height:8px;transition:background-color var(--transition-normal) var(--easing-smooth);border-radius:50%;flex-shrink:0}.connection-dot.connected{background-color:var(--color-success)}.connection-dot.disconnected{background-color:var(--color-error)}.app-header__icon{width:24px;height:24px}.user-button{position:relative}.user-tooltip{margin-top:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--transition-fast) var(--easing-smooth), visibility var(--transition-fast) var(--easing-smooth);z-index:var(--z-tooltip);position:absolute;top:100%;right:0}.user-button:hover .user-tooltip,.user-button:focus .user-tooltip{opacity:1;visibility:visible}.drawer-overlay{background-color:var(--overlay-bg);z-index:calc(var(--z-dropdown) - 1)}.app-drawer{background-color:var(--color-bg-elevated);border-right:1px solid var(--color-border-light);transition:transform var(--transition-normal) var(--easing-smooth), width var(--transition-normal) var(--easing-smooth);z-index:var(--z-dropdown);overflow:hidden auto}.drawer-nav{padding:var(--spacing-md);gap:2px}.drawer-bottom{padding:var(--spacing-md);border-top:1px solid var(--color-border-light)}.nav-item{align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:background-color var(--transition-fast) var(--easing-smooth), color var(--transition-fast) var(--easing-smooth);min-height:36px;display:flex}.nav-item:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.nav-item.active{background-color:var(--nav-active-bg);color:var(--nav-active-text);font-weight:var(--font-weight-semibold)}.nav-item--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.nav-icon{flex-shrink:0;width:20px;height:20px}.nav-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;transition:opacity var(--transition-normal) var(--easing-smooth), width var(--transition-normal) var(--easing-smooth)}.nav-separator{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);margin-top:var(--spacing-sm);display:flex}.nav-separator__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;transition:opacity var(--transition-normal) var(--easing-smooth), width var(--transition-normal) var(--easing-smooth)}.nav-separator__line{background:var(--color-border-light);flex:1;height:1px}.nav-separator__icon{width:24px;height:24px;color:var(--color-text-muted);flex-shrink:0}.nav-separator--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm)}.nav-separator--collapsible:hover .nav-separator__label{color:var(--color-text-primary)}.nav-separator__chevron{width:14px;height:14px;color:var(--color-text-muted);transition:transform var(--transition-fast) var(--easing-smooth);flex-shrink:0;transform:rotate(90deg)}.nav-separator--collapsed .nav-separator__chevron{transform:rotate(0)}.admin-page{padding:var(--spacing-lg)}.page-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:flex-start;display:flex}.admin-page-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs)}.admin-page-description{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0}.admin-tabs{gap:var(--spacing-xs);border-bottom:1px solid var(--color-border-light);margin-bottom:var(--spacing-xl);display:flex}.admin-tabs__tab{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;transition:color .15s,border-color .15s}.admin-tabs__tab:hover{color:var(--color-text-primary)}.admin-tabs__tab--active{color:var(--tab-active-bg);border-bottom-color:var(--tab-active-bg)}.filter-bar{gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end;display:flex}.filter-search{flex:1;min-width:200px}.filter-group{flex-direction:column;min-width:100px;display:flex}.filter-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.form-input,.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-input-border,var(--color-border));border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-input-bg,var(--color-bg-primary));transition:border-color var(--transition-fast) var(--easing-standard), box-shadow var(--transition-fast) var(--easing-standard);box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:var(--color-input-border-focus,var(--color-border-focus));outline:none}.form-input:disabled,.form-select:disabled{background:var(--color-bg-secondary);color:var(--color-text-muted);cursor:not-allowed}.form-input--error,.form-select--error,.form-input--error:focus,.form-select--error:focus{border-color:var(--color-error)}.form-field-error{font-size:var(--font-size-sm);color:var(--color-error);margin-top:var(--spacing-xs);display:block}.form-field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-field__required{color:var(--color-error);margin-left:2px}.form-field__error{font-size:var(--font-size-sm);color:var(--color-error)}.form-input--sm,.form-select--sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.form-textarea{resize:vertical;min-height:80px}.form-group{margin-bottom:var(--spacing-md)}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);display:block}.form-label--inline{align-items:center;gap:var(--spacing-xs);cursor:pointer;display:inline-flex}.form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--spacing-xs);display:block}.form-section{margin-bottom:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-light)}.form-error{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-warm);color:var(--color-error);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.form-warning{font-size:var(--font-size-xs);color:var(--color-warning);margin-top:var(--spacing-xs);display:block}.validation-warning{font-size:var(--font-size-sm);color:var(--color-danger);padding:var(--spacing-xs) var(--spacing-sm);background:color-mix(in srgb, var(--color-danger) 8%, transparent);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.form-actions{justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light);display:flex}.btn{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast) var(--easing-standard);font-family:var(--font-family);border:1px solid #0000;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus-visible{box-shadow:var(--focus-ring-shadow);outline:none}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover-bg)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-cool)}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-danger:hover:not(:disabled){opacity:.9}.btn-danger-outline{color:var(--btn-danger-bg);border:1px solid var(--btn-danger-bg);background:0 0}.btn-danger-outline:hover:not(:disabled){background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-ghost{color:var(--color-text-primary);background-color:#0000}.btn-ghost:hover{background-color:var(--color-hover)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.btn-icon{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast) var(--easing-standard);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background:var(--color-hover);color:var(--color-text-primary)}.btn-icon--danger:hover:not(:disabled){background:var(--color-bg-warm);color:var(--color-error)}.btn-icon:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.btn-block{justify-content:center;width:100%}.badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:2px var(--spacing-sm);border-radius:var(--radius-badge);display:inline-block}.badge--success{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.badge--error{background:color-mix(in srgb, var(--color-error) 15%, transparent);color:var(--color-error)}.badge--info{background:color-mix(in srgb, var(--color-info) 15%, transparent);color:var(--color-info)}.badge--warning{background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning)}.badge--system{background:var(--badge-muted-bg);color:var(--color-text-inverse)}.badge--default{background:color-mix(in srgb, var(--color-info) 15%, transparent);color:var(--color-info)}.badge--scope{background:var(--color-bg-cool);color:var(--color-text-secondary);border:1px solid var(--color-border-light)}.badge--more{background:var(--color-bg-secondary);color:var(--color-text-muted);border:1px solid var(--color-border-light)}.badge--type-human{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary-dark)}.badge--type-service{background:color-mix(in srgb, var(--color-accent-purple) 15%, transparent);color:var(--color-accent-purple)}.badge--type-system{background:color-mix(in srgb, var(--color-text-muted) 15%, transparent);color:var(--color-text-muted)}.badge--role{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary-dark)}.badge--published{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.badge--route{background:var(--color-bg-secondary);color:var(--color-text-muted);font-family:var(--font-family-mono)}.badge--standard{background-color:color-mix(in srgb, var(--color-accent-teal) 15%, transparent);color:var(--badge-standard-text)}.badge--customised{background-color:color-mix(in srgb, var(--color-accent-purple) 15%, transparent);color:var(--badge-customised-text)}.badge--centralised{background-color:color-mix(in srgb, var(--color-accent-pink) 15%, transparent);color:var(--badge-centralised-text)}.badge--active{background-color:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--badge-active-text)}.badge-toggle{cursor:pointer;border:none;transition:opacity .15s}.badge-toggle:hover{opacity:.75}.badge-toggle:disabled{cursor:default;opacity:.5}.badge-sm{font-size:var(--font-size-xs);padding:2px var(--spacing-sm)}.badge-lg{font-size:var(--font-size-sm);padding:4px 12px}.badge-badges{align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.cell-stale-badge{font-size:9px;font-weight:var(--font-weight-semibold);padding:1px var(--spacing-xs);border-radius:var(--radius-xs);background:color-mix(in srgb, var(--color-warning) 15%, transparent);color:var(--color-warning);text-transform:uppercase;letter-spacing:.04em;cursor:default;align-items:center;gap:3px;line-height:1;display:inline-flex}.code-badge{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background:var(--color-bg-cool);padding:2px var(--spacing-sm);border-radius:var(--radius-xs)}.schema-badge{font-size:.625rem;font-weight:var(--font-weight-semibold);padding:1px var(--spacing-xs);border-radius:var(--radius-xs);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.schema-badge--repeated{background:var(--color-accent-purple);color:#fff}.schema-badge--required{background:var(--color-warning);color:#fff}.field-count-badge{font-size:var(--font-size-sm);color:var(--color-text-muted)}.card-template-badge{margin-top:var(--spacing-xs);display:inline-block}.card-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:2px var(--spacing-sm);border-radius:var(--radius-badge);background:var(--chip-bg);color:var(--chip-text);letter-spacing:.5px}.card-badge--active{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--badge-active-text)}.card-badge--inactive{background:var(--color-bg-secondary);color:var(--color-text-muted)}.card-badge--warning{background:var(--color-warning)}.card-badge--muted{background:var(--color-bg-secondary);color:var(--color-text-muted)}.card-badge--archived{background:color-mix(in srgb, var(--color-text-muted) 20%, transparent);color:var(--color-text-muted)}.card-badge--common{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary)}.card-badges{align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.segmented-toggle{border-radius:var(--radius-md);border:1px solid var(--color-border);display:inline-flex;overflow:hidden}.segmented-toggle__btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-weight:500;transition:background .15s,color .15s}.segmented-toggle__btn:not(:last-child){border-right:1px solid var(--color-border)}.segmented-toggle__btn--active{background:var(--toggle-active-bg);color:var(--btn-primary-text)}.segmented-toggle__btn:hover:not(.segmented-toggle__btn--active){background:var(--color-bg-secondary)}.card-type-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:2px var(--spacing-sm);border-radius:var(--radius-badge);background:var(--chip-bg);color:var(--chip-text);letter-spacing:.5px}.card-default-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:2px var(--spacing-sm);border-radius:var(--radius-badge);background:var(--color-success);color:var(--color-success-on)}.card-system-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:2px var(--spacing-sm);border-radius:var(--radius-badge);background:var(--badge-muted-bg);color:var(--color-text-inverse)}.action-buttons{gap:var(--spacing-xs);justify-content:flex-end;display:flex}.pagination{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 0;display:flex}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.loading-message,.empty-message{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-muted);font-size:var(--font-size-md)}.loading-container{align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl);color:var(--color-text-secondary);flex-direction:column;display:flex}.spinner{width:var(--min-touch-target);height:var(--min-touch-target);border:3px solid var(--color-border-light);border-top-color:var(--spinner-color);border-radius:var(--radius-full);animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-container{align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl);text-align:center;flex-direction:column;display:flex}.error-icon{width:var(--spacing-2xl);height:var(--spacing-2xl);color:var(--color-error)}.error-container h3{margin:0}.error-container p{color:var(--color-text-secondary);margin:0}.empty-icon{width:var(--spacing-3xl);height:var(--spacing-3xl);color:var(--color-text-muted)}.modal-overlay{background:var(--overlay-bg);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--color-bg-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);flex-direction:column;width:90%;max-width:720px;max-height:85vh;display:flex}.modal-dialog--sm{max-width:480px}.modal-dialog--md{max-width:640px}.modal-dialog--lg{max-width:960px}.modal-dialog--simple{width:auto;min-width:360px;max-width:480px;max-height:none;padding:var(--spacing-lg);display:block}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.modal-dialog--simple .modal-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.modal-close{font-size:var(--font-size-2xl);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0;line-height:1}.modal-close:hover{color:var(--color-text-primary)}.modal-form{flex-direction:column;flex:1;display:flex;overflow:hidden}.modal-body{padding:var(--spacing-lg);flex:1;overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-light);display:flex}.modal-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.modal-warning{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-sm)}.confirm-dialog__message{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:var(--spacing-md) 0;white-space:pre-line;line-height:1.5}.confirm-dialog__actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.prompt-dialog__message{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:var(--spacing-md) 0 var(--spacing-sm);line-height:1.5}.prompt-dialog__input{width:100%;margin-top:var(--spacing-sm)}.prompt-dialog__actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.tree-node__icon--generated{color:var(--color-info)}.tree-node__icon--favourites{color:var(--color-warning)}.tree-node__icon--custom{color:var(--color-primary)}.tree-node__btn--active .tree-node__icon--generated,.tree-node__btn--active .tree-node__icon--favourites,.tree-node__btn--active .tree-node__icon--custom{color:var(--nav-active-text)}.btn-icon__svg{width:16px;height:16px}.edge-dialog-row{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);grid-template-columns:1fr 1fr;display:grid}.edge-dialog-bindings__header{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex}.edge-dialog-bindings__grid{border:1px solid var(--color-border-light);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);overflow:hidden}.edge-dialog-bindings__row{gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);grid-template-columns:1fr 1fr 40px;align-items:center;display:grid}.edge-dialog-bindings__row:not(:last-child){border-bottom:1px solid var(--color-border-light)}.edge-dialog-bindings__row--header{background:var(--color-bg-cool);font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:var(--spacing-xs) var(--spacing-md);font-weight:600}.edge-dialog-bindings__cell{min-width:0}.edge-dialog-bindings__cell--action{justify-content:center;display:flex}.edge-dialog-bindings__cell .form-input{font-size:var(--font-size-sm)}.edge-dialog-bindings__add{align-items:center;gap:var(--spacing-xs);display:inline-flex}.delete-node-descendants-list{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg);font-size:var(--font-size-sm);max-height:160px;overflow-y:auto}.delete-node-descendants-list li{padding:var(--spacing-xs) 0}.modal-actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.selectable-list{flex-direction:column;flex:1;min-height:0;display:flex}.selectable-list__items{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.selectable-list__item{padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;border-bottom:1px solid var(--color-border-light);-webkit-user-select:none;user-select:none;font-size:var(--font-size-xs);justify-content:space-between;align-items:center;transition:background .1s;display:flex}.selectable-list__item:last-child{border-bottom:none}.selectable-list__item:hover{background:var(--color-hover)}.selectable-list__item--selected{background:var(--color-primary-alpha,#1aa3db1f)}.selectable-list__item--selected:hover{background:var(--color-primary-alpha,#1aa3db2e)}.selectable-list__item-label{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.selectable-list__item-secondary{color:var(--color-text-muted);margin-left:var(--spacing-sm);font-size:10px;font-family:var(--font-mono,monospace);flex-shrink:0}.selectable-list__status{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.selectable-list__status--error{color:var(--color-error)}.selectable-list__item--drop-above{box-shadow:inset 0 2px 0 0 var(--color-primary)}.selectable-list__item--drop-below{box-shadow:inset 0 -2px 0 0 var(--color-primary)}.selectable-list__item[draggable=true]{cursor:grab}.selectable-list__item[draggable=true]:active{cursor:grabbing}.selectable-list__drop-zone--active{background:var(--color-primary-alpha,#1aa3db14);border:2px dashed var(--color-primary);border-radius:var(--radius-sm)}.add-source-dialog{height:520px}.add-source-dialog .modal-form{flex-direction:column;flex:1;min-height:0;display:flex}.add-source-controls{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border-light);flex-shrink:0}.add-source-controls .form-group:last-child{margin-bottom:0}.add-source-results{flex:1;min-height:0;overflow-y:auto}.add-source-results .selectable-list__item{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.typeahead-wrapper{position:relative}.typeahead-clear{right:var(--spacing-sm);font-size:var(--font-size-xl);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.typeahead-clear:hover{color:var(--color-text-primary)}.typeahead-dropdown{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);max-height:200px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.typeahead-option{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);cursor:pointer;color:var(--color-text-primary)}.typeahead-option:hover{background:var(--color-bg-cool)}.typeahead{width:100%;position:relative}.typeahead__input-wrapper{align-items:center;display:flex;position:relative}.typeahead__input-wrapper--multi{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);cursor:text;transition:border-color var(--transition-fast) var(--easing-standard);flex-wrap:wrap}.typeahead__input-wrapper--multi:focus-within{border-color:var(--color-border-focus)}.typeahead__icon{left:var(--spacing-md);width:18px;height:18px;color:var(--color-text-muted);pointer-events:none;position:absolute}.typeahead__input-wrapper--multi .typeahead__icon{flex-shrink:0;position:static}.typeahead__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:calc(var(--spacing-md) * 2 + 18px);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-fast) var(--easing-standard);box-sizing:border-box}.typeahead__input--multi{min-width:80px;padding:2px var(--spacing-xs);background:0 0;border:none;flex:1}.typeahead__input--multi:focus{outline:none}.typeahead__input--has-value{padding-right:calc(var(--spacing-md) * 2 + 18px)}.typeahead__input:focus{border-color:var(--color-border-focus);outline:none}.typeahead__input:disabled{background:var(--color-bg-secondary);color:var(--color-text-muted);cursor:not-allowed}.typeahead__input--error,.typeahead__input--error:focus{border-color:var(--color-error)}.typeahead__clear{right:var(--spacing-md);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast) var(--easing-smooth);background:0 0;border:none;align-items:center;padding:0;display:flex;position:absolute}.typeahead__clear:hover{color:var(--color-text-primary)}.typeahead__clear-icon{width:18px;height:18px}.typeahead__chip{padding:2px var(--spacing-sm);background:var(--color-bg-cool);border:1px solid var(--color-border-light);border-radius:var(--radius-xs);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.typeahead__chip-remove{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;line-height:1;display:flex}.typeahead__chip-remove:hover{color:var(--color-error)}.typeahead__chip-remove-icon{width:14px;height:14px}.typeahead__dropdown{top:calc(100% + var(--spacing-xs));background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:300px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);position:absolute;left:0;right:0;overflow:hidden}.typeahead__hint{padding:var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.typeahead__options{max-height:300px;overflow-y:auto}.typeahead__option{width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family);text-align:left;cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth);background:0 0;border:none}.typeahead__option:hover,.typeahead__option--highlighted{background:var(--color-bg-hover)}.typeahead__option-subtext{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:1px;line-height:1.3;display:block}.typeahead__option--disabled{cursor:default;opacity:.5;justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.typeahead__option--disabled:hover,.typeahead__option--disabled.typeahead__option--highlighted{background:0 0}.typeahead__option-check{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0}.empty-state{align-items:center;gap:var(--spacing-md);padding:var(--spacing-3xl) var(--spacing-lg);text-align:center;flex-direction:column;display:flex}.empty-state h3{margin:0}.empty-state p{color:var(--color-text-secondary);margin:0}.success-body{align-items:center;gap:var(--spacing-lg);flex-direction:column;display:flex}.success-icon{color:var(--color-success)}.warning-box{border:1px solid var(--color-success);border-radius:var(--radius-sm);width:100%;padding:var(--spacing-md);background:color-mix(in srgb, var(--color-success) 8%, transparent)}.warning-box strong{font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);display:block}.warning-box p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.detail-panel{border:1px solid var(--color-border-light);border-radius:var(--radius-sm);width:100%;padding:var(--spacing-md);gap:var(--spacing-md);flex-direction:column;display:flex}.detail-row{gap:var(--spacing-xs);flex-direction:column;display:flex}.detail-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:var(--font-size-sm);color:var(--color-text-primary)}.copy-row{gap:var(--spacing-sm);align-items:center;display:flex}.copy-value-box{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background:var(--color-bg-secondary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.checkbox-row{align-items:center;gap:var(--spacing-sm);width:100%;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);display:flex}.checkbox-row input[type=checkbox]{cursor:pointer;width:16px;height:16px}.admin-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-md);transition:box-shadow var(--transition-fast) var(--easing-standard);flex-direction:column;display:flex}.admin-card:hover{box-shadow:var(--shadow-md)}.admin-card--inactive{opacity:.6}.admin-card--clickable{cursor:pointer}.card-header{align-items:flex-start;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs);flex-direction:column;display:flex}.card-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.card-tags{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.card-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.card-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);align-items:center;gap:var(--spacing-xs);display:flex}.card-meta-label{font-weight:var(--font-weight-medium)}.card-status{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:auto;margin-bottom:var(--spacing-sm);display:flex}.status-dot{border-radius:var(--radius-full);width:8px;height:8px}.status-active{background:var(--color-success)}.status-inactive{background:var(--color-text-muted)}.card-actions{justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border-light);display:flex}.admin-card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.toast{background-color:var(--color-bg-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:4px solid var(--color-border);cursor:pointer;transition:transform var(--transition-fast) var(--easing-smooth), box-shadow var(--transition-fast) var(--easing-smooth)}.toast:hover{box-shadow:var(--shadow-xl)}.toast__content{padding:var(--spacing-md)}.toast__icon{border-radius:var(--radius-full);width:24px;height:24px;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-inverse);background-color:var(--color-border)}.toast__message{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:var(--line-height-normal)}.toast__close{border-radius:var(--radius-sm);width:24px;height:24px;font-size:var(--font-size-xs);color:var(--color-text-muted);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth), color var(--transition-fast) var(--easing-smooth);background:0 0;border:none}.toast__close:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.toast__progress{background-color:var(--color-border);height:3px;animation:linear forwards toast-progress}@keyframes toast-progress{0%{width:100%}to{width:0%}}.toast--success{border-left-color:var(--color-success)}.toast--success .toast__icon,.toast--success .toast__progress{background-color:var(--color-success)}.toast--error{border-left-color:var(--color-error)}.toast--error .toast__icon,.toast--error .toast__progress{background-color:var(--color-error)}.toast--warning{border-left-color:var(--color-warning)}.toast--warning .toast__icon,.toast--warning .toast__progress{background-color:var(--color-warning)}.toast--info{border-left-color:var(--color-info)}.toast--info .toast__icon,.toast--info .toast__progress{background-color:var(--color-info)}@media (width<=768px){.page-header{gap:var(--spacing-md);flex-direction:column}.filter-bar{gap:var(--spacing-sm);padding:var(--spacing-sm)}.filter-search{flex:100%;min-width:0}.filter-group{flex:1 1 calc(50% - var(--spacing-sm));min-width:0}.modal-dialog{width:95%;max-height:90vh}}.rb-dry-run-inline{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);display:flex}.rb-dry-run-loading{color:var(--color-text-muted);animation:1.2s ease-in-out infinite rb-dry-run-pulse}.rb-dry-run-loading:after{content:"…"}@keyframes rb-dry-run-pulse{0%,to{opacity:1}50%{opacity:.4}}.rb-dry-run-valid{color:var(--color-success)}.rb-dry-run-columns{color:var(--color-text-secondary)}.rb-dry-run-estimate{color:var(--color-info)}.rb-dry-run-error{color:var(--color-warning);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rb-consent-btn{margin-left:var(--spacing-sm);flex-shrink:0}.rb-dry-run-denied{color:var(--color-warning);cursor:help;margin-left:var(--spacing-xs);align-items:center;display:inline-flex}.rb-dry-run-denied__icon{width:16px;height:16px}.rb-dry-run-sep{color:var(--color-text-muted)}.logged-out-overlay{background:var(--overlay-bg-heavy);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.logged-out-dialog{background:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);text-align:left;min-width:320px;max-width:400px}.logged-out-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.logged-out-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-lg)}.logged-out-actions{justify-content:flex-end;gap:var(--spacing-sm);display:flex}.consent-overlay{background:var(--overlay-bg-heavy);z-index:var(--z-modal);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.consent-dialog{background:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);text-align:left;min-width:320px;max-width:480px}.consent-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.consent-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-md);line-height:var(--line-height-relaxed)}.consent-scope-list{margin:0 0 var(--spacing-lg);gap:var(--spacing-xs);flex-direction:column;padding:0;list-style:none;display:flex}.consent-scope-item{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.consent-scope-item strong{color:var(--color-text-primary)}.consent-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0 0 var(--spacing-md);line-height:var(--line-height-relaxed)}.consent-actions{justify-content:flex-end;gap:var(--spacing-sm);display:flex}.mdx-subtotal-row{background:var(--color-bg-secondary)}.mdx-total-row{background:var(--color-bg-secondary);border-top:2px solid var(--color-border)}.mdx-empty-label{color:var(--color-text-muted);font-style:italic}.view-edit-toolbar{z-index:var(--z-toolbar);justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:var(--edit-toolbar-bg);color:var(--edit-toolbar-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.view-edit-toolbar__actions{gap:var(--spacing-sm);display:flex}.view-edit-toolbar__btn{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth);border:none}.view-edit-toolbar__btn:disabled{opacity:.6;cursor:not-allowed}.view-edit-toolbar__btn--cancel{color:var(--edit-toolbar-text);border:1px solid var(--edit-toolbar-btn-border);background:0 0}.view-edit-toolbar__btn--cancel:hover:not(:disabled){background:var(--edit-toolbar-btn-hover-bg)}.view-edit-toolbar__btn--save{background:var(--color-success);color:var(--color-success-on)}.view-edit-toolbar__btn--save:hover:not(:disabled){filter:brightness(1.1)}:is(.v-card:has(.view-edit-shell),.v-card:has(.node-renderer__layout-editing),.v-card__body:has(.view-edit-shell),.v-card__body:has(.node-renderer__layout-editing)){overflow:visible!important}.view-edit-fab{bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-dropdown);border-radius:var(--radius-full);background:var(--btn-primary-bg);width:48px;height:48px;color:var(--btn-primary-text);box-shadow:var(--shadow-lg);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth), transform var(--transition-fast) var(--easing-smooth), right var(--transition-normal) var(--easing-smooth);border:none;justify-content:center;align-items:center;display:flex;position:fixed}.view-edit-fab:hover{background:var(--btn-primary-hover-bg);transform:scale(1.08)}@media (width>=840px){.app-body--ai-open .view-edit-fab{right:calc(var(--ai-panel-width) + var(--spacing-lg))}}.a11y-badge{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--edit-toolbar-btn-border);border-radius:var(--radius-sm);color:var(--edit-toolbar-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth);white-space:nowrap;background:0 0}.a11y-badge:hover{background:var(--edit-toolbar-btn-hover-bg)}.a11y-badge--good:before,.a11y-badge--poor:before{border-radius:var(--radius-full);width:8px;height:8px;margin-right:var(--spacing-xs);content:"";vertical-align:middle;display:inline-block}.a11y-badge--good:before{background:var(--a11y-good)}.a11y-badge--poor:before{background:var(--a11y-poor)}.a11y-badge--scanning{opacity:.7}.a11y-report{top:var(--header-height);width:400px;max-width:100vw;z-index:var(--z-dropdown);background:var(--color-bg-primary);border-left:1px solid var(--color-border);box-shadow:var(--shadow-xl);padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;display:flex;position:fixed;bottom:0;right:0;overflow-y:auto}.a11y-report__header{justify-content:space-between;align-items:center;display:flex}.a11y-report__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.a11y-report__rescan{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth)}.a11y-report__rescan:hover:not(:disabled){background:var(--color-bg-hover)}.a11y-report__rescan:disabled{opacity:.6;cursor:not-allowed}.a11y-report__score-section{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) 0;flex-direction:column;display:flex}.a11y-report__score-ring{border-radius:var(--radius-full);border:4px solid var(--color-border);width:96px;height:96px;transition:border-color var(--transition-normal) var(--easing-smooth);justify-content:center;align-items:center;display:flex}.a11y-report__score-ring.a11y-report__score--good{border-color:var(--a11y-good)}.a11y-report__score-ring.a11y-report__score--warning{border-color:var(--a11y-warning)}.a11y-report__score-ring.a11y-report__score--poor{border-color:var(--a11y-poor)}.a11y-report__score-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.a11y-report__score-value--loading{color:var(--color-text-muted)}.a11y-report__score-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:0}.a11y-report__violations{gap:var(--spacing-sm);flex-direction:column;display:flex}.a11y-report__section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.a11y-report__list{gap:var(--spacing-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.a11y-report__item{border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.a11y-report__item-header{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth);border:none;display:flex}.a11y-report__item-header:hover{background:var(--color-bg-hover)}.a11y-report__impact{padding:1px var(--spacing-xs);border-radius:var(--radius-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.02em;flex-shrink:0}.a11y-report__impact--critical{background:var(--badge-error-bg);color:var(--badge-error-text)}.a11y-report__impact--serious{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.a11y-report__impact--moderate{background:var(--badge-info-bg);color:var(--badge-info-text)}.a11y-report__impact--minor{background:var(--color-bg-secondary);color:var(--color-text-muted)}.a11y-report__rule-desc{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.a11y-report__node-count{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0}.a11y-report__chevron{transition:transform var(--transition-fast) var(--easing-smooth);flex-shrink:0;display:flex}.a11y-report__chevron--open{transform:rotate(180deg)}.a11y-report__detail{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);gap:var(--spacing-sm);flex-direction:column;display:flex}.a11y-report__help{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.a11y-report__help-link{font-size:var(--font-size-sm);color:var(--link-color);text-decoration:none}.a11y-report__help-link:hover{color:var(--link-hover-color);text-decoration:underline}.a11y-report__nodes{gap:var(--spacing-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.a11y-report__node{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth)}.a11y-report__node:hover{background:var(--color-bg-hover)}.a11y-report__selector{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);word-break:break-all;display:block}.a11y-report__failure{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:pre-line}.a11y-report__clean{padding:var(--spacing-xl);text-align:center;color:var(--color-success);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}[data-a11y-highlight]{outline-offset:2px;outline:3px solid var(--color-error)!important;box-shadow:0 0 0 6px #dc262633!important}.prop-grid{gap:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);grid-template-columns:auto 1fr;align-items:center;display:grid}.prop-grid__label{color:var(--color-text-muted);white-space:nowrap;font-weight:500}.prop-grid__value{color:var(--color-text-primary);word-break:break-all}.prop-grid__value--full{grid-column:1/-1}.prop-grid__separator{border:none;border-top:1px solid var(--color-border-light);margin:var(--spacing-xs) 0;grid-column:1/-1}.prop-grid__section-title{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--spacing-xs);grid-column:1/-1;font-weight:600}.role-badge{border-radius:var(--radius-sm);text-transform:uppercase;white-space:nowrap;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.role-badge--dim{background:var(--color-bg-cool);color:var(--accent-color)}.role-badge--msr{background:var(--color-bg-warm);color:var(--color-warning)}.role-badge--time{color:var(--color-accent-purple);background:#8b5cf61a}.resize-handle{cursor:col-resize;width:4px;transition:background-color var(--transition-fast);background-color:#0000;flex-shrink:0;position:relative}.resize-handle:hover,.resize-handle--active{background-color:var(--resize-handle-active)}.resize-handle:before{content:"";position:absolute;inset:0 -4px}.spinner--sm{border-width:2px;width:24px;height:24px}.spinner--inline{border-width:2px;width:16px;height:16px}.icon-picker{width:100%;position:relative}.icon-picker__trigger{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast) var(--easing-smooth);box-sizing:border-box;text-align:left;min-height:38px;display:flex}.icon-picker__trigger:hover{border-color:var(--color-border-focus)}.icon-picker__preview{width:20px;height:20px;color:var(--accent-color);flex-shrink:0}.icon-picker__selected-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.icon-picker__clear{border-radius:var(--radius-xs);cursor:pointer;color:var(--color-text-muted);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.icon-picker__clear:hover{color:var(--color-error);background:var(--color-bg-hover)}.icon-picker__clear-icon{width:16px;height:16px}.icon-picker__placeholder{color:var(--color-text-muted)}.icon-picker__dropdown{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.icon-picker__search{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);display:flex}.icon-picker__search-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}.icon-picker__search-input{font-size:var(--font-size-sm);color:var(--color-text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1}.icon-picker__search-input::placeholder{color:var(--color-text-muted)}.icon-picker__count{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted);border-bottom:1px solid var(--color-border-light)}.icon-picker__grid{padding:var(--spacing-xs);grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:2px;max-height:320px;display:grid;overflow-y:auto}.icon-picker__item{padding:var(--spacing-sm) var(--spacing-xs);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast) var(--easing-smooth);background:0 0;border:2px solid #0000;flex-direction:column;align-items:center;gap:4px;display:flex}.icon-picker__item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.icon-picker__item--selected{border-color:var(--accent-color);background:var(--color-bg-secondary);color:var(--accent-color)}.icon-picker__item-icon{width:24px;height:24px}.icon-picker__item-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;line-height:1.2;overflow:hidden}.icon-picker__empty{padding:var(--spacing-xl) var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);grid-column:1/-1}.command-palette__overlay{background:var(--overlay-bg);z-index:var(--z-modal);justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.command-palette{background:var(--color-bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--color-border-light);width:90%;max-width:560px;overflow:hidden}.command-palette__input-wrapper{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);display:flex}.command-palette__search-icon{width:20px;height:20px;color:var(--color-text-muted);flex-shrink:0}.command-palette__input{font-size:var(--font-size-base);color:var(--color-text-primary);padding:var(--spacing-sm) 0;font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1}.command-palette__input::placeholder{color:var(--color-text-muted)}.command-palette__kbd{font-size:var(--font-size-xs);font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xs);flex-shrink:0;padding:2px 6px;line-height:1}.command-palette__close-btn{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.command-palette__close-btn:hover{color:var(--color-text);background:var(--color-bg-hover)}.command-palette__close-icon{width:16px;height:16px}.command-palette__results{max-height:360px;padding:var(--spacing-xs) 0;overflow-y:auto}.command-palette__empty{padding:var(--spacing-xl) var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.command-palette__group-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-xs)}.command-palette__item{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family);cursor:pointer;text-align:left;transition:background var(--transition-fast) var(--easing-smooth);background:0 0;border:none;display:flex}.command-palette__item:hover,.command-palette__item--active{background:var(--color-bg-hover)}.command-palette__item-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}.command-palette__item--active .command-palette__item-icon{color:var(--accent-color)}.command-palette__item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.command-palette__item-path{font-size:var(--font-size-xs);color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:200px;overflow:hidden}.command-palette-fade-enter-active,.command-palette-fade-leave-active{transition:opacity var(--transition-fast) var(--easing-smooth)}.command-palette-fade-enter-from,.command-palette-fade-leave-to{opacity:0}.command-palette-fade-enter-active .command-palette{transition:transform var(--transition-fast) var(--easing-standard)}.command-palette-fade-enter-from .command-palette{transform:scale(.95)translateY(-10px)}.command-palette__searching{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;display:flex}@keyframes command-palette-dots{0%,20%{opacity:0}50%{opacity:1}to{opacity:0}}.command-palette__searching:after{content:"";border:2px solid var(--color-text-muted);border-top-color:#0000;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite command-palette-spinner;display:inline-block}@keyframes command-palette-spinner{to{transform:rotate(360deg)}}.env-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md)}.env-card__title{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-light);display:flex}.env-card__icon{width:20px;height:20px;color:var(--color-text-muted);flex-shrink:0}.env-card__description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--spacing-sm)}.env-card__empty{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.env-grid{flex-direction:column;display:flex}.env-row{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.env-row:last-child{border-bottom:none}.env-row__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);flex:1;min-width:0}.env-row__value{font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:right;flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.col-select-dialog{flex-direction:column;max-width:860px;height:80vh;display:flex}.col-select-toolbar{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}.col-select-toolbar__load{flex:1;min-width:180px}.col-select-toolbar__save{align-items:center;gap:var(--spacing-sm);display:flex}.col-select-toolbar__save-input{width:180px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family)}.col-select-toolbar__save-input:focus{border-color:var(--color-input-border-focus,var(--color-border-focus));outline:none}.col-select-toolbar__name-error{font-size:var(--font-size-xs);color:var(--color-error)}.col-select-body{flex:1;align-items:stretch;gap:0;min-height:0;display:flex;padding:0!important}.col-select-panel{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.col-select-panel__title{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);font-weight:600}.col-select-panel .selectable-list{flex:1;overflow-y:auto}.col-select-actions{justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-sm);border-left:1px solid var(--color-border-light);border-right:1px solid var(--color-border-light);flex-direction:column;display:flex}.col-select-loading,.col-select-error{padding:var(--spacing-xl);color:var(--color-text-muted);font-size:var(--font-size-sm);flex:1;justify-content:center;align-items:center;display:flex}.col-select-error{color:var(--color-error)}.col-collection-picker{width:100%;position:relative}.col-collection-picker__input-wrapper{align-items:center;display:flex;position:relative}.col-collection-picker__icon{left:var(--spacing-sm);width:16px;height:16px;color:var(--color-text-muted);pointer-events:none;position:absolute}.col-collection-picker__input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);padding-left:calc(var(--spacing-sm) * 2 + 16px);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--transition-fast) var(--easing-standard);box-sizing:border-box}.col-collection-picker__input--has-value{padding-right:calc(var(--spacing-sm) * 2 + 16px)}.col-collection-picker__input:focus{border-color:var(--color-input-border-focus,var(--color-border-focus));outline:none}.col-collection-picker__clear{right:var(--spacing-sm);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast) var(--easing-smooth);background:0 0;border:none;align-items:center;padding:0;display:flex;position:absolute}.col-collection-picker__clear:hover{color:var(--color-text-primary)}.col-collection-picker__clear-icon{width:16px;height:16px}.col-collection-picker__dropdown{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:240px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.col-collection-picker__hint{padding:var(--spacing-sm) var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.col-collection-picker__options{max-height:240px;overflow-y:auto}.col-collection-picker__option{padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast) var(--easing-smooth);justify-content:space-between;align-items:center;display:flex}.col-collection-picker__option:hover,.col-collection-picker__option--highlighted{background:var(--color-bg-hover)}.col-collection-picker__option-info{align-items:baseline;gap:var(--spacing-sm);flex:1;min-width:0;display:flex}.col-collection-picker__option-name{color:var(--color-text-primary);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.col-collection-picker__option-count{color:var(--color-text-muted);flex-shrink:0;font-size:10px}.col-collection-picker__delete{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast) var(--easing-smooth), background-color var(--transition-fast) var(--easing-smooth);background:0 0;border:none;align-items:center;padding:2px;display:flex}.col-collection-picker__delete:hover,.col-collection-picker__delete--confirm{color:var(--color-error);background:var(--color-error-bg,#ef44441a)}.col-collection-picker__delete-icon{width:14px;height:14px}.notification-panel{top:var(--header-height);right:var(--spacing-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);width:340px;max-height:440px;box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);flex-direction:column;display:flex;position:fixed;overflow:hidden}.notification-panel__header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.notification-panel__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.notification-panel__clear{padding:var(--spacing-xs)}.notification-panel__clear-icon{width:16px;height:16px;color:var(--color-text-muted)}.notification-panel__body{flex:1;overflow-y:auto}.notification-panel__empty{padding:var(--spacing-xl) var(--spacing-md);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.notification-item{align-items:flex-start;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;border-bottom:1px solid var(--color-border-light);text-align:left;cursor:default;font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:background-color var(--transition-fast) var(--easing-smooth);background:0 0;display:flex}.notification-item--clickable{cursor:pointer}.notification-item--clickable:hover{background-color:var(--color-bg-hover)}.notification-item__dot{border-radius:var(--radius-full);background-color:var(--color-info);flex-shrink:0;width:8px;height:8px;margin-top:5px}.notification-item--success .notification-item__dot{background-color:var(--color-success)}.notification-item--warning .notification-item__dot{background-color:var(--color-warning)}.notification-item--error .notification-item__dot{background-color:var(--color-error)}.notification-item__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-item__external-icon{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0;margin-top:2px}.notification-item__title{font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);word-break:break-word}.notification-item__message{color:var(--color-text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-normal);word-break:break-word}.notification-item__meta{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.notification-item__plugin{background:var(--color-bg-secondary);border-radius:var(--radius-xs);padding:1px 6px}.progress-bar{border-radius:var(--radius-xs);appearance:none;width:80px;height:6px;overflow:hidden}.progress-bar::-webkit-progress-bar{background:var(--color-bg-secondary);border-radius:var(--radius-xs)}.progress-bar::-webkit-progress-value{background:var(--color-primary);border-radius:var(--radius-xs);transition:width .3s}.progress-bar::-moz-progress-bar{background:var(--color-primary);border-radius:var(--radius-xs)}.info-banner{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--color-info-bg,var(--color-bg-secondary));color:var(--color-info-text,var(--color-text));border:1px solid var(--color-info-border,var(--color-border));display:flex}.info-banner--warning{background:var(--color-warning-bg,#fef3c7);color:var(--color-warning-text,#92400e);border-color:var(--color-warning-border,#fde68a)}.info-banner__icon{flex-shrink:0;width:18px;height:18px}.info-banner__dismiss{font-size:var(--font-size-xs);color:inherit;opacity:.7;cursor:pointer;margin-left:auto;text-decoration:underline}.info-banner__dismiss:hover{opacity:1}.profile-card{align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-surface-raised);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex}.profile-card__avatar{border-radius:var(--radius-full);background:var(--color-primary);width:72px;height:72px;color:var(--color-primary-on);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.profile-card__picture{object-fit:cover;width:100%;height:100%}.profile-card__info{gap:var(--spacing-xs);flex-direction:column;min-width:0;display:flex}.profile-card__name{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:var(--line-height-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-card__email{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-card__badges{gap:var(--spacing-xs);margin-top:var(--spacing-xs);display:flex}.profile-section{gap:var(--spacing-md);flex-direction:column;display:flex}.profile-section__title{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);display:flex}.profile-section__icon{width:20px;height:20px;color:var(--color-text-muted)}.consent-card{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface-raised);border:1px solid var(--color-border-light);border-radius:var(--radius-md);gap:var(--spacing-sm);flex-direction:column;display:flex}.consent-card__status{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex}.consent-card__status--active{color:var(--color-success)}.consent-card__status--inactive{color:var(--color-text-muted)}.consent-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.consent-dot--active{background:var(--color-success)}.consent-dot--inactive{background:var(--color-text-muted)}.consent-card__email{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.consent-card__email strong{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.consent-card__hint{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-relaxed)}.consent-card .btn{margin-top:var(--spacing-xs);align-self:flex-start}.breadcrumb-nav{margin-bottom:var(--spacing-md)}.breadcrumb-nav__list{align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumb-nav__item{align-items:center;gap:var(--spacing-xs);display:flex}.breadcrumb-nav__separator{width:var(--font-size-sm);height:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.breadcrumb-nav__link{padding:2px var(--spacing-xs);font-size:var(--font-size-sm);color:var(--link-color);cursor:pointer;border-radius:var(--radius-xs);transition:all var(--transition-fast) var(--easing-smooth);background:0 0;border:none;font-family:inherit;text-decoration:none}.breadcrumb-nav__link:hover{color:var(--link-hover-color);background-color:var(--color-bg-secondary)}.breadcrumb-nav__current{font-size:var(--font-size-sm);color:var(--accent-color);font-weight:var(--font-weight-medium)}.shimmer{background:linear-gradient(90deg, var(--color-bg-secondary) 25%, var(--color-bg-hover,#0000000a) 50%, var(--color-bg-secondary) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}html[data-easter-egg] .ace_editor{text-transform:none;text-shadow:none;background:var(--color-code-bg)!important;color:var(--color-code-text)!important}html[data-easter-egg] .ace_gutter{background:var(--color-bg-secondary)!important;color:var(--color-text-muted)!important}html[data-easter-egg] .ace_gutter-active-line{background:var(--color-active)!important}html[data-easter-egg] .ace_marker-layer .ace_active-line{background:var(--color-hover)!important}html[data-easter-egg] .ace_marker-layer .ace_selection{background:var(--color-selected)!important}html[data-easter-egg] .ace_cursor{color:var(--color-text-primary)!important}html[data-easter-egg] .ace_content,html[data-easter-egg] .ace_text-layer,html[data-easter-egg] .ace_identifier{color:var(--color-code-text)!important}html[data-easter-egg] .ace_keyword,html[data-easter-egg] .ace_keyword.ace_operator{color:var(--color-primary)!important}html[data-easter-egg] .ace_string{color:var(--color-success)!important}html[data-easter-egg] .ace_constant.ace_numeric,html[data-easter-egg] .ace_constant.ace_language{color:var(--color-accent-yellow)!important}html[data-easter-egg] .ace_comment{font-style:italic;color:var(--color-text-muted)!important}html[data-easter-egg] .ace_support.ace_function,html[data-easter-egg] .ace_paren,html[data-easter-egg] .ace_punctuation{color:var(--color-text-secondary)!important}html[data-easter-egg] .ace_placeholder{color:var(--color-input-placeholder)!important}
