:root,:root[data-theme=light]{color-scheme:light;--surface-page: #e4d9c8;--surface-muted: #d8ccb8;--surface-card: #efe6d8;--text-primary: #3a342c;--text-secondary: #5c5348;--text-muted: #8a7f70;--border-subtle: rgba(120, 105, 85, .28);--border-strong: rgba(100, 88, 70, .4);--accent-base: #6d8a6a;--accent-hover: #587456;--accent-on: #f7f1e6;--accent-fill: #e2ebd9;--accent-border: #a8bba0;--accent-glow-c: rgba(109, 138, 106, .2);--accent-wash-weak: rgba(109, 138, 106, .12);--accent-wash-strong: rgba(109, 138, 106, .22);--sheet-header: #e2d6c4;--sheet-header-ink: #3a342c;--sheet-corner: #dccfb8;--sheet-cell: #efe6d8;--sheet-grid: #d0c3ae;--sheet-select: #dce6d4;--state-attention: #c4a06a;--state-attention-fill: #f3e8d4;--state-blocked: #c47878;--state-blocked-fill: #f3e0e0;--state-applied: #6d8a6a;--state-applied-fill: #e2ebd9;--diff-before-fill: #f3e0e0;--diff-before-ink: #a85c5c;--diff-after-fill: #e2ebd9;--diff-after-ink: #4a6b48;--shadow-sm: 0 1px 2px rgba(90, 75, 55, .06), 0 1px 3px rgba(90, 75, 55, .05);--shadow: 0 10px 28px rgba(90, 75, 55, .08), 0 2px 8px rgba(90, 75, 55, .05);--shadow-lg: 0 22px 50px rgba(90, 75, 55, .12);--chrome-glass: rgba(239, 230, 216, .55);--chrome-glass-strong: rgba(239, 230, 216, .88);--chart-series-1: #2f7d32;--chart-series-2: #1f6fd0;--chart-series-3: #c8503c;--chart-series-4: #7b46c9;--chart-series-5: #a06a12;--chart-series-6: #c93f88;--chart-grid: var(--border-subtle);--chart-axis: var(--text-muted)}:root[data-theme=dark]{color-scheme:dark;--surface-page: #12141a;--surface-muted: #1a1d26;--surface-card: #21252f;--text-primary: #f0f2f6;--text-secondary: #c8ceda;--text-muted: #9aa3b2;--border-subtle: #2e3440;--border-strong: #454d5e;--accent-base: #6b9eff;--accent-hover: #8fb4ff;--accent-on: #0c1018;--accent-fill: rgba(107, 158, 255, .14);--accent-border: rgba(107, 158, 255, .36);--accent-glow-c: rgba(107, 158, 255, .18);--accent-wash-weak: rgba(107, 158, 255, .08);--accent-wash-strong: rgba(107, 158, 255, .22);--sheet-header: #3a404c;--sheet-header-ink: #e8ecf4;--sheet-corner: #1a1d26;--sheet-cell: #21252f;--sheet-grid: #2e3440;--sheet-select: rgba(107, 158, 255, .16);--state-attention: #e8b84a;--state-attention-fill: rgba(232, 184, 74, .12);--state-blocked: #f07178;--state-blocked-fill: rgba(240, 113, 120, .12);--state-applied: #6ed9a8;--state-applied-fill: rgba(94, 201, 146, .14);--diff-before-fill: rgba(240, 113, 120, .12);--diff-before-ink: #ff8a90;--diff-after-fill: rgba(94, 201, 146, .14);--diff-after-ink: #6ed9a8;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .28), 0 1px 3px rgba(0, 0, 0, .2);--shadow: 0 8px 24px rgba(0, 0, 0, .35), 0 2px 6px rgba(0, 0, 0, .22);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .45);--chrome-glass: rgba(24, 28, 36, .55);--chrome-glass-strong: rgba(36, 42, 54, .85);--chart-series-1: #3f9c48;--chart-series-2: #4a89d8;--chart-series-3: #d9705a;--chart-series-4: #9670d4;--chart-series-5: #b5851f;--chart-series-6: #d65596;--chart-grid: var(--border-subtle);--chart-axis: var(--text-muted)}:root{--bg: var(--surface-page);--bg-soft: var(--surface-muted);--surface: var(--surface-card);--ink: var(--text-primary);--ink-2: var(--text-secondary);--muted: var(--text-muted);--line: var(--border-subtle);--line-strong: var(--border-strong);--accent: var(--accent-base);--accent-strong: var(--accent-hover);--accent-ink: var(--accent-on);--accent-soft: var(--accent-fill);--accent-line: var(--accent-border);--accent-glow: var(--accent-glow-c);--danger: var(--state-blocked);--danger-soft: var(--state-blocked-fill);--warn: var(--state-attention);--warn-soft: var(--state-attention-fill);--dirty-bg: var(--diff-before-fill);--dirty-ink: var(--diff-before-ink);--clean-bg: var(--diff-after-fill);--clean-ink: var(--diff-after-ink)}:root{--sans: "Segoe UI", "Source Sans 3", ui-sans-serif, system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-xs: .72rem;--text-sm: .82rem;--text-base: 1rem;--text-lg: 1.15rem;--text-xl: 1.5rem;--text-2xl: 2rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--z-base: 1;--z-cell: 50;--z-sticky: 100;--z-chrome: 200;--z-popover: 300;--z-modal: 400;--z-toast: 500;--r-xs: 8px;--r-sm: 10px;--r: 14px;--r-lg: 20px;--r-pill: 999px}body.desktop-app{--r-xs: 4px;--r-sm: 6px;--r: 8px;--r-lg: 10px;font-size:13px}.cv-dropdown{position:fixed;z-index:var(--z-popover);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:8px;padding:6px;box-shadow:0 10px 28px #0000002e;color:var(--text-primary);animation:cvDdFadeIn .1s ease-out;box-sizing:border-box;overflow:hidden auto;max-height:420px;scrollbar-width:none;-ms-overflow-style:none}.cv-dropdown::-webkit-scrollbar{display:none}.cv-dropdown.cv-dd-flush-top{border-top-left-radius:0}@keyframes cvDdFadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.cv-dd-group{display:flex;flex-direction:column;gap:1px}.cv-dd-item{display:block;width:100%;text-align:left;font-size:13px;font-weight:500;padding:6px 10px;border-radius:0;background:transparent;color:var(--text-primary);border:none;cursor:pointer;-webkit-user-select:none;user-select:none;text-decoration:none;transition:color .1s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-dd-item:hover{background:transparent;color:var(--text-primary);text-decoration:underline;text-underline-offset:3px}.cv-dd-item.cv-dd-has-shortcut{display:flex;align-items:center;justify-content:space-between;gap:16px}.cv-dd-item-label{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-dd-shortcut{font-size:11px;font-weight:500;color:var(--text-muted);opacity:.7;font-family:var(--mono, monospace);flex-shrink:0}.cv-dd-item.is-disabled,.cv-dd-item:disabled{color:var(--text-muted);opacity:.55;cursor:not-allowed}.cv-dd-item.is-disabled:hover,.cv-dd-item:disabled:hover{background:transparent;color:var(--text-muted);text-decoration:none}.cv-dd-submenu-trigger.is-disabled .cv-dd-submenu-chevron{opacity:.4}.cv-dd-submenu-trigger{display:flex!important;align-items:center;justify-content:space-between;gap:4px;overflow:visible;text-overflow:unset}.cv-dd-submenu-trigger:hover,.cv-dd-submenu-trigger.is-open{background:var(--surface-muted);text-decoration:none}.cv-dd-submenu-label{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-dd-submenu-chevron{flex-shrink:0;font-size:14px;line-height:1;color:var(--text-muted);transition:color .1s ease}.cv-dd-submenu-trigger:hover .cv-dd-submenu-chevron,.cv-dd-submenu-trigger.is-open .cv-dd-submenu-chevron{color:var(--text-primary)}.cv-dd-submenu-panel{position:fixed;z-index:calc(var(--z-popover) + 10);min-width:180px;max-height:min(420px,70vh);overflow-y:auto;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:8px;padding:6px;box-shadow:0 10px 28px #0000002e;display:flex;flex-direction:column;gap:1px;animation:cvDdFadeIn .08s ease-out;scrollbar-width:none}.cv-dd-submenu-panel::-webkit-scrollbar{display:none}.cv-dd-submenu-panel:before{content:"";position:absolute;top:0;bottom:0;left:-6px;width:6px}.cv-dd-submenu-panel.is-flipped:before{left:auto;right:-6px}.cv-dd-item.primary{background:var(--surface-muted);border:1px solid var(--border-strong);border-radius:6px;font-weight:600;text-decoration:none;margin:2px 0}.cv-dd-item.primary:hover{background:var(--text-primary);border-color:var(--text-primary);color:var(--surface-card);text-decoration:none}.cv-dd-item.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:6px;font-weight:500;text-decoration:none;margin:2px 0}.cv-dd-item.secondary:hover{background:var(--surface-muted);color:var(--text-primary);text-decoration:none}.cv-dd-item.danger{background:transparent;color:var(--state-blocked, #a03020);border:none;text-decoration:none}.cv-dd-item.danger:hover{text-decoration:underline;text-underline-offset:3px;background:transparent}.cv-dd-section{margin-top:4px;padding-top:4px;border-top:1px solid var(--border-subtle)}.cv-dd-section:first-child{margin-top:0;padding-top:0;border-top:none}.cv-dd-section-title{font-size:11px;font-weight:600;color:var(--text-muted);padding:2px 10px 6px;letter-spacing:.02em}.cv-dd-divider{height:1px;background:var(--border-subtle);margin:4px 6px}.cv-dd-inline-card{display:flex;flex-direction:column;gap:6px;padding:8px 8px 6px;border-top:1px solid var(--border-subtle);margin-top:2px}.cv-dd-inline-label{font-size:11px;font-weight:600;color:var(--text-secondary);white-space:nowrap;letter-spacing:.01em}.cv-dd-inline-row{display:flex;align-items:center;gap:6px}.cv-dd-inline-input{flex:1;min-width:0;border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-primary);font:inherit;font-size:12px;padding:4px 7px;border-radius:4px;outline:none;transition:border-color .12s ease}.cv-dd-inline-input:focus,.cv-dd-inline-input:focus-visible{outline:none;border-color:#3a342c;box-shadow:0 0 0 2px #3a342c1a}.cv-dd-inline-btn{flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:600;border-radius:4px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-strong);cursor:pointer;transition:background .1s ease,color .1s ease,border-color .1s ease;white-space:nowrap}.cv-dd-inline-btn:hover{background:#3a342c;border-color:#3a342c;color:var(--surface-card)}.cv-dd-profile-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:4px;cursor:pointer;font-size:12px;transition:background .1s ease}.cv-dd-profile-row:hover{background:var(--surface-muted)}.cv-dd-profile-val{width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.cv-dd-profile-val.cv-nul{color:var(--text-muted);font-style:italic}.cv-dd-bar-wrap{flex:1;height:5px;background:var(--surface-muted);border-radius:3px;overflow:hidden}.cv-dd-bar{height:100%;background:var(--text-secondary);border-radius:3px}.cv-dd-profile-pct{font-size:11px;color:var(--text-muted);width:60px;text-align:right;font-variant-numeric:tabular-nums}.cv-col-rename{display:block;width:100%;min-width:64px;box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-primary);font:inherit;font-size:var(--text-xs);font-weight:600;padding:2px var(--space-1);border-radius:4px;outline:none}.cv-col-rename:focus,.cv-col-rename:focus-visible{outline:none;border-color:#3a342c}html.desktop-app,body.desktop-app{height:100%;width:100%;overflow:hidden;background:transparent!important}body.desktop-app #app.app-shell{position:relative;display:flex;flex-direction:column;height:100vh;width:100%;overflow:hidden;min-height:0;background:transparent!important}body.desktop-app #app.app-boot-error{display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--surface-page)}body.desktop-app .app-boot-error-card{max-width:32rem;padding:1.25rem 1.5rem;border:1px solid var(--border-subtle);border-radius:var(--r);background:var(--surface-card)}body.desktop-app .app-boot-error-card h1{font-size:1.1rem;margin-bottom:.75rem}body.desktop-app .app-titlebar{position:absolute;top:0;left:0;right:0;height:30px;display:flex;align-items:flex-end;gap:0;padding:0;margin:0;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important;outline:none;-webkit-user-select:none;user-select:none;z-index:60;pointer-events:none}body.desktop-app .app-titlebar>*{pointer-events:auto}body.desktop-app .app-titlebar-tabs{position:relative;background:transparent}body.desktop-app .app-titlebar-tabs-cluster{display:flex;align-items:flex-end;flex:0 1 auto;min-width:0;max-width:calc(100% - 120px);padding:0;gap:4px;-webkit-app-region:no-drag;app-region:no-drag}body.desktop-app .app-session-tabs{display:flex;align-items:flex-end;gap:0;flex:1 1 auto;min-width:0;overflow:hidden;padding-left:0}body.desktop-app .app-session-tabs::-webkit-scrollbar{display:none}body.desktop-app .app-session-tab{display:inline-flex;align-items:center;gap:4px;flex:1 1 140px;min-width:36px;max-width:168px;height:24px;padding:0 10px 0 14px;margin:0 0 0 -12px;border:1px solid rgba(255,255,255,.22);border-bottom:none;border-radius:8px 8px 0 0;background:color-mix(in srgb,var(--sheet-cell) 88%,var(--surface-muted));box-shadow:0 1px 2px #00000029,inset 0 1px #fff6;color:var(--text-muted);font:inherit;font-size:12px;font-weight:520;cursor:pointer;overflow:hidden;position:relative;z-index:1;transition:z-index 0s,background .12s ease,box-shadow .12s ease,height .12s ease}body.desktop-app .app-session-tab:first-child{margin-left:0;border-left:none;padding-left:12px}body.desktop-app .app-session-tab:hover{z-index:35;background:color-mix(in srgb,var(--sheet-cell) 92%,#fff);color:var(--text-secondary)}body.desktop-app .app-session-tab.is-active{height:27px;z-index:30;background:var(--sheet-cell);color:var(--text-primary);border-color:#fff6;box-shadow:0 2px 4px #00000038,inset 0 1px #ffffff8c}body.desktop-app .app-session-tab.is-active:hover{z-index:40}body.desktop-app .app-session-tab-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}body.desktop-app .app-session-tab-close{flex:none;width:16px;height:16px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);font-size:13px;line-height:1;cursor:pointer;opacity:0}body.desktop-app .app-session-tab:hover .app-session-tab-close,body.desktop-app .app-session-tab.is-active .app-session-tab-close{opacity:1}body.desktop-app .app-session-tab-close:hover{background:color-mix(in srgb,var(--surface-muted) 80%,transparent);color:var(--text-primary)}body.desktop-app .app-session-tab-new{flex:none;align-self:flex-end;width:24px;height:24px;margin:0 0 1px;border:1px solid rgba(255,255,255,.28);border-radius:6px;background:color-mix(in srgb,var(--sheet-cell) 70%,transparent);box-shadow:0 1px 2px #00000029;color:#ffffffeb;font-size:15px;line-height:1;cursor:pointer}body.desktop-app .app-session-tab-new:hover{background:var(--sheet-cell);color:var(--text-primary);border-color:#ffffff73}body.desktop-app .app-titlebar-ghost{position:absolute;top:0;left:0;right:0;pointer-events:none}body.desktop-app .app-titlebar-mid,body.desktop-app .app-trust-badge{display:none}body.desktop-app .app-titlebar-left,body.desktop-app .app-titlebar-right{display:flex;align-items:center;gap:2px;flex:none;-webkit-app-region:no-drag;app-region:no-drag}body.desktop-app .app-titlebar-menu,body.desktop-app .app-titlebar-search,body.desktop-app .app-titlebar-controls,body.desktop-app .app-titlebar-winbtn,body.desktop-app .app-tb-btn{-webkit-app-region:no-drag;app-region:no-drag}body.desktop-app .app-tb-btn{position:relative;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);border-radius:var(--r-xs);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}body.desktop-app .app-tb-btn:hover{background:#ffffff0f;color:var(--text-primary)}body.desktop-app .app-tb-btn.active{background:var(--accent-fill);color:var(--accent-hover)}body.desktop-app .app-tb-open{width:auto;gap:6px;padding:0 10px;font:inherit;font-size:12px;font-weight:560;letter-spacing:.01em}body.desktop-app .app-tb-open-label{line-height:1}body.desktop-app .app-open-menu{position:fixed;z-index:var(--z-popover);min-width:220px;padding:6px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface-card);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px;color:var(--text-primary)}body.desktop-app .app-open-menu-sep{height:1px;margin:4px 6px;background:var(--border-subtle)}body.desktop-app .app-open-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;border:none;background:transparent;color:var(--text-primary);text-align:left;padding:8px 10px;border-radius:7px;cursor:pointer;font:inherit}body.desktop-app .app-open-menu-item:hover{background:var(--surface-muted)}body.desktop-app .app-open-menu-label{font-size:13px;font-weight:560}body.desktop-app .app-open-menu-hint{font-size:11px;color:var(--text-muted)}body.desktop-app .app-tb-icon{display:inline-flex;width:16px;height:16px;color:inherit}body.desktop-app .app-tb-icon svg{display:block}body.desktop-app .app-tb-badge{position:absolute;top:2px;right:1px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;font-size:.58rem;font-weight:700;line-height:14px;text-align:center;background:var(--accent-base);color:var(--accent-on)}body.desktop-app .app-titlebar-drag{flex:1 1 auto;min-width:24px;height:100%;-webkit-app-region:drag;app-region:drag}body.desktop-app .app-titlebar-controls{display:flex;align-items:flex-end;gap:3px;height:auto;margin:0;padding:0 8px 1px 0;background:transparent}body.desktop-app .app-titlebar-winbtn{width:28px;height:24px;border:1px solid rgba(255,255,255,.22);border-radius:6px;background:var(--sheet-cell);box-shadow:0 1px 2px #0000002e,inset 0 1px #ffffff73;color:var(--text-secondary);cursor:pointer;font-size:.78rem;line-height:1;padding:0;display:inline-flex;align-items:center;justify-content:center}body.desktop-app .app-titlebar-winbtn:hover{background:color-mix(in srgb,var(--sheet-cell) 85%,#fff);color:var(--text-primary);border-color:#fff6}body.desktop-app .app-titlebar-winbtn-close:hover{background:var(--state-blocked);color:#fff;border-color:color-mix(in srgb,var(--state-blocked) 70%,#000);box-shadow:0 1px 2px #0003}body.desktop-app .app-topbar{display:none}body.desktop-app .cv-float-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1}body.desktop-app .cv-float-title{display:flex;align-items:center;gap:10px;min-width:0;flex:none;max-width:220px}body.desktop-app .cv-ws-tabs{display:flex;align-items:center;gap:4px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none}body.desktop-app .cv-ws-tabs::-webkit-scrollbar{display:none}body.desktop-app .cv-ws-tab{display:inline-flex;align-items:center;gap:4px;max-width:140px;border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-secondary);font:inherit;font-size:.72rem;font-weight:600;padding:3px 8px;border-radius:var(--r-xs);cursor:pointer;flex-shrink:0}body.desktop-app .cv-ws-tab:hover{color:var(--text-primary);border-color:var(--border-strong)}body.desktop-app .cv-ws-tab.active{color:var(--text-primary);border-color:var(--accent-base);background:var(--accent-fill)}body.desktop-app .cv-ws-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-ws-tab-close{opacity:.55;font-size:.85rem;line-height:1;padding:0 2px}body.desktop-app .cv-ws-tab-close:hover{opacity:1;color:var(--state-blocked)}body.desktop-app .cv-ws-tab-new{max-width:none;padding:3px 10px;color:var(--text-muted);font-weight:700}body.desktop-app .cv-float-title-text{margin:0;font-size:.95rem;font-weight:650;letter-spacing:-.02em;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}body.desktop-app .cv-float-title-pill{flex:none;font-size:.68rem;font-weight:500;color:var(--text-muted);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:999px;padding:2px 8px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-float-actions{display:flex;align-items:center;gap:2px;flex:none}body.desktop-app .cv-main-body{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.cv-filters-drawer{position:fixed;top:40%;right:0;z-index:var(--z-overlay);display:flex;flex-direction:column;align-items:flex-end;-webkit-user-select:none;user-select:none}.cv-filters-drawer-tab{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:140px;height:38px;padding:0 var(--space-3);background:var(--surface-card);border:1px solid var(--border-strong);border-right:none;border-radius:14px 0 0 14px;box-shadow:-4px 4px 14px #5a4b371f;color:var(--text-primary);font-size:var(--text-xs);font-weight:700;cursor:pointer;outline:none;transition:width .15s ease,background .15s ease,border-radius .15s ease}.cv-filters-drawer-tab:hover,.cv-filters-drawer.is-open .cv-filters-drawer-tab{width:210px;background:var(--surface-card)}.cv-filters-drawer.is-open .cv-filters-drawer-tab{border-radius:14px 0 0;border-bottom:1px solid var(--border-subtle);box-shadow:-4px 2px 10px #5a4b3714}.cv-filters-drawer-tab-label{line-height:1;white-space:nowrap}.cv-filters-drawer-tab-count{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--accent-base);color:var(--accent-on);font-size:var(--text-xs);font-weight:700;line-height:1;flex-shrink:0}.cv-filters-drawer-body{width:210px;background:var(--surface-card);border:1px solid var(--border-strong);border-top:none;border-right:none;border-radius:0 0 0 14px;box-shadow:-4px 12px 28px #5a4b3726;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);transform-origin:top right;animation:slideDownFade .2s ease-out .2s both}.cv-filters-drawer-body[hidden]{display:none!important}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cv-filters-drawer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);max-height:320px;overflow-y:auto}.cv-filters-drawer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:var(--r-xs);font-size:var(--text-xs)}.cv-filters-drawer-label{font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-filters-drawer-remove{border:none;background:transparent;color:var(--text-muted);font-size:var(--text-base);cursor:pointer;padding:0 4px;border-radius:var(--r-xs);line-height:1;transition:color .12s ease,background .12s ease}.cv-filters-drawer-remove:hover{color:var(--state-blocked);background:var(--state-blocked-fill)}.cv-filters-drawer-clear{align-self:flex-end;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);background:transparent;border:none;cursor:pointer;text-decoration:underline}.cv-filters-drawer-clear:hover{color:var(--state-blocked)}.cv-filters-drawer-row.is-clean-step,.cv-filters-drawer-row.is-formula-step{background:var(--surface-muted);border:1px solid var(--border-subtle);color:var(--text-primary)}.cv-filters-drawer-row.is-clean-step .cv-filters-drawer-label,.cv-filters-drawer-row.is-formula-step .cv-filters-drawer-label{color:var(--text-primary);font-weight:500}.cv-filters-drawer-row.is-clean-step .cv-filters-drawer-remove,.cv-filters-drawer-row.is-formula-step .cv-filters-drawer-remove{color:var(--text-muted)}body.desktop-app .cv-canvas.cv-sheet{position:relative;flex:1;min-height:0;width:100%;height:100%;display:flex;flex-direction:column;background:var(--sheet-cell);border:none;border-radius:0;box-shadow:none;overflow:hidden;margin:0;padding:0}body.desktop-app .cv-tblwrap{flex:1;min-height:0;max-height:none;min-width:0;width:100%;height:100%;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(138,146,158,.45) transparent;background:var(--sheet-cell);border:none;box-shadow:none;margin:0;padding:0}body.desktop-app .cv-canvas.cv-sheet.cv-layer-raw .cv-tblwrap,body.desktop-app .cv-canvas.cv-sheet.cv-layer-clean .cv-tblwrap{box-shadow:none}body.desktop-app .cv-tblwrap::-webkit-scrollbar{width:6px;height:6px}body.desktop-app .cv-tblwrap::-webkit-scrollbar-track{background:transparent}body.desktop-app .cv-tblwrap::-webkit-scrollbar-thumb{background:#8a929e59;border-radius:999px}body.desktop-app .cv-tblwrap::-webkit-scrollbar-thumb:hover{background:#8a929e8c}body.desktop-app .cv-tbl{font-size:.82rem;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}body.desktop-app .cv-canvas.cv-sheet .cv-tbl th,body.desktop-app .cv-canvas.cv-sheet .cv-tbl td{border-right:1px solid var(--sheet-grid);border-bottom:1px solid var(--sheet-grid);box-sizing:border-box}body.desktop-app .cv-tblwrap-virtual .cv-tbl tbody tr{height:24px}body.desktop-app .cv-tblwrap-virtual .cv-virt-spacer td{padding:0!important;border:0!important;line-height:0;font-size:0;overflow:hidden;vertical-align:top}body.desktop-app .cv-canvas.cv-sheet .cv-tblwrap-virtual .cv-virt-spacer td{background-color:var(--sheet-cell);background-image:repeating-linear-gradient(to bottom,var(--sheet-cell) 0px,var(--sheet-cell) 23px,var(--sheet-grid) 23px,var(--sheet-grid) 24px)}body.desktop-app .cv-tblwrap-virtual .cv-virt-spacer[hidden]{display:none!important}body.desktop-app .cv-canvas.cv-sheet .cv-tbl thead th{position:sticky;top:0;z-index:4;height:28px;min-width:100px;padding:0;text-align:center;vertical-align:middle;background:var(--sheet-header);color:var(--sheet-header-ink);box-shadow:none;border-bottom:1px solid var(--sheet-grid)}body.desktop-app .cv-canvas.cv-sheet .cv-tbl th.cv-col-selected{background:color-mix(in srgb,var(--sheet-header) 80%,#3a342c);outline:none;box-shadow:inset 0 -3px #3a342c;color:var(--sheet-header-ink)}body.desktop-app .cv-canvas.cv-sheet .cv-colbtn{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:5px;width:100%;height:100%;min-height:28px;padding:0 6px;font-weight:600;color:var(--sheet-header-ink);background:transparent;border:none;cursor:pointer}body.desktop-app .cv-canvas.cv-sheet .cv-colbtn:hover{background:color-mix(in srgb,var(--text-primary) 6%,transparent)}body.desktop-app .cv-canvas.cv-sheet .cv-tbl th{position:relative}body.desktop-app .cv-canvas.cv-sheet .cv-col-menu-btn{position:absolute;top:50%;right:2px;transform:translateY(-50%);display:grid;place-items:center;width:16px;height:16px;padding:0;font-size:11px;line-height:1;border:none;border-radius:3px;background:transparent;color:var(--sheet-header-ink);cursor:pointer;opacity:0;transition:opacity .1s ease,background .1s ease}body.desktop-app .cv-canvas.cv-sheet .cv-tbl th:hover .cv-col-menu-btn,body.desktop-app .cv-canvas.cv-sheet .cv-tbl th.cv-col-selected .cv-col-menu-btn,body.desktop-app .cv-canvas.cv-sheet .cv-col-menu-btn:focus-visible{opacity:1}body.desktop-app .cv-canvas.cv-sheet .cv-col-menu-btn:hover{background:color-mix(in srgb,var(--text-primary) 14%,transparent)}body.desktop-app .cv-canvas.cv-sheet .cv-col-excel{display:inline;flex:none;text-align:center;font-size:.68rem;font-weight:700;color:var(--text-muted);opacity:1;background:transparent;border-radius:0;padding:0;margin:0}body.desktop-app .cv-canvas.cv-sheet .cv-col-name{display:inline;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:600;color:var(--sheet-header-ink);opacity:.95}body.desktop-app .cv-rownum-h,body.desktop-app .cv-rownum{display:table-cell;position:sticky;left:0;width:46px;min-width:46px;max-width:46px;padding:0 4px!important;text-align:center;vertical-align:middle;font-family:var(--font-ui, inherit);font-size:.68rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--sheet-header-ink);background:var(--sheet-header);border-right:1px solid var(--sheet-grid);border-bottom:1px solid var(--sheet-grid);-webkit-user-select:none;user-select:none}body.desktop-app .cv-rownum-h{top:0;left:0;z-index:6;background:var(--sheet-corner)!important;color:transparent;border-right:1px solid var(--sheet-grid);border-bottom:1px solid var(--sheet-grid);box-shadow:none;cursor:pointer}body.desktop-app .cv-rownum-h:hover{background:color-mix(in srgb,var(--sheet-corner) 88%,#3a342c)!important}body.desktop-app .cv-rownum{z-index:3}body.desktop-app .cv-canvas.cv-sheet .cv-tbl tbody tr.cv-row-active .cv-rownum{background:color-mix(in srgb,var(--sheet-header) 75%,#3a342c);color:var(--sheet-header-ink);box-shadow:inset -3px 0 #3a342c}body.desktop-app .cv-canvas.cv-sheet .cv-tbl td,body.desktop-app .cv-canvas.cv-sheet .cv-tbl .cv-rownum{height:24px;max-height:24px;box-sizing:border-box;padding:0 6px;line-height:22px;font-size:.74rem;overflow:hidden;background:var(--sheet-cell)}body.desktop-app .cv-canvas.cv-sheet .cv-tbl td.cv-cell-selected{background:var(--sheet-select);outline:2px solid #3a342c;outline-offset:-2px}body.desktop-app .cv-canvas.cv-sheet .cv-tbl td.cv-nul,.cv-nul{color:var(--text-muted);opacity:.65}body.desktop-app .cv-canvas.cv-sheet-plain .cv-col-excel{display:none!important}body.desktop-app .cv-canvas.cv-sheet-plain .cv-rownum,body.desktop-app .cv-canvas.cv-sheet-plain .cv-rownum-h{width:0!important;min-width:0!important;max-width:0!important;padding:0!important;border:none!important;overflow:hidden;color:transparent!important;font-size:0!important;pointer-events:none}body.desktop-app .cv-canvas.cv-sheet-plain .cv-rownum-h{pointer-events:auto;cursor:pointer;width:10px!important;min-width:10px!important;max-width:10px!important;background:var(--sheet-corner)!important}.cv-loading-skeleton-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--sheet-cell, #faf9f6);display:flex;flex-direction:column;overflow:hidden;animation:cvSkeletonFadeIn .15s ease-out}.cv-loading-skeleton-overlay.fade-out{opacity:0;transition:opacity .15s ease-out;pointer-events:none}@keyframes cvSkeletonFadeIn{0%{opacity:0}to{opacity:1}}.cv-loading-card{position:absolute;top:24px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:16px;background:var(--surface-card, #ffffff);border:1px solid var(--border-strong, #ded9cf);border-radius:12px;padding:14px 24px;box-shadow:0 12px 32px #0000001f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cv-loading-spinner{width:20px;height:20px;border:2px solid var(--border-subtle, #e2ded8);border-top-color:var(--accent-base, #3a342c);border-radius:50%;animation:cvSpinnerSpin .7s linear infinite;flex-shrink:0}@keyframes cvSpinnerSpin{to{transform:rotate(360deg)}}.cv-loading-text{display:flex;flex-direction:column;gap:2px}.cv-loading-title{font-size:.92rem;font-weight:700;color:var(--text-primary, #1a1816)}.cv-loading-subtitle{font-size:.8rem;color:var(--text-muted, #787068)}.cv-skeleton-table-wrapper{flex:1;width:100%;height:100%;overflow:hidden;background:var(--sheet-cell, #faf9f6)}.cv-skeleton-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:.82rem}.cv-skeleton-table th{background:var(--surface-header, #ebe6dc);color:var(--text-muted, #787068);font-weight:600;padding:8px 12px;text-align:left;border-right:1px solid var(--sheet-grid, #ded9cf);border-bottom:1px solid var(--sheet-grid, #ded9cf);height:32px;box-sizing:border-box}.cv-skeleton-table td{padding:6px 12px;border-right:1px solid var(--sheet-grid, #ded9cf);border-bottom:1px solid var(--sheet-grid, #ded9cf);height:28px;box-sizing:border-box;background:var(--sheet-cell, #faf9f6)}.cv-skeleton-gutter-th,.cv-skeleton-gutter-td{width:48px;text-align:center!important;color:var(--text-muted, #8a929e);font-size:.75rem;background:var(--surface-header, #eadecc)!important;-webkit-user-select:none;user-select:none}.cv-skeleton-shimmer{height:12px;background:linear-gradient(90deg,#eae5dc 25%,#f4f0e8,#eae5dc 75%);background-size:200% 100%;border-radius:3px;animation:cvGridShimmer 1.5s infinite linear}@keyframes cvGridShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cv-welcome-hero-banner{background:linear-gradient(135deg,#fdfbf7,#f7f3eb);border-bottom:1px solid var(--border-strong, #ded9cf);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:90;box-shadow:0 4px 12px #0000000a;animation:cvSkeletonFadeIn .2s ease-out}.cv-welcome-hero-left{display:flex;flex-direction:column;gap:2px}.cv-welcome-hero-title{font-size:.9rem;font-weight:700;color:var(--text-primary, #1a1816)}.cv-welcome-hero-sub{font-size:.78rem;color:var(--text-muted, #6a6258)}.cv-welcome-hero-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.cv-welcome-btn{font-size:.78rem!important;padding:4px 12px!important;border-radius:6px!important}.cv-welcome-hero-close{background:transparent;border:none;font-size:1.3rem;color:var(--text-muted, #787068);cursor:pointer;padding:2px 6px;border-radius:4px;line-height:1}.cv-welcome-hero-close:hover{background:#0000000f}.cv-diag-container{position:fixed;left:24px;bottom:24px;z-index:var(--z-toast);display:flex;flex-direction:column;align-items:flex-start;-webkit-user-select:none;user-select:none}.cv-diag-lightbulb{position:relative;width:44px;height:44px;border-radius:50%;background:var(--surface-card);border:1px solid var(--border-strong);box-shadow:0 4px 16px #5a4b3729;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .15s ease,background .15s ease,border-color .15s ease}.cv-diag-lightbulb:active{cursor:pointer;transform:scale(.95)}.cv-diag-lightbulb:hover{background:var(--surface-muted);border-color:var(--border-strong)}.cv-diag-lightbulb.is-pulsing{animation:lightbulbPulse 2s infinite ease-in-out;border-color:var(--border-strong)}@keyframes lightbulbPulse{0%,to{box-shadow:0 0 #3a342c40}50%{box-shadow:0 0 0 8px #3a342c00}}.cv-diag-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#3a342c;color:var(--surface-card);font-size:11px;font-weight:700;line-height:18px;text-align:center;border:1px solid var(--surface-card);box-shadow:0 1px 3px #0003}.cv-diag-panel{position:absolute;bottom:54px;left:0;width:330px;max-height:380px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 32px #5a4b3733;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;animation:diagPanelSlide .15s ease-out}.cv-diag-panel::-webkit-scrollbar{display:none}.cv-diag-panel[hidden]{display:none!important}@keyframes diagPanelSlide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cv-diag-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.cv-diag-title{font-size:var(--text-xs);font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-primary);display:flex;align-items:center;gap:6px}.cv-diag-count-pill{font-size:11px;font-weight:600;color:var(--text-muted)}.cv-diag-list{display:flex;flex-direction:column;gap:var(--space-2)}.cv-diag-item{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 1px 4px #5a4b370f;font-size:var(--text-xs)}.cv-diag-item-head{display:flex;align-items:center;justify-content:space-between}.cv-diag-col-name{font-weight:700;color:var(--text-primary);font-size:13px}.cv-diag-desc{color:var(--text-secondary);line-height:1.4;font-size:12px}.cv-diag-btn-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.cv-diag-btn{flex:1;padding:6px 12px;font-size:12px;font-weight:600;border-radius:6px;background:var(--surface-card);color:var(--text-primary);border:1px solid var(--border-strong);cursor:pointer;text-align:center;transition:background .12s ease,border-color .12s ease,color .12s ease}.cv-diag-btn:hover{background:var(--text-primary);border-color:var(--text-primary);color:var(--surface-card)}.cv-diag-btn-validate{padding:4px 8px;font-size:11px;font-weight:600;border-radius:4px;background:transparent;color:var(--text-muted);border:1px solid transparent;cursor:pointer;transition:color .12s ease,background .12s ease}.cv-diag-btn-validate:hover{color:var(--text-primary);background:var(--surface-muted)}.cv-diag-empty-state{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-3) 0;line-height:1.4}.cv-diag-lightbulb.is-idle,.cv-diag-lightbulb:disabled{opacity:.35;cursor:default;animation:none;box-shadow:none}.cv-diag-lightbulb.is-idle:hover,.cv-diag-lightbulb:disabled:hover{transform:none;opacity:.45}.cv-diag-sev-tag{font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0}.cv-diag-sev-block .cv-diag-sev-tag{color:var(--state-blocked)}.cv-diag-sev-warn .cv-diag-sev-tag{color:var(--state-attention)}.cv-diag-sev-block{border-left:2px solid var(--state-blocked);padding-left:8px}.cv-diag-sev-warn{border-left:2px solid var(--state-attention);padding-left:8px}.cv-fx-container{position:fixed;left:78px;bottom:24px;z-index:var(--z-toast);display:flex;flex-direction:column;align-items:flex-start;-webkit-user-select:none;user-select:none}.cv-fx-btn-trigger{position:relative;width:44px;height:44px;border-radius:50%;background:var(--surface-card);border:1px solid var(--border-strong);box-shadow:0 4px 16px #5a4b3729;color:var(--text-primary);font-family:var(--font-mono, monospace);font-size:15px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .15s ease,background .15s ease,border-color .15s ease}.cv-fx-btn-trigger:active{transform:scale(.95)}.cv-fx-btn-trigger:hover{background:var(--surface-muted);border-color:var(--border-strong)}.cv-fx-popover-panel{position:absolute;bottom:54px;left:0;width:350px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 32px #5a4b3733;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);animation:fxSlideUp .12s ease-out}.cv-fx-popover-panel[hidden]{display:none!important}@keyframes fxSlideUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cv-fx-input-wrap{display:flex;align-items:center;gap:var(--space-2);padding:6px 10px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:6px}.cv-fx-input-badge{font-family:var(--font-mono, monospace);font-weight:800;font-size:12px;color:var(--text-primary)}.cv-fx-input{flex:1;border:none;background:transparent;outline:none;font-family:inherit;font-size:13px;color:var(--text-primary)}.cv-fx-input:focus-visible{outline:none}.cv-fx-input::placeholder{color:var(--text-muted);font-style:italic}.cv-fx-autocomplete{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.cv-fx-autocomplete::-webkit-scrollbar{display:none}.cv-fx-option{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:6px;background:transparent;cursor:pointer;transition:background .1s ease}.cv-fx-option:hover,.cv-fx-option.is-selected{background:var(--surface-muted)}.cv-fx-option-head{display:flex;align-items:center;justify-content:space-between}.cv-fx-formula-text{font-family:var(--font-mono, monospace);font-size:12px;font-weight:700;color:var(--text-primary)}.cv-fx-preview-pill{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--surface-card);padding:1px 6px;border-radius:4px;border:1px solid var(--border-subtle)}.cv-fx-option-desc{font-size:11px;color:var(--text-secondary)}.cv-fx-btn-trigger.is-idle,.cv-fx-btn-trigger:disabled{opacity:.35;cursor:default;box-shadow:none}.cv-fx-btn-trigger.is-idle:hover,.cv-fx-btn-trigger:disabled:hover{transform:none;opacity:.45}.cv-view-switcher{position:fixed;right:24px;bottom:24px;z-index:var(--z-toast);display:flex;align-items:center;gap:2px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:22px;padding:3px;box-shadow:0 4px 18px #5a4b3729;-webkit-user-select:none;user-select:none}.cv-view-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:16px;border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.cv-view-btn:hover{color:var(--text-primary);background:var(--surface-muted)}.cv-view-btn.is-active{background:var(--text-primary);color:var(--surface-card);border-color:var(--text-primary);font-weight:700}.cv-view-badge{font-size:10px;font-weight:700;padding:1px 5px;border-radius:999px;background:var(--surface-card);color:var(--text-primary)}.cv-results-view{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);max-width:900px;margin:0 auto;width:100%;box-sizing:border-box}.cv-results-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-3)}.cv-results-title{font-size:var(--text-lg);font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.cv-results-subtitle{font-size:var(--text-sm);color:var(--text-muted)}.cv-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.cv-result-card{background:var(--surface-card);border:1px solid var(--border-strong);border-radius:12px;padding:var(--space-4);box-shadow:0 4px 14px #5a4b3714;display:flex;flex-direction:column;gap:var(--space-2);transition:transform .12s ease,box-shadow .12s ease}.cv-result-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #5a4b3724}.cv-result-card-head{display:flex;align-items:center;justify-content:space-between}.cv-result-formula-tag{font-family:var(--font-mono, monospace);font-size:12px;font-weight:700;color:var(--text-primary);background:var(--surface-muted);padding:3px 8px;border-radius:6px;border:1px solid var(--border-strong)}.cv-result-value{font-size:26px;font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums;margin:var(--space-1) 0}.cv-result-meta{font-size:var(--text-xs);color:var(--text-muted);display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.cv-results-empty{text-align:center;padding:var(--space-6) 0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.cv-view-btn.is-idle,.cv-view-btn:disabled{opacity:.4;cursor:default}.cv-view-btn.is-idle:hover,.cv-view-btn:disabled:hover{background:transparent;color:inherit}.cv-act-container{position:fixed;left:132px;bottom:24px;z-index:var(--z-toast);display:flex;flex-direction:column;align-items:flex-start;-webkit-user-select:none;user-select:none}.cv-act-btn-trigger{position:relative;width:44px;height:44px;border-radius:50%;background:var(--surface-card);border:1px solid var(--border-strong);box-shadow:0 4px 16px #5a4b3729;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .15s ease,background .15s ease,border-color .15s ease}.cv-act-btn-trigger.is-idle,.cv-act-btn-trigger:disabled{opacity:.35;cursor:default;box-shadow:none}.cv-act-btn-trigger.is-idle:hover,.cv-act-btn-trigger:disabled:hover{transform:none;opacity:.45}.cv-act-btn-trigger:active{transform:scale(.95)}.cv-act-btn-trigger:hover{background:var(--surface-muted);border-color:var(--border-strong)}.cv-act-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#3a342c;color:var(--surface-card);font-size:11px;font-weight:700;line-height:18px;text-align:center;border:1px solid var(--surface-card);box-shadow:0 1px 3px #0003}.cv-act-popover-panel{position:absolute;bottom:54px;left:0;width:320px;max-height:380px;background:var(--surface-card);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 12px 32px #5a4b3733;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;animation:actPanelSlide .15s ease-out}.cv-act-popover-panel::-webkit-scrollbar{display:none}.cv-act-popover-panel[hidden]{display:none!important}@keyframes actPanelSlide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cv-act-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}.cv-act-title{font-size:var(--text-xs);font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-primary)}.cv-act-count-pill{font-size:11px;font-weight:600;color:var(--text-muted)}.cv-act-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.cv-act-group{list-style:none;padding-left:var(--space-2);border-left:2px solid var(--border-strong)}.cv-act-group.is-filtro{border-left-color:var(--text-muted)}.cv-act-group.is-limpieza{border-left-color:var(--state-applied)}.cv-act-group.is-edicion{border-left-color:var(--accent-base)}.cv-act-group.is-formula{border-left-color:var(--state-attention)}.cv-act-group-head{display:flex;align-items:baseline;gap:6px}.cv-act-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-primary)}.cv-act-group-count{font-size:10px;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.cv-act-group-hint{font-size:10.5px;color:var(--text-muted);margin-bottom:4px}.cv-act-group-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.cv-act-collapsed{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:var(--text-xs);color:var(--text-secondary);padding:2px 0}.cv-act-collapsed-main{font-weight:600;color:var(--text-primary)}.cv-act-collapsed-hint{color:var(--text-muted)}.cv-act-kbd{font-family:var(--mono);font-size:10px;padding:1px 5px;border-radius:3px;background:var(--surface-muted);border:1px solid var(--border-strong);color:var(--text-primary)}.cv-act-details{margin-top:4px}.cv-act-details>summary{font-size:10.5px;color:var(--text-muted);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.cv-act-details>summary::-webkit-details-marker{display:none}.cv-act-details>summary:before{content:"▸ "}.cv-act-details[open]>summary:before{content:"▾ "}.cv-act-details>summary:hover{color:var(--text-primary)}.cv-act-clear-all{width:100%;margin-top:var(--space-3);padding:5px 10px;font:inherit;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);background:transparent;border:1px solid var(--border-strong);border-radius:var(--r-xs);cursor:pointer}.cv-act-clear-all:hover{background:var(--surface-muted);color:var(--text-primary)}.cv-act-empty-state{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-3) 0;line-height:1.4}.cv-receipt{position:fixed;right:24px;bottom:92px;z-index:var(--z-toast, 900);display:flex;align-items:center;gap:16px;max-width:420px;padding:12px 16px;border-radius:8px;background:var(--surface-card, #fcfaf7);border:1px solid var(--border-strong, #d8d3cb);box-shadow:var(--shadow, 0 4px 12px rgba(0,0,0,.1));opacity:1;transition:opacity .16s ease,transform .16s ease}.cv-receipt.is-leaving{opacity:0;transform:translateY(8px)}.cv-receipt-body{display:flex;flex-direction:column;gap:2px;min-width:0}.cv-receipt-kicker{font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--state-applied, #15803d)}.cv-receipt-summary{font-size:13px;color:var(--text-primary, #111);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-receipt-actions{display:flex;gap:8px;flex-shrink:0}@media(max-width:640px){.cv-receipt{right:12px;left:12px;bottom:92px;max-width:none}.cv-receipt-summary{white-space:normal}}.cv-approval{position:fixed;right:24px;bottom:92px;z-index:var(--z-modal, 1000);display:flex;align-items:flex-start;gap:16px;max-width:480px;padding:16px;border-radius:8px;background:var(--surface-card, #fcfaf7);border:1px solid var(--state-attention, #b45309);box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.15))}.cv-approval-body{display:flex;flex-direction:column;gap:4px;min-width:0}.cv-approval-kicker{font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--state-attention, #b45309)}.cv-approval-title{font-size:13px;font-weight:600;color:var(--text-primary, #111)}.cv-approval-summary{font-size:13px;color:var(--text-secondary, #444)}.cv-approval-details{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.cv-approval-detail{font-size:12px;color:var(--text-muted, #666);padding:2px 8px;border-radius:4px;background:var(--surface-muted, #f2eee8)}.cv-approval-detail.is-attention{color:var(--state-attention, #b45309);background:var(--state-attention-fill, rgba(180, 83, 9, .1))}.cv-approval-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0}@media(max-width:640px){.cv-approval{right:12px;left:12px;bottom:92px;max-width:none}}.cv-result-flag{margin-left:8px;font-size:12px;line-height:1;color:var(--state-attention, #b45309)}.cv-result-orphan .cv-result-flag{color:var(--state-blocked, #dc2626)}.cv-result-change{font-size:12px;color:var(--state-attention, #b45309)}.cv-result-changed{border-left:2px solid var(--state-attention, #b45309)}.cv-result-orphan{border-left:2px solid var(--state-blocked, #dc2626)}.cv-result-orphan .cv-result-change{color:var(--state-blocked, #dc2626)}.cv-result-stale .cv-result-value{opacity:.5}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:-.02em;font-weight:700}p{margin:0}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}code,pre,.mono{font-family:var(--mono)}button,input,textarea,select{font-family:inherit}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid #3a342c;outline-offset:2px;border-radius:var(--r-xs)}.container{width:min(1080px,100% - 40px);margin-inline:auto}.muted{color:var(--muted)}.center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:600;font-size:.94rem;cursor:pointer;padding:11px 18px;border-radius:var(--r-sm);background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);transition:background .15s,border-color .15s,transform .05s,box-shadow .15s}.btn:hover{border-color:var(--muted)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;box-shadow:var(--shadow-sm)}.btn.primary:hover{background:var(--accent-strong)}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--bg-soft)}.btn.big{padding:14px 24px;font-size:1rem;border-radius:var(--r)}.btn.tiny{padding:6px 12px;font-size:.82rem;border-radius:var(--r-xs)}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn.block{width:100%}.chip{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:600;padding:6px 12px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-strong);border:1px solid var(--accent-line)}.chip.neutral{background:var(--bg-soft);color:var(--ink-2);border-color:var(--line)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow-sm)}.field,.data{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:11px 13px;transition:border-color .15s,box-shadow .15s}.field::placeholder,.data::placeholder{color:#9aa2af}.field:focus,.data:focus{outline:none;border-color:#3a342c;box-shadow:0 0 0 3px #3a342c1f}.data{resize:vertical;line-height:1.5;font-family:var(--mono);font-size:.9rem}label.lbl{display:flex;flex-direction:column;gap:7px;font-size:.86rem;font-weight:600;color:var(--ink-2)}.error{color:var(--danger);font-size:.88rem}.success{color:var(--accent-strong);font-weight:600}.topbar{position:sticky;top:0;z-index:20;background:#fbfcfdd1;-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}.topbar .inner{display:flex;align-items:center;gap:18px;padding:12px 0}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:800;letter-spacing:-.03em;font-size:1.15rem;color:var(--ink)}.brand .logo{width:28px;height:28px;display:grid;place-items:center;color:var(--text-primary)}.brand .logo svg{display:block}.topbar nav{display:flex;gap:4px}.topbar .spacer{margin-left:auto}.topbar .right{display:flex;align-items:center;gap:10px}.tab{background:none;border:none;font:inherit;font-weight:600;color:var(--muted);padding:8px 12px;border-radius:var(--r-sm);cursor:pointer}.tab:hover{color:var(--ink);background:var(--bg-soft)}.tab.active{color:var(--accent-strong);background:var(--accent-soft)}.usage{font-size:.82rem;color:var(--muted);background:var(--bg-soft);border:1px solid var(--line);padding:5px 11px;border-radius:var(--r-pill)}main.wrap{padding:26px 0 64px}.cv-consent-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;align-items:center;justify-content:center;padding:24px 16px}.cv-consent-modal.show{display:flex}.cv-consent-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-consent-panel{position:relative;width:min(440px,100%);background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;box-shadow:var(--shadow-lg);padding:20px 20px 16px}.cv-consent-title{font-size:1.05rem;font-weight:700;margin:0 0 8px;color:var(--ink)}.cv-consent-lead{margin:0 0 12px;font-size:.84rem;color:var(--ink-2);line-height:1.45}.cv-consent-path{font-family:var(--mono);font-size:.74rem;color:var(--ink);background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-bottom:12px;word-break:break-all}.cv-consent-list{margin:0 0 16px;padding-left:1.15rem;font-size:.78rem;color:var(--muted);line-height:1.45}.cv-consent-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.cv-consent-hint{margin:12px 0 0;font-size:.7rem;color:var(--muted);line-height:1.4}body.desktop-app .cv-files-scopes{display:flex;flex-direction:column;gap:8px}body.desktop-app .cv-scope-folder{border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg-soft) 55%,transparent);padding:2px 0 6px}body.desktop-app .cv-scope-sum{list-style:none;cursor:pointer;padding:8px 10px 4px}body.desktop-app .cv-scope-sum::-webkit-details-marker{display:none}body.desktop-app .cv-scope-sum-main{display:flex;flex-direction:column;gap:1px;min-width:0}body.desktop-app .cv-scope-name{font-size:.8rem;font-weight:650;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-scope-meta{font-size:.66rem;color:var(--muted)}body.desktop-app .cv-scope-toolbar{display:flex;justify-content:flex-end;padding:0 8px 4px}body.desktop-app .cv-scope-revoke{border:none;background:transparent;color:var(--muted);font:inherit;font-size:.68rem;font-weight:600;cursor:pointer;padding:3px 6px;border-radius:6px}body.desktop-app .cv-scope-revoke:hover{color:var(--danger, #e5484d);background:#e5484d1a}body.desktop-app .cv-scope-tables{display:flex;flex-direction:column;gap:2px;padding:0 6px 2px}body.desktop-app .cv-folder-tree{margin:2px 0;padding-left:4px;border-left:1px solid var(--line)}body.desktop-app .cv-folder-tree-sum{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-radius:6px;cursor:pointer;color:var(--ink-2);font-size:.74rem;font-weight:600}body.desktop-app .cv-folder-tree-sum::-webkit-details-marker{display:none}body.desktop-app .cv-folder-tree-sum:hover{background:#ffffff0a}body.desktop-app .cv-folder-tree-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-folder-tree-count{flex:none;font-size:.64rem;color:var(--muted);font-weight:600}body.desktop-app .cv-folder-tree-children{display:flex;flex-direction:column;gap:2px;padding:0 0 4px 8px}body.desktop-app .cv-table-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left}body.desktop-app .cv-folder-empty{padding:6px 8px 8px;margin:0}.cv-mem-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;align-items:flex-start;justify-content:center;padding:10vh 16px 24px}.cv-mem-modal.show{display:flex}.cv-mem-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-mem-panel{position:relative;width:min(560px,100%);max-height:min(78vh,640px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}body.desktop-app .cv-mem-panel{background:var(--surface);color:var(--ink)}.cv-mem-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 10px}.cv-mem-title-main{font-size:1.05rem;font-weight:700;margin:0 0 4px}.cv-mem-sub{margin:0;font-size:.75rem;color:var(--muted);line-height:1.4}.cv-mem-close{flex:none;width:28px;height:28px;border:none;background:transparent;color:var(--muted);border-radius:var(--r-xs);cursor:pointer;font-size:1.1rem}.cv-mem-close:hover{background:var(--bg-soft);color:var(--ink)}.cv-mem-search{margin:0 16px 10px;width:calc(100% - 32px)}.cv-mem-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:0 16px 10px;border-bottom:1px solid var(--line)}.cv-mem-tab{border:1px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:.74rem;font-weight:600;padding:5px 10px;border-radius:999px;cursor:pointer}.cv-mem-tab:hover{color:var(--ink);background:var(--bg-soft)}.cv-mem-tab.active{color:var(--accent-strong);background:var(--accent-soft);border-color:var(--accent-line)}.cv-mem-body{flex:1;min-height:0;overflow:auto;padding:10px 12px 14px;display:flex;flex-direction:column;gap:8px}.cv-mem-empty{padding:28px 12px;text-align:center;color:var(--muted);font-size:.85rem;line-height:1.45}.cv-mem-item{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#ffffff05}.cv-mem-item-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}.cv-mem-kind{font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cv-mem-id{font-size:.62rem;font-family:var(--mono);color:var(--muted);opacity:.8}.cv-mem-title{font-size:.86rem;font-weight:600;color:var(--ink);margin-bottom:4px;word-break:break-word}.cv-mem-body-text{font-size:.76rem;color:var(--ink-2);line-height:1.4;white-space:pre-wrap;word-break:break-word;max-height:6.5em;overflow:hidden}.cv-mem-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.cv-mem-versions{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.cv-mem-versions-label{margin:0 0 4px;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cv-mem-versions-status{margin:0;font-size:.74rem}.cv-mem-ver-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 0}.cv-mem-ver-label{font-size:.78rem;font-family:var(--mono);color:var(--ink-2)}.cv-mem-ver-tip{font-size:.7rem}.cv-mem-forget{color:var(--danger, #e5484d)}.cv-mem-edit-title{width:100%;margin-bottom:6px}.cv-mem-edit-body{width:100%;resize:vertical;min-height:72px}.cv-mem-telemetry{flex:none;padding:8px 14px 10px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.cv-mem-telemetry-opt{font-size:.78rem;color:var(--ink);display:flex;align-items:center;gap:6px;cursor:pointer}.cv-mem-telemetry-stats{font-size:.72rem;color:var(--muted);line-height:1.35}.cv-mem-telemetry-list{max-height:140px;overflow:auto;display:flex;flex-direction:column;gap:4px;margin-top:2px}.cv-mem-telemetry-item{font-size:.68rem;color:var(--ink-2, var(--muted));display:flex;flex-direction:column;gap:1px;padding:3px 0;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.cv-mem-telemetry-when{color:var(--muted);font-variant-numeric:tabular-nums}.cv-chat-action-copy{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.cv-ollama-status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-pill, 999px);background:var(--surface-muted, #f2eee8);border:1px solid var(--border-subtle, #e2ded8);font-size:11px;font-weight:600;color:var(--text-secondary, #666);cursor:help;-webkit-user-select:none;user-select:none;transition:background .15s ease,border-color .15s ease}.cv-ollama-status-pill .cv-ollama-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted, #999)}.cv-ollama-status-pill.is-active{background:#22c55e1a;border-color:#22c55e4d;color:#15803d}.cv-ollama-status-pill.is-active .cv-ollama-dot{background:#22c55e;box-shadow:0 0 6px #22c55e99}.cv-ollama-status-pill.is-offline{opacity:.8}.cv-chat-action-badge{font-size:.65rem;font-weight:600;letter-spacing:.02em;padding:1px 6px;border-radius:4px;flex:none;border:1px solid var(--line);color:var(--muted)}.cv-chat-action-badge.is-on{color:var(--ok, #3d8b5a);border-color:color-mix(in srgb,var(--ok, #3d8b5a) 40%,var(--line))}.cv-chat-action-badge.is-off{color:var(--warn, #b87a2a);border-color:color-mix(in srgb,var(--warn, #b87a2a) 35%,var(--line))}.cv-chat-action-item.is-disabled{opacity:.55}.cv-chat-receipt-rail-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}.cv-mem-foot{padding:10px 14px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}.cv-sched-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;align-items:flex-start;justify-content:center;padding:10vh 16px 24px}.cv-sched-modal.show{display:flex}.cv-sched-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-sched-panel{position:relative;width:min(520px,100%);max-height:min(78vh,640px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden;color:var(--ink)}.cv-sched-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 10px}.cv-sched-title{font-size:1.05rem;font-weight:700;margin:0 0 4px}.cv-sched-sub{margin:0;font-size:.75rem;color:var(--muted);line-height:1.4}.cv-sched-close{flex:none;width:28px;height:28px;border:none;background:transparent;color:var(--muted);border-radius:var(--r-xs);cursor:pointer;font-size:1.1rem}.cv-sched-close:hover{background:var(--bg-soft);color:var(--ink)}.cv-sched-body{flex:1;min-height:0;overflow:auto;padding:12px 16px 16px;display:flex;flex-direction:column;gap:12px}.cv-sched-intro,.cv-sched-hint,.cv-sched-empty{margin:0;font-size:.78rem;color:var(--muted);line-height:1.45}.cv-sched-create{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft)}.cv-sched-create-title{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.cv-sched-field{display:flex;flex-direction:column;gap:4px;font-size:.72rem;color:var(--muted)}.cv-sched-select{width:100%}.cv-sched-list{display:flex;flex-direction:column;gap:8px}.cv-sched-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.cv-sched-row.is-paused{opacity:.65}.cv-sched-row-main{min-width:0;flex:1}.cv-sched-name{font-size:.86rem;font-weight:600;color:var(--ink)}.cv-sched-meta,.cv-sched-last{font-size:.72rem;color:var(--muted);margin-top:2px;line-height:1.35}.cv-sched-actions{display:inline-flex;flex-wrap:wrap;gap:4px;flex:none}.cv-sched-foot{padding:10px 14px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}.cv-recipes-lib-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;align-items:flex-start;justify-content:center;padding:10vh 16px 24px}.cv-recipes-lib-modal.show{display:flex}.cv-recipes-lib-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-recipes-lib-panel{position:relative;width:min(520px,100%);max-height:min(78vh,640px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden;color:var(--ink)}.cv-recipes-lib-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 10px}.cv-recipes-lib-title{font-size:1.05rem;font-weight:700;margin:0 0 4px}.cv-recipes-lib-sub{margin:0;font-size:.75rem;color:var(--muted);line-height:1.4}.cv-recipes-lib-close{flex:none;width:28px;height:28px;border:none;background:transparent;color:var(--muted);border-radius:var(--r-xs);cursor:pointer;font-size:1.1rem}.cv-recipes-lib-close:hover{background:var(--bg-soft);color:var(--ink)}.cv-recipes-lib-body{flex:1;min-height:0;overflow:auto;padding:12px 16px 16px;display:flex;flex-direction:column;gap:12px}.cv-recipes-lib-intro,.cv-recipes-lib-empty{margin:0;font-size:.78rem;color:var(--muted);line-height:1.45}.cv-recipes-lib-list{display:flex;flex-direction:column;gap:8px}.cv-recipes-lib-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.cv-recipes-lib-main{min-width:0;flex:1}.cv-recipes-lib-name{font-size:.86rem;font-weight:600;color:var(--ink)}.cv-recipes-lib-meta{font-size:.72rem;color:var(--muted);margin-top:2px;line-height:1.35}.cv-recipes-lib-actions{display:inline-flex;flex-wrap:wrap;gap:4px;flex:none}.cv-recipes-lib-foot{padding:10px 14px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}body.desktop-app .cv-split-left,body.desktop-app .cv-split-right{padding:8px 0;background:transparent}body.desktop-app .cv-split-left{padding-left:8px;padding-right:0}body.desktop-app .cv-split-right{padding-right:8px;padding-left:0;flex:none}body.desktop-app .cv-split-center{padding:0!important;margin:0!important}body.desktop-app .cv-insight-rail{height:100%;min-height:0;display:flex;flex-direction:column}body.desktop-app .cv-insight-rail .cv-tools{flex:1;min-height:0;border-radius:0}body.desktop-app .cv-tools{display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg);border:none;border-left:1px solid var(--line);border-radius:0;overflow:hidden;box-shadow:none}body.desktop-app .cv-tools-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 8px 0;border-bottom:1px solid var(--line)}body.desktop-app .cv-tools-head-title{font-size:.75rem;font-weight:500;color:var(--muted);letter-spacing:0}body.desktop-app .cv-tools-tabs{display:flex;gap:0;flex:1;min-width:0}body.desktop-app .cv-tools-tab{position:relative;border:none;background:transparent;color:var(--muted);font-size:.75rem;font-weight:500;padding:6px 9px;border-radius:0;cursor:pointer;border-bottom:1px solid transparent;margin-bottom:-1px}body.desktop-app .cv-tools-tab.is-active{color:var(--ink);background:transparent;border-bottom-color:var(--ink)}body.desktop-app .cv-tools-tab-badge{margin-left:4px;font-size:.65rem;font-weight:600;padding:0 4px;border-radius:3px;background:#ffffff14;color:var(--muted);vertical-align:middle}body.desktop-app .cv-tools-panel-activity-wrap .cv-job-tray{margin:0;border:none;border-radius:0;box-shadow:none}body.desktop-app .cv-tools-panel-steps{display:flex;flex-direction:column;flex:1;min-height:0;overflow:auto;padding:10px 12px 14px;gap:.5rem}body.desktop-app .cv-steps-panel-meta{margin:0;font-size:.78rem}body.desktop-app .cv-tools-panel-steps .cv-steps-fold-list{margin:0;padding:0;border:none}body.desktop-app .cv-tools-panel-steps .cv-step-row-wrap{border-bottom:1px solid var(--line)}body.desktop-app .cv-tools-panel-investigate{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:0}body.desktop-app .cv-tools-panel-investigate .cv-orch-dock,body.desktop-app .cv-tools-panel-investigate .cv-orch-in-slide{flex:1;min-height:0;height:100%;background:transparent}body.desktop-app .cv-tools-panel-investigate .cv-orch-body{max-width:none;margin:0;padding:10px 12px}body.desktop-app .cv-activity-lead{margin:0 0 .75rem;font-size:.78rem;line-height:1.35}body.desktop-app .cv-job-tray-row.is-quiet{opacity:.85}body.desktop-app .cv-job-tray-recent{margin-top:.75rem;opacity:.9}body.desktop-app .cv-tools-close{width:28px;height:28px;border:none;background:transparent;color:var(--muted);border-radius:var(--r-xs);cursor:pointer;font-size:1.05rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}body.desktop-app .cv-tools-close:hover{background:#ffffff0f;color:var(--ink)}body.desktop-app .cv-tools-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-tools-strip{display:none!important}body.desktop-app .app-topbar-inner{display:flex;align-items:center;gap:16px;padding:0 16px;height:48px;max-width:none}body.desktop-app .app-tabs{display:flex;gap:2px}body.desktop-app .app-tab{border:none;background:transparent;padding:8px 14px;border-radius:var(--r-xs);font:inherit;font-size:.88rem;font-weight:600;color:var(--muted);cursor:pointer}body.desktop-app .app-tab:hover{background:var(--bg-soft);color:var(--ink)}body.desktop-app .app-tab.active{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-line)}body.desktop-app .app-badge{font-size:.76rem;color:var(--accent-strong);background:var(--accent-soft);padding:4px 10px;border-radius:var(--r-pill);font-weight:600;box-shadow:inset 0 0 0 1px var(--accent-line)}body.desktop-app .btn.primary{color:#0c1018}body.desktop-app .btn{padding:5px 10px;font-size:.8rem;font-weight:600;gap:5px;border-radius:var(--r-xs);box-shadow:none;background:var(--bg-soft);color:var(--ink);border:1px solid var(--line-strong)}body.desktop-app .btn:hover{background:var(--surface);border-color:var(--ink-2);color:var(--ink)}body.desktop-app .btn.tiny{padding:3px 8px;font-size:.76rem}body.desktop-app .btn.big{padding:6px 12px;font-size:.82rem}body.desktop-app .btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;box-shadow:none}body.desktop-app .btn.primary:hover{background:var(--accent-strong);color:var(--accent-ink)}body.desktop-app .btn.ghost{background:transparent;color:var(--ink-2);border:1px solid var(--line)}body.desktop-app .btn.ghost:hover{background:var(--bg-soft);color:var(--ink);border-color:var(--line-strong)}body.desktop-app .field,body.desktop-app .data{padding:5px 8px;font-size:.78rem;border-radius:var(--r-xs)}body.desktop-app .chip{padding:2px 7px;font-size:.7rem;border-radius:var(--r-xs);gap:4px}body.desktop-app .app-badge{font-size:.68rem;padding:2px 7px;border-radius:var(--r-xs)}body.desktop-app .field,body.desktop-app .data,body.desktop-app .cv-paste,body.desktop-app .cv-clarify-text{background:var(--bg-soft);color:var(--ink);border-color:var(--line-strong)}body.desktop-app .field::placeholder,body.desktop-app .data::placeholder,body.desktop-app .cv-paste::placeholder{color:var(--muted)}body.desktop-app .workbench-main{flex:1;min-height:0;overflow:hidden;padding:0;display:flex;flex-direction:column;box-sizing:border-box;background:transparent}body.desktop-app .cv-root{flex:1;min-height:0;min-width:0;width:100%;max-width:none;margin:0;display:flex;flex-direction:column;overflow:hidden;position:relative}body.desktop-app .cv-workbench,body.desktop-app .cv-workbench.cv-workbench-split{display:flex!important;flex-direction:row;align-items:stretch;flex:1 1 0;min-height:0;min-width:0;width:100%;overflow:hidden;grid-template-columns:unset}body.desktop-app .cv-split-pane{min-height:0;overflow:hidden;display:flex;flex-direction:column}body.desktop-app .cv-split-pane>*{flex:1;min-height:0;min-width:0;width:100%}body.desktop-app .cv-split-center{flex:1 1 0;min-width:160px;min-height:0;padding:0!important;margin:0!important;background:var(--sheet-cell)}body.desktop-app .cv-split-left,body.desktop-app .cv-split-right{flex:none}body.desktop-app .cv-split-handle{flex:none;width:6px;cursor:col-resize;position:relative;z-index:6;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none}body.desktop-app .cv-split-handle:after{content:none}body.desktop-app .cv-split-handle:hover:after,body.desktop-app.cv-split-dragging .cv-split-handle:after{content:"";position:absolute;top:16%;bottom:16%;left:2px;width:2px;border-radius:2px;background:var(--accent)}body.desktop-app.cv-split-dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}body.desktop-app.cv-split-dragging .cv-split-handle:after{background:var(--accent-strong)}body.desktop-app .cv-scroll-hidden{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}body.desktop-app .cv-scroll-hidden::-webkit-scrollbar{display:none;width:0;height:0}body.desktop-app .cv-scroll-fine{overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(138,146,158,.35) transparent}body.desktop-app .cv-scroll-fine::-webkit-scrollbar{width:5px;height:0}body.desktop-app .cv-scroll-fine::-webkit-scrollbar-track{background:transparent}body.desktop-app .cv-scroll-fine::-webkit-scrollbar-thumb{background:#8a929e59;border-radius:999px}body.desktop-app .cv-scroll-fine::-webkit-scrollbar-thumb:hover{background:#8a929e8c}body.desktop-app .cv-pane{display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}body.desktop-app .cv-pane-collapsed{width:100%;min-width:0;max-width:none;overflow:hidden}body.desktop-app .cv-pane-collapsed-inner{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;height:100%}body.desktop-app .cv-pane-label-v{display:none}body.desktop-app .cv-rail-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:14px;line-height:1;color:inherit}body.desktop-app .cv-icon-btn{border:none;background:transparent;color:var(--muted);width:28px;height:28px;border-radius:var(--r-xs);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;padding:0;flex-shrink:0}body.desktop-app .cv-icon-btn:hover{color:var(--ink);background:var(--surface)}body.desktop-app .cv-icon-btn:disabled{opacity:.45;cursor:default}body.desktop-app .cv-rail-expand{width:32px;height:32px;margin-top:2px;color:var(--ink-2)}body.desktop-app .cv-rail-expand:hover{color:var(--accent-strong);background:var(--accent-soft)}body.desktop-app .cv-pane-toggle{border:1px solid var(--line-strong);background:var(--surface);border-radius:6px;width:28px;height:28px;cursor:pointer;font-size:.75rem;color:var(--ink-2);flex-shrink:0}body.desktop-app .cv-pane-toggle:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}body.desktop-app .cv-pane-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-shrink:0}body.desktop-app .cv-pane-head h2{flex:1;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin:0;font-weight:700}body.desktop-app .cv-stage{flex:1;min-height:0;display:flex;flex-direction:column;gap:0;overflow:hidden}body.desktop-app .cv-table-stage{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-rail.cv-pane{border-left:1px solid var(--line);background:var(--surface);padding:10px;width:220px;max-width:220px;overflow:auto}body.desktop-app .cv-rail.cv-pane-collapsed{width:44px;max-width:44px;padding:0;border-left:1px solid var(--line)}body.desktop-app .cv-rail-body,body.desktop-app .cv-agents-scroll{flex:1;min-height:0;overflow:auto}body.desktop-app .cv-agent-type{display:block;font-size:.72rem;color:var(--accent-strong);margin:2px 0 4px}body.desktop-app .cv-agent-chip.cur{background:#e8b84a26;border-color:#e8b84a59;color:#e8c96a}body.desktop-app .cv-agent-question{font-size:.76rem;color:var(--ink-2);line-height:1.4;margin:4px 0 8px;padding:6px 8px;background:#e8b84a1a;border-radius:6px;border:1px solid rgba(232,184,74,.25)}body.desktop-app .cv-pchip.sem-money,body.desktop-app .cv-pchip.sem-money_multi_currency{background:#e8b84a1f;color:#e8c96a}body.desktop-app .cv-pchip.sem-age,body.desktop-app .cv-pchip.sem-integer,body.desktop-app .cv-pchip.sem-decimal{background:#64a0dc1f;color:#8ec5f0}body.desktop-app .cv-pchip.sem-email,body.desktop-app .cv-pchip.sem-phone{background:#f071b41f;color:#f0a0c8}body.desktop-app .cv-pchip.sem-categorical{background:#5ec9921f;color:#7ed4a8}body.desktop-app .cv-pchip.sem-list{background:#8b8ff71f;color:#b0b4f8}body.desktop-app .cv-pchip.sem-boolean{background:#8b8ff71a;color:#a5a9fb}body.desktop-app .cv-pchip.sem-mixed_numeric_text{background:#f0a0641f;color:#f0b080}body.desktop-app .cv-pchip.ask{background:#e8b84a1f;color:#e8c96a;cursor:help;font-weight:700}body.desktop-app .cv-menu-kind{font-size:.78rem;font-weight:600;color:var(--accent-strong);margin:0 0 6px}body.desktop-app .cv-menu-question{font-size:.76rem;color:var(--ink-2);line-height:1.4;margin:0 0 8px;padding:6px 8px;background:#e8b84a1a;border-radius:6px}body.desktop-app .cv-menu-muted{font-size:.76rem;color:var(--muted);margin:4px 0}body.desktop-app .cv-fx-panel{max-width:420px}body.desktop-app .cv-fx-meta{font-size:.8rem;color:var(--ink-2);margin:8px 0}body.desktop-app .cv-fx-rates{display:flex;flex-direction:column;gap:4px;margin:10px 0}body.desktop-app .cv-fx-row{display:flex;justify-content:space-between;font-size:.82rem;padding:6px 10px;background:var(--bg-soft);border-radius:6px;font-variant-numeric:tabular-nums}body.desktop-app .cv-fx-previews{margin-top:12px}body.desktop-app .cv-fx-previews h4{font-size:.72rem;text-transform:uppercase;color:var(--muted);margin-bottom:6px}body.desktop-app .cv-fx-preview{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;font-size:.8rem;padding:4px 0;font-variant-numeric:tabular-nums}body.desktop-app .cv-fx-in{color:var(--muted);text-align:right}body.desktop-app .cv-fx-out{font-weight:600;color:var(--accent-strong)}body.desktop-app .cv-fx-out.invalid{color:#b33;font-weight:500}body.desktop-app .cv-agent-label{display:block;font-size:.72rem;color:var(--muted);margin:8px 0 4px}body.desktop-app .cv-age-stats{display:flex;flex-wrap:wrap;gap:10px;font-size:.8rem;margin:10px 0}body.desktop-app .cv-age-stats .invalid{color:#b33}body.desktop-app .cv-agent-clarify-link{border:none;background:none;color:var(--accent-strong);font:inherit;font-size:inherit;cursor:pointer;text-decoration:underline;padding:0;margin-left:4px}body.desktop-app .cv-clarify-options{display:flex;flex-direction:column;gap:8px;margin-top:12px}body.desktop-app .cv-clarify-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:10px 12px;cursor:pointer;text-align:left;width:100%}body.desktop-app .cv-clarify-btn:hover{border-color:var(--accent);background:var(--accent-soft)}body.desktop-app .cv-clarify-desc{font-size:.76rem;color:var(--muted);font-weight:400}body.desktop-app .cv-clarify-describe{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}body.desktop-app .cv-clarify-text{width:100%;font:inherit;font-size:.82rem;padding:8px 10px;border:1px solid var(--line);border-radius:8px;resize:vertical;background:var(--surface)}body.desktop-app .cv-pchip.role{background:#8b8ff71f;border-color:#8b8ff747;color:#b0b4f8;font-weight:600}body.desktop-app .cv-schema-badge{font-size:.72rem;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-weight:600}body.desktop-app .cv-agents-scroll{max-height:calc(100vh - 120px);overflow-y:auto}body.desktop-app .cv-agents-fold summary{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);cursor:pointer;margin-bottom:8px;font-weight:600}body.desktop-app .cv-schema-shape{font-size:.8rem;color:var(--ink-2);margin:4px 0 10px}body.desktop-app .cv-schema-row{font-size:.76rem;color:var(--ink-2);padding:4px 0;display:flex;gap:8px;align-items:baseline}body.desktop-app .cv-schema-entity{font-weight:700;color:var(--ink);min-width:4.5rem}body.desktop-app .cv-schema-fk{font-size:.62rem;font-weight:700;text-transform:uppercase;background:#e8b84a26;color:#e8c96a;padding:1px 5px;border-radius:4px}body.desktop-app .cv-agent-chip.role{background:#8b8ff71f;border-color:#8b8ff747;color:#b0b4f8}body.desktop-app .cv-agent-chip.user-tag{background:#5ec9921f;border-color:#5ec99247;color:#7ed4a8;font-weight:600}body.desktop-app .cv-agent-shapes{font-size:.76rem;color:var(--ink-2);margin:4px 0 8px;line-height:1.35}body.desktop-app .cv-agent-chip.shape{background:var(--bg-soft);border-color:var(--line)}body.desktop-app .cv-recipe-card{border:1px solid var(--line);border-radius:8px;padding:8px;margin:6px 0;background:var(--surface)}body.desktop-app .cv-recipe-card-lg{padding:12px;margin-bottom:10px}body.desktop-app .cv-recipe-apply{border:none;background:none;font:inherit;font-weight:600;font-size:.8rem;color:var(--accent-strong);cursor:pointer;padding:0;text-align:left;width:100%}body.desktop-app .cv-recipe-apply:hover{text-decoration:underline}body.desktop-app .cv-recipe-apply-lg{width:auto;margin-bottom:8px}body.desktop-app .cv-recipe-previews{margin-top:6px}body.desktop-app .cv-recipe-preview-row{display:grid;grid-template-columns:1fr auto 1fr;gap:6px;align-items:center;font-size:.72rem;padding:2px 0;font-variant-numeric:tabular-nums}body.desktop-app .cv-recipe-in{color:var(--muted);text-align:right;overflow:hidden;text-overflow:ellipsis}body.desktop-app .cv-recipe-arr{color:var(--muted)}body.desktop-app .cv-recipe-out{font-weight:600;color:var(--accent-strong)}body.desktop-app .cv-recipe-same{color:var(--muted)}body.desktop-app .cv-recipe-note{font-size:.72rem;color:var(--muted);margin:4px 0 0}body.desktop-app .cv-recipes-panel{max-width:480px;max-height:85vh;overflow-y:auto}body.desktop-app .cv-recipes-list{margin-top:10px}body.desktop-app .cv-recipe-ops{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}body.desktop-app .cv-agent-more{border:none;background:none;font:inherit;font-size:.76rem;color:var(--accent-strong);cursor:pointer;padding:4px 0;text-decoration:underline}body.desktop-app .cv-agent-card-focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}body.desktop-app .cv-columns-list{display:flex;flex-direction:column;gap:4px}body.desktop-app .cv-col-pick{display:grid;grid-template-columns:2rem 1fr auto;gap:8px;align-items:center;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:8px 10px;cursor:pointer;text-align:left;font:inherit;width:100%}body.desktop-app .cv-col-pick:hover{border-color:var(--accent);background:var(--accent-soft)}body.desktop-app .cv-col-pick.selected{border-color:var(--accent-strong);background:var(--accent-soft)}body.desktop-app .cv-col-pick-letter{font-weight:700;font-size:.82rem;color:var(--accent-strong);background:var(--bg-soft);border-radius:4px;text-align:center;padding:2px 0}body.desktop-app .cv-col-pick-name{font-weight:600;font-size:.84rem;overflow:hidden;text-overflow:ellipsis}body.desktop-app .cv-col-pick-kind{font-size:.68rem;color:var(--muted)}body.desktop-app .cv-col-back{border:none;background:none;font:inherit;font-size:.78rem;color:var(--accent-strong);cursor:pointer;padding:0 0 10px;text-decoration:underline}body.desktop-app .cv-col-excel-head{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}body.desktop-app .cv-col-letter{font-size:1.1rem;font-weight:800;color:var(--accent-strong);background:var(--accent-soft);border-radius:6px;padding:2px 8px}body.desktop-app .cv-col-name{font-weight:650;font-size:.84rem}body.desktop-app .cv-col-range{font-size:.72rem;color:var(--muted);margin:0 0 8px;font-variant-numeric:tabular-nums}body.desktop-app .cv-recipes-heading{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:12px 0 6px}body.desktop-app .cv-col-excel{font-size:.68rem;font-weight:700;color:var(--accent-strong);background:var(--accent-soft);border-radius:3px;padding:1px 4px;margin-right:4px}body.desktop-app .cv-tbl th.cv-col-selected{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}body.desktop-app .cv-tbl td.cv-col-selected-cell{background:var(--accent-wash-weak)}body.desktop-app .cv-tbl td.cv-cell-selected{background:var(--accent-wash-strong);outline:2px solid var(--accent);outline-offset:-2px;position:relative;z-index:1}body.desktop-app .cv-tbl td.cv-cell-overridden{box-shadow:inset 0 -2px 0 var(--accent)}body.desktop-app .cv-tbl td.cv-occurrence-cell{background:var(--accent-wash-strong)!important;box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--text-primary);position:relative;z-index:1}body.desktop-app .cv-tbl td.cv-occurrence-cell:after{content:"";position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--accent)}body.desktop-app .cv-tbl td.cv-occurrence-anchor{outline:2.5px solid var(--accent);outline-offset:-2px;z-index:2}body.desktop-app .cv-tbl td.cv-occurrence-anchor:after{display:none}body.desktop-app .cv-occurrence-hint{position:fixed;z-index:var(--z-popover, 60);padding:4px 10px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-on);font-size:var(--text-xs);font-weight:600;box-shadow:var(--shadow);pointer-events:none;white-space:nowrap}body.desktop-app .cv-tbl td .cv-override-dot{position:absolute;top:0;right:3px;font-size:.9rem;line-height:1;color:var(--accent-strong);pointer-events:none}body.desktop-app .cv-tbl td.cv-cell-overridden,body.desktop-app .cv-tbl td.cv-cell-selected{position:relative}body.desktop-app .cv-cell-edit{display:block;width:100%;height:100%;min-width:64px;box-sizing:border-box;border:none;background:var(--surface-card);color:var(--ink);font:inherit;font-family:var(--mono);font-size:.78rem;padding:0 6px;margin:0;border-radius:0;outline:none;line-height:22px}body.desktop-app .cv-cell-edit:focus,body.desktop-app .cv-cell-edit:focus-visible{outline:none}body.desktop-app .cv-canvas.cv-sheet .cv-tbl td:has(input.cv-cell-edit){outline:2px solid #3a342c;outline-offset:-2px;background:var(--surface-card)}body.desktop-app .cv-add-col-h{width:36px;padding:0!important;text-align:center;background:transparent;border-left:1px dashed var(--line)}body.desktop-app .cv-add-col-btn{border:none;background:transparent;color:var(--muted);font:inherit;font-size:1.1rem;font-weight:600;line-height:1;width:28px;height:28px;border-radius:var(--r-xs);cursor:pointer}body.desktop-app .cv-add-col-btn:hover{color:var(--accent-strong);background:var(--accent-soft)}body.desktop-app .cv-add-col-pad{border-left:1px dashed var(--line);background:transparent;min-width:28px}body.desktop-app .cv-add-row-h{padding:4px 8px!important;border-top:1px dashed var(--line);background:transparent;text-align:left}body.desktop-app .cv-add-row-btn{border:none;background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:600;line-height:1.2;padding:4px 8px;border-radius:var(--r-xs);cursor:pointer}body.desktop-app .cv-add-row-btn:hover{color:var(--accent-strong);background:var(--accent-soft)}body.desktop-app .cv-pchip.ask{border:none;cursor:help;font-weight:700;padding:2px 6px}body.desktop-app .cv-tools-panel-agent{display:flex;flex-direction:column;min-height:0;height:100%}body.desktop-app .cv-agent-panel{padding:4px 2px 16px;min-height:0}body.desktop-app .cv-agent-intent-row{display:flex;gap:6px;align-items:center;margin:8px 0 4px}body.desktop-app .cv-agent-intent{flex:1;min-width:0;font-size:.76rem!important;padding:6px 8px!important}body.desktop-app .cv-agent-card-title{margin:0;font-size:.8rem;font-weight:700;color:var(--ink);line-height:1.35}body.desktop-app .cv-agent-card-meta{margin:4px 0 0;font-size:.66rem;font-family:var(--mono)}body.desktop-app .cv-agent-card-formula{margin:6px 0 0;font-size:.7rem;color:var(--ink-2);line-height:1.4}body.desktop-app .cv-agent-step-list{margin:8px 0 0;padding-left:1.1em;font-size:.7rem;color:var(--ink-2);line-height:1.45}body.desktop-app .cv-agent-actions.row{flex-direction:row;flex-wrap:wrap;margin-top:8px}body.desktop-app .cv-agent-action.primary{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600}body.desktop-app .cv-agent-preview{display:flex;align-items:center;gap:6px;margin:4px 0 0;font-family:var(--mono);font-size:.68rem;min-width:0}body.desktop-app .cv-agent-preview .in{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-agent-preview .arrow{color:var(--muted);flex-shrink:0}body.desktop-app .cv-agent-preview .out{color:var(--clean-ink, var(--accent-strong));font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-agents{border-radius:0;border:none;border-left:1px solid var(--line);box-shadow:none;max-height:none;height:100%;overflow:auto;background:var(--surface);padding:12px;width:280px}body.desktop-app .cv-agents.cv-pane-collapsed{width:44px;padding:0;overflow:hidden}body.desktop-app .cv-agents h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}body.desktop-app .cv-agents-hint,body.desktop-app .cv-agents-empty{font-size:.8rem;color:var(--muted);line-height:1.45}body.desktop-app .cv-agents-meta{font-size:.78rem;color:var(--ink-2);margin:6px 0 12px}body.desktop-app .cv-agents-block{margin-top:14px}body.desktop-app .cv-agents-block h3{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}body.desktop-app .cv-agent-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r-xs);padding:10px;margin-bottom:8px}body.desktop-app .cv-agent-col{border:none;background:none;font:inherit;font-weight:700;font-size:.88rem;color:var(--ink);cursor:pointer;padding:0;text-align:left}body.desktop-app .cv-agent-col:hover{color:var(--accent-strong)}body.desktop-app .cv-agent-chips{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}body.desktop-app .cv-agent-chip{font-size:.68rem;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:2px 6px;color:var(--muted)}body.desktop-app .cv-agent-actions{display:flex;flex-direction:column;gap:4px}body.desktop-app .cv-agent-action{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:6px 8px;font:inherit;font-size:.78rem;text-align:left;cursor:pointer}body.desktop-app .cv-agent-action:hover{border-color:var(--accent);background:var(--accent-soft)}body.desktop-app .cv-agent-action.ghost{background:transparent}body.desktop-app .cv-agent-rel{font-size:.76rem;color:var(--ink-2);padding:6px 8px;border-left:2px solid var(--accent-soft);margin-bottom:6px}body.desktop-app .cv-report-cell-ref{display:flex;flex-direction:column;gap:2px;margin:0 0 8px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg-soft)}body.desktop-app .cv-report-cell-addr{font-family:var(--mono);font-size:.82rem;font-weight:700;color:var(--accent-strong, var(--ink));letter-spacing:.02em}body.desktop-app .cv-report-cell-val{font-size:.76rem;line-height:1.35;word-break:break-word}body.desktop-app .cv-layer-toggle{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}body.desktop-app .cv-open-file-btn{border:1px solid var(--line);border-radius:6px}body.desktop-app .cv-edit-menu{position:relative;display:inline-flex;align-items:center}body.desktop-app .cv-edit-trigger{border:1px solid var(--line);border-radius:6px;margin-left:2px}body.desktop-app .cv-edit-trigger[aria-expanded=true]{background:var(--surface);color:var(--ink)}body.desktop-app .cv-edit-menu-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:30;min-width:180px;padding:10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-sm, 0 4px 16px rgba(0, 0, 0, .2));display:flex;flex-direction:column;gap:8px}body.desktop-app .cv-edit-menu-panel[hidden]{display:none!important}body.desktop-app .cv-edit-menu-lead{margin:0;font-size:.72rem;line-height:1.35}body.desktop-app .cv-edit-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem}body.desktop-app .cv-edit-num{width:4.2rem;font:inherit;font-size:.76rem;padding:3px 6px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--ink)}body.desktop-app .cv-colbtn{padding:4px 8px}body.desktop-app .cv-files-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}body.desktop-app .cv-files-section-head .cv-files-section-label{margin:0}body.desktop-app .cv-files-open-one{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:inherit;font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:5px;cursor:pointer}body.desktop-app .cv-files-open-one:hover{color:var(--ink);border-color:var(--line-strong)}body.desktop-app .cv-files{border:1px solid var(--line);border-radius:12px;box-shadow:none;max-height:none;height:100%;position:static;background:var(--bg-soft);padding:0;width:100%;overflow:hidden;min-width:0;display:flex;flex-direction:column}body.desktop-app .cv-files-body{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;overflow:hidden}body.desktop-app .cv-files-toolbar{display:flex;align-items:stretch;gap:6px;flex-shrink:0;padding:10px 10px 6px}body.desktop-app .cv-files-add{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:8px;cursor:pointer;font:inherit;font-size:.82rem;font-weight:600;padding:0 12px}body.desktop-app .cv-files-add:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-strong)}body.desktop-app .cv-files-add:disabled{opacity:.55;cursor:default}body.desktop-app .cv-files-add-wrap{position:relative;flex:1;display:flex}body.desktop-app .cv-files-add-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;display:flex;flex-direction:column;gap:2px;padding:6px;background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 8px 24px #0000002e}body.desktop-app .cv-files-add-menu[hidden]{display:none!important}body.desktop-app .cv-files-add-sep{margin:6px 4px 2px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}body.desktop-app .cv-files-add-item{display:block;width:100%;text-align:left;border:none;background:transparent;color:var(--ink);font:inherit;font-size:.8rem;font-weight:500;padding:8px 10px;border-radius:6px;cursor:pointer}body.desktop-app .cv-files-add-item:hover{background:var(--accent-soft);color:var(--accent-strong)}body.desktop-app .cv-files-add-plus{font-size:1rem;font-weight:500;line-height:1}body.desktop-app .cv-files-toolbar-left{display:none}body.desktop-app .cv-files-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:4px 10px 16px;scrollbar-width:thin;scrollbar-color:rgba(138,146,158,.35) transparent}body.desktop-app .cv-files-section{margin-bottom:14px;min-width:0}body.desktop-app .cv-files-section-label{font-size:.68rem;color:var(--muted);font-weight:500;letter-spacing:.02em;margin:0 0 6px 2px}body.desktop-app .cv-files-folders-host,body.desktop-app .cv-files-list-host,body.desktop-app .cv-files-recents-host{min-width:0;overflow:visible}body.desktop-app .cv-files-list-host{flex:none;min-height:0;overflow:visible;margin-bottom:8px}body.desktop-app .cv-file{padding:5px 8px;margin-bottom:1px;border-radius:var(--r-xs);font-family:inherit;border:none;background:transparent;width:100%;text-align:left;color:var(--ink);cursor:pointer}body.desktop-app .cv-file:hover{background:var(--surface)}body.desktop-app .cv-file.active{background:var(--accent-soft);color:var(--accent-strong)}body.desktop-app .cv-file-name{font-size:.78rem;font-weight:500;font-family:var(--mono);letter-spacing:-.01em}body.desktop-app .cv-file-meta{font-size:.66rem;margin-top:0}body.desktop-app .cv-files-recipes-host{flex-shrink:0;min-width:0;max-height:none;overflow:visible;border-top:1px solid var(--line);padding-top:8px;margin-top:8px}body.desktop-app .cv-files-recipes-fold summary{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:.72rem;color:var(--muted);cursor:pointer;padding:4px 0;list-style:none;font-weight:500;letter-spacing:0;text-transform:none}body.desktop-app .cv-files-recipes-fold summary::-webkit-details-marker{display:none}body.desktop-app .cv-model-summary-meta{font-weight:500;text-transform:none;letter-spacing:0;color:var(--ink-2);font-size:.7rem}body.desktop-app .cv-model-cols{display:flex;flex-direction:column;gap:2px;max-height:none;overflow:visible;margin:4px 0 6px}body.desktop-app .cv-model-col{display:flex;align-items:baseline;gap:8px;font-size:.7rem;padding:1px 0}body.desktop-app .cv-model-col-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);color:var(--ink-2)}body.desktop-app .cv-model-col-role{flex-shrink:0;color:var(--muted);font-size:.66rem}body.desktop-app .cv-model-more,body.desktop-app .cv-model-one-liner{margin:4px 0 0;font-size:.66rem;line-height:1.35}body.desktop-app .cv-files-rel-list{max-height:none;overflow:visible}body.desktop-app .cv-join-builder{display:flex;flex-direction:column;gap:10px;padding:4px 0 14px;border-bottom:1px solid var(--line);margin-bottom:12px}body.desktop-app .cv-join-builder-lead{margin:0;font-size:.72rem;color:var(--ink-2);line-height:1.4}body.desktop-app .cv-join-pickers{display:grid;grid-template-columns:1fr auto 1fr;gap:6px;align-items:center}body.desktop-app .cv-join-select{min-width:0;font-size:.72rem!important;padding:5px 8px!important}body.desktop-app .cv-join-swap{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:var(--r-xs);width:28px;height:28px;padding:0;cursor:pointer;font-size:.85rem;line-height:1}body.desktop-app .cv-join-swap:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}body.desktop-app .cv-join-swap:disabled{opacity:.4;cursor:not-allowed}body.desktop-app .cv-join-match{display:grid;grid-template-columns:1fr minmax(72px,auto) 1fr;gap:6px;align-items:start;min-height:80px}body.desktop-app .cv-join-col-list{display:flex;flex-direction:column;gap:3px;min-width:0;max-height:180px;overflow-y:auto;scrollbar-width:thin}body.desktop-app .cv-join-col-head{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:0 2px 4px}body.desktop-app .cv-join-col{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:inherit;font-size:.68rem;font-family:var(--mono);text-align:left;padding:4px 7px;border-radius:var(--r-xs);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-join-col:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong)}body.desktop-app .cv-join-col.selected{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}body.desktop-app .cv-join-col.matched{box-shadow:inset 2px 0 0 var(--accent)}body.desktop-app .cv-join-col-empty{margin:0;font-size:.68rem;color:var(--muted);padding:4px 2px}body.desktop-app .cv-join-bridge{display:flex;align-items:center;justify-content:center;min-height:64px;padding-top:18px}body.desktop-app .cv-join-bridge-hint{font-size:1rem;color:var(--muted);text-align:center;opacity:.55}body.desktop-app .cv-join-link{display:flex;flex-direction:column;align-items:center;gap:4px;max-width:100%}body.desktop-app .cv-join-link-col{font-family:var(--mono);font-size:.62rem;color:var(--accent-strong);max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-join-link-arrow{font-size:.9rem;color:var(--accent);font-weight:700}body.desktop-app .cv-join-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}body.desktop-app .cv-join-type{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-xs);overflow:hidden}body.desktop-app .cv-join-type-btn{border:none;background:transparent;color:var(--muted);font:inherit;font-size:.68rem;font-weight:700;padding:5px 10px;cursor:pointer}body.desktop-app .cv-join-type-btn:hover:not(:disabled){color:var(--ink)}body.desktop-app .cv-join-type-btn.active{background:var(--accent-soft);color:var(--ink)}body.desktop-app .cv-join-run{font-size:.76rem!important;padding:6px 14px!important}body.desktop-app .cv-join-suggest-head{margin:0 0 6px;font-size:.68rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}body.desktop-app .cv-join-hint{margin:8px 0 0;font-size:.7rem;line-height:1.4}body.desktop-app .cv-rel-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 4px;padding:4px 0;border-bottom:1px solid var(--line);font-size:.72rem}body.desktop-app .cv-rel-row:last-child{border-bottom:none}body.desktop-app .cv-rel-hit{grid-column:1;display:flex;align-items:center;gap:6px;min-width:0;border:none;background:transparent;padding:2px 0;margin:0;font:inherit;text-align:left;cursor:pointer;color:inherit}body.desktop-app .cv-rel-hit:hover:not(:disabled) .cv-rel-go{text-decoration:underline}body.desktop-app .cv-rel-hit:disabled{opacity:.5;cursor:not-allowed}body.desktop-app .cv-rel-score{flex-shrink:0;font-size:.64rem;color:var(--muted);font-variant-numeric:tabular-nums;min-width:2.2em}body.desktop-app .cv-rel-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2);line-height:1.3;font-family:var(--mono);font-size:.68rem}body.desktop-app .cv-rel-go{flex-shrink:0;font-size:.68rem;font-weight:600;color:var(--accent-strong)}body.desktop-app .cv-rel-more-btn{grid-column:2;grid-row:1;border:none;background:transparent;color:var(--muted);cursor:pointer;padding:2px 4px;font-size:.7rem;line-height:1}body.desktop-app .cv-rel-more-btn:hover{color:var(--ink)}body.desktop-app .cv-rel-extra{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px;padding:2px 0 4px 2.4em}body.desktop-app .cv-rel-show-more{display:block;width:100%;margin-top:4px;border:none;background:transparent;padding:4px 0;font:inherit;font-size:.68rem;color:var(--accent-strong);cursor:pointer;text-align:left}body.desktop-app .cv-rel-show-more:hover{text-decoration:underline}body.desktop-app .cv-rel-link{border:none;background:transparent;padding:0;margin:0;font:inherit;font-size:.68rem;color:var(--accent-strong);cursor:pointer;text-decoration:none}body.desktop-app .cv-rel-link:hover:not(:disabled){text-decoration:underline}body.desktop-app .cv-rel-link:disabled{opacity:.45;cursor:not-allowed}body.desktop-app .cv-recipe-actions{display:flex;flex-wrap:wrap;align-items:center;gap:2px;flex-shrink:0}body.desktop-app .cv-recipe-row{display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:5px 0;border-bottom:1px solid var(--line);font-size:.74rem}body.desktop-app .cv-rel{font-size:.72rem;color:var(--ink-2);padding:2px 0;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-rel-more{font-size:.68rem;color:var(--muted);padding:2px 0}body.desktop-app .cv-file.loading{opacity:.6}body.desktop-app .cv-steps-fold{flex:none;border-bottom:1px solid var(--line);background:var(--bg-soft)}body.desktop-app .cv-steps-fold summary{cursor:pointer;font-size:.76rem;font-weight:600;color:var(--ink-2);padding:7px 12px;list-style:none;-webkit-user-select:none;user-select:none}body.desktop-app .cv-steps-fold summary:before{content:"▸ ";color:var(--muted)}body.desktop-app .cv-steps-fold[open] summary:before{content:"▾ "}body.desktop-app .cv-steps-fold summary:hover{color:var(--ink)}body.desktop-app .cv-steps-fold-list{display:flex;flex-direction:column;max-height:180px;overflow-y:auto;padding:0 8px 6px}body.desktop-app .cv-step-row-wrap{display:flex;align-items:center;gap:4px}body.desktop-app .cv-step-row{flex:1;min-width:0;border:none;background:transparent;color:var(--ink-2);font:inherit;font-size:.76rem;text-align:left;padding:4px 8px;border-radius:6px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-step-row:hover{background:var(--surface);color:var(--ink)}body.desktop-app .cv-step-row.active{background:var(--accent-soft);color:var(--ink)}body.desktop-app .cv-step-row-remove{flex:none;border:none;background:transparent;color:var(--muted);font:inherit;cursor:pointer;padding:2px 6px;border-radius:5px}body.desktop-app .cv-step-row-remove:hover{color:var(--danger);background:var(--danger-soft)}body.desktop-app .cv-steps-fold-actions{padding:0 12px 8px}body.desktop-app .cv-session-row{display:flex;align-items:center;gap:2px;border-radius:7px}body.desktop-app .cv-session-row.active{background:var(--accent-soft)}body.desktop-app .cv-session-btn{flex:1;min-width:0;border:none;background:transparent;color:var(--ink-2);font:inherit;font-size:.8rem;text-align:left;padding:6px 8px;border-radius:7px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-session-row.active .cv-session-btn{color:var(--ink);font-weight:600}body.desktop-app .cv-session-btn:hover{color:var(--ink)}body.desktop-app .cv-session-close{flex:none;border:none;background:transparent;color:transparent;font:inherit;cursor:pointer;padding:2px 6px;border-radius:5px}body.desktop-app .cv-session-row:hover .cv-session-close{color:var(--muted)}body.desktop-app .cv-session-close:hover{color:var(--ink);background:var(--bg-soft)}body.desktop-app .cv-files-fold summary{cursor:pointer;font-size:.72rem;font-weight:600;color:var(--muted);padding:6px 4px;-webkit-user-select:none;user-select:none}body.desktop-app .cv-files-fold summary:hover{color:var(--ink-2)}body.desktop-app .cv-grid-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--r-xs);overflow:hidden;flex-shrink:0}body.desktop-app .cv-grid-btn{border:none;background:var(--bg-soft);color:var(--ink-2);font:inherit;font-size:.72rem;font-weight:600;padding:4px 10px;cursor:pointer}body.desktop-app .cv-grid-btn:hover{color:var(--ink);background:var(--surface)}body.desktop-app .cv-grid-btn.active{background:var(--surface);color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}body.desktop-app .cv-canvas-analytics{display:flex;flex-direction:column;flex:1;min-height:0}body.desktop-app .cv-layer-btn{border:none;background:var(--bg-soft);color:var(--ink-2);font:inherit;font-size:.74rem;font-weight:600;padding:4px 11px;cursor:pointer}body.desktop-app .cv-layer-btn:hover:not(:disabled){color:var(--ink);background:var(--surface)}body.desktop-app .cv-layer-btn.active.dirty{background:var(--dirty-bg);color:var(--dirty-ink)}body.desktop-app .cv-layer-btn.active.clean{background:var(--clean-bg);color:var(--clean-ink)}body.desktop-app .cv-layer-btn:disabled{opacity:.4;cursor:not-allowed;color:var(--muted)}body.desktop-app .cv-canvas.cv-layer-raw .cv-tblwrap{box-shadow:inset 0 0 0 1px #c92a2a14}body.desktop-app .cv-canvas.cv-layer-clean .cv-tblwrap{box-shadow:inset 0 0 0 1px #087f5b1a}body.desktop-app .cv-pack-id{margin-bottom:10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft);padding:8px 10px}body.desktop-app .cv-pack-id summary{cursor:pointer;font-size:.82rem;font-weight:600;color:var(--ink);list-style:none}body.desktop-app .cv-pack-id summary::-webkit-details-marker{display:none}body.desktop-app .cv-pack-id-body{margin-top:4px}body.desktop-app .cv-pack-id-lead{font-size:.8rem;margin:0 0 4px;line-height:1.4}body.desktop-app .cv-pack-id-use,body.desktop-app .cv-pack-id-expl,body.desktop-app .cv-pack-id-hint{font-size:.74rem;margin:4px 0 0;line-height:1.4}body.desktop-app .cv-pack-id-actions{display:flex;gap:8px;margin-top:10px}body.desktop-app .cv-pack-id-done{font-size:.78rem;margin:8px 0 0;color:var(--clean-ink)}body.desktop-app .cv-report-formulas,body.desktop-app .cv-report-scale{margin-bottom:8px;font-size:.74rem;line-height:1.4}body.desktop-app .cv-report-recipes{margin-bottom:8px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft);padding:8px 10px}body.desktop-app .cv-report-formulas summary,body.desktop-app .cv-report-recipes summary{cursor:pointer;font-size:.82rem;font-weight:600;list-style:none}body.desktop-app .cv-report-formulas summary::-webkit-details-marker,body.desktop-app .cv-report-recipes summary::-webkit-details-marker{display:none}body.desktop-app .cv-formula-list{margin:8px 0 0;padding-left:0;list-style:none;font-size:.76rem;color:var(--ink-2);line-height:1.45}body.desktop-app .cv-formula-list li{margin:4px 0}body.desktop-app .cv-formula-row{display:flex;align-items:center;gap:8px;justify-content:space-between}body.desktop-app .cv-formula-link{border:none;background:transparent;padding:0;font:inherit;color:var(--accent-strong);cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:transparent;flex:1;min-width:0}body.desktop-app .cv-formula-link:hover{text-decoration-color:var(--accent-strong)}body.desktop-app .cv-synth-from-cell{margin-top:8px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--bg-soft);padding:6px 8px}body.desktop-app .cv-synth-from-cell summary{cursor:pointer;font-size:.74rem;font-weight:600;list-style:none}body.desktop-app .cv-synth-from-cell summary::-webkit-details-marker{display:none}body.desktop-app .cv-synth-hint{font-size:.7rem;margin:4px 0 6px;line-height:1.35}body.desktop-app .cv-synth-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:4px;align-items:center;margin-bottom:4px}body.desktop-app .cv-synth-in,body.desktop-app .cv-synth-out{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-xs);padding:4px 6px;font-family:var(--mono);font-size:.7rem;background:var(--surface);color:var(--ink)}body.desktop-app .cv-synth-arr{color:var(--muted);font-size:.7rem}body.desktop-app .cv-recipe-row:last-child{border-bottom:none}body.desktop-app .cv-recipe-main{flex:1;min-width:0}body.desktop-app .cv-recipe-name{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-recipe-meta{font-size:.66rem;color:var(--muted)}body.desktop-app .cv-files-recipes-empty{font-size:.7rem;padding:4px 0 6px;margin:0}body.desktop-app .cv-applied-steps::-webkit-scrollbar{display:none}body.desktop-app .cv-step-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:inherit;font-size:.68rem;padding:2px 7px;border-radius:var(--r-xs);cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-step-chip:hover{border-color:var(--accent);color:var(--ink)}body.desktop-app .cv-step-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}body.desktop-app .cv-step-chip-wrap{display:inline-flex;align-items:center;gap:2px;max-width:100%}body.desktop-app .cv-step-chip-wrap .cv-step-chip{max-width:calc(100% - 22px)}body.desktop-app .cv-step-chip-remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:.95rem;line-height:1;padding:2px 4px;border-radius:4px;flex-shrink:0}body.desktop-app .cv-step-chip-remove:hover{color:var(--danger);background:var(--danger-soft)}body.desktop-app .cv-col-profile{margin:10px 0 12px}body.desktop-app .cv-pii-block{margin-top:10px;padding:10px 12px;border:1px solid rgba(232,184,74,.28);background:#e8b84a1a;border-radius:var(--r-sm)}body.desktop-app .cv-pii-block p{font-size:.78rem;color:var(--ink-2);margin:0}body.desktop-app .cv-rel-score{font-size:.68rem;color:var(--muted)}body.desktop-app .cv-files-cta{display:inline-flex;align-items:center;margin:4px 2px 0;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}body.desktop-app .cv-files-cta:hover{border-color:var(--accent)}body.desktop-app .cv-files-auto-list{display:flex;flex-direction:column;gap:2px}body.desktop-app .cv-files-auto-row{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:7px 8px;border:none;border-radius:8px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}body.desktop-app .cv-files-auto-row:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 8%,transparent)}body.desktop-app .cv-files-auto-row:disabled{opacity:.45;cursor:default}body.desktop-app .cv-files-auto-label{font-size:.82rem;font-weight:600}body.desktop-app .cv-files-auto-sub{font-size:.7rem;color:var(--muted)}body.desktop-app .cv-files-hint,body.desktop-app .cv-files-empty,body.desktop-app .cv-folder,body.desktop-app .cv-file,body.desktop-app .cv-file-name,body.desktop-app .cv-file-meta{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}body.desktop-app .cv-files-hint,body.desktop-app .cv-file-name,body.desktop-app .cv-file-meta,body.desktop-app .cv-folder{white-space:nowrap}body.desktop-app .cv-file{box-sizing:border-box}body.desktop-app .cv-files.cv-pane-collapsed{width:100%;padding:0;overflow:hidden}body.desktop-app .cv-main{position:relative;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:0;background:var(--bg)}body.desktop-app .cv-layout{flex:1;min-height:0;grid-template-columns:240px minmax(0,1fr);height:100%}body.desktop-app .cv-welcome{flex:1;display:grid;place-items:center;min-height:0;background:radial-gradient(ellipse 80% 50% at 50% 40%,rgba(107,158,255,.08),transparent 70%),var(--bg)}body.desktop-app .cv-welcome-card{background:transparent;border:none;border-radius:0;box-shadow:none;padding:24px 28px;max-width:420px;width:100%;text-align:center}body.desktop-app .cv-welcome-icon{width:48px;height:48px;margin:0 auto 18px;border-radius:12px;background:var(--surface);border:1px solid var(--line);color:var(--ink-2);box-shadow:none;display:grid;place-items:center;font-size:1.35rem}body.desktop-app .cv-welcome-card h2{font-size:1.45rem;margin-bottom:10px;letter-spacing:-.03em;font-weight:650}body.desktop-app .cv-welcome-lead{color:var(--ink-2);font-size:.92rem;line-height:1.55}body.desktop-app .cv-welcome-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:16px 0 12px}body.desktop-app .cv-export-bar{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}body.desktop-app .cv-files-url{flex:none;height:34px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font:inherit;font-size:.72rem;font-weight:700;padding:0 12px;border-radius:8px;cursor:pointer}body.desktop-app .cv-files-url:hover{color:var(--accent-strong);border-color:var(--accent-line);background:var(--accent-soft)}body.desktop-app .cv-welcome-card .cv-paste{text-align:left;margin-top:4px;min-height:72px;resize:vertical;background:var(--surface)}body.desktop-app .cv-welcome-hint{margin-top:20px;font-size:.76rem;color:var(--muted);line-height:1.45}body.desktop-app .app-panel{flex:1;overflow:auto;padding:20px 24px;max-width:none;width:100%}body.desktop-app .cv-canvas{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg);border:none;border-radius:0;box-shadow:none}body.desktop-app .cv-canvas-head{flex-shrink:0;border-bottom:1px solid var(--line);background:var(--bg);gap:8px;padding:6px 10px;font-size:.76rem}body.desktop-app .cv-report-detail{max-height:min(38vh,320px);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(138,146,158,.35) transparent}body.desktop-app .cv-vec-panel{margin:8px 0 4px;padding:6px 0 2px;border-top:1px solid var(--line)}body.desktop-app .cv-vec-panel>summary{font-size:.72rem;font-weight:600;color:var(--ink-2);cursor:pointer;list-style:none}body.desktop-app .cv-vec-panel>summary::-webkit-details-marker{display:none}body.desktop-app .cv-vec-hint,body.desktop-app .cv-vec-status{margin:4px 0;font-size:.68rem;line-height:1.35}body.desktop-app .cv-vec-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0}body.desktop-app .cv-vec-thr-lbl{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;color:var(--muted)}body.desktop-app .cv-vec-threshold{width:4.2rem;font:inherit;font-size:.72rem;padding:2px 6px;border:1px solid var(--line-strong);border-radius:var(--r-xs);background:var(--surface);color:var(--ink)}body.desktop-app .cv-vec-pairs{margin:6px 0 0;padding-left:1.1em;font-size:.68rem;color:var(--muted);line-height:1.4}body.desktop-app .cv-vec-result{margin-top:6px}body.desktop-app .cv-report.cv-report-focus .cv-report-detail,body.desktop-app .cv-report.cv-report-focus .cv-report-detail-focus{max-height:none;flex:1;min-height:0;margin-top:0;border-top:none;overflow:visible}body.desktop-app .cv-report-focus-body{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}body.desktop-app .cv-report-focus-head{flex-shrink:0;gap:8px}body.desktop-app .cv-report-focus-head .cv-report-focus-title{flex:1;min-width:0;font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}body.desktop-app .cv-report-back{border:none;background:transparent;cursor:pointer;color:var(--accent-strong);font-size:.82rem;font-weight:600;padding:4px 8px 4px 0;flex-shrink:0}body.desktop-app .cv-report-back:hover{text-decoration:underline}body.desktop-app .cv-report-detail-head-inline{margin-bottom:4px}body.desktop-app .cv-report-detail-head-inline .cv-report-letter{margin-right:auto}body.desktop-app .cv-report-detail::-webkit-scrollbar{width:5px;height:0}body.desktop-app .cv-report-detail::-webkit-scrollbar-thumb{background:#8a929e59;border-radius:999px}.explain{text-align:center;max-width:720px;margin:8px auto 26px}.explain h1{font-size:clamp(1.6rem,4.4vw,2.15rem)}.explain .sub{color:var(--ink-2);font-size:1.05rem;margin-top:12px}.explain .scope{color:var(--muted);font-size:.92rem;margin-top:10px}.how3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 auto 26px;max-width:900px}.how3 .step{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;gap:12px;align-items:flex-start}.how3 .ic{flex:none;width:34px;height:34px;border-radius:10px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;font-size:1.05rem}.how3 .step b{display:block;font-size:.92rem}.how3 .step span{color:var(--muted);font-size:.85rem}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.stack{max-width:760px;margin-inline:auto;display:flex;flex-direction:column;gap:14px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.section-head h2{font-size:1.02rem}.step-tag{font-size:.78rem;font-weight:700;color:var(--accent-strong);background:var(--accent-soft);border-radius:var(--r-pill);padding:3px 9px}.hint{color:var(--muted);font-size:.85rem;margin:4px 0 14px}.demos{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.demo-chip{font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;color:var(--accent-strong);background:var(--accent-soft);border:1px solid var(--accent-line);padding:7px 13px;border-radius:var(--r-pill)}.demo-chip:hover{background:#dcf1e7}.examples{display:flex;flex-direction:column;gap:9px}.ex-row{display:grid;grid-template-columns:1fr 22px 1fr 30px;align-items:center;gap:8px}.ex-row .arrow{color:var(--muted);text-align:center;font-weight:700}.icon-btn{background:none;border:1px solid transparent;color:var(--muted);border-radius:var(--r-xs);width:30px;height:30px;cursor:pointer}.icon-btn:hover{background:var(--danger-soft);color:var(--danger)}.actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.result-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;color:var(--muted);padding:20px 8px}.result-empty .big-ic{width:52px;height:52px;border-radius:14px;background:var(--bg-soft);display:grid;place-items:center;font-size:1.5rem}.verified-badge{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:var(--accent-strong);background:var(--accent-soft);border:1px solid var(--accent-line);padding:4px 10px;border-radius:var(--r-pill)}.human{font-size:1.05rem;font-weight:600;margin:12px 0 4px}.recipe-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.recipe-line .lbl-mini{font-size:.78rem;color:var(--muted)}.recipe{font-family:var(--mono);font-size:.85rem;color:var(--ink);background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r-xs);padding:6px 10px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.result-actions{display:flex;gap:10px;margin:16px 0 6px;flex-wrap:wrap}.diff-head{font-size:.82rem;color:var(--muted);margin:18px 0 8px;font-weight:600}.diff{display:flex;flex-direction:column;gap:6px;max-height:440px;overflow-y:auto;padding-right:4px}.diff-row{display:grid;grid-template-columns:1fr 20px 1fr;align-items:center;gap:8px}.diff-row code{font-family:var(--mono);font-size:.82rem;padding:7px 10px;border-radius:var(--r-xs);overflow-x:auto;white-space:nowrap}.diff-row .arrow{color:var(--muted);text-align:center}.dirty{background:var(--dirty-bg);color:var(--dirty-ink)}.clean{background:var(--clean-bg);color:var(--clean-ink)}.hist{display:flex;flex-direction:column;gap:6px}.hist .recipe{margin:0}.hist-meta{color:var(--muted);font-size:.78rem}.empty-hist{text-align:center;color:var(--muted);padding:40px 0}.flash{position:fixed;bottom:26px;left:50%;transform:translate(-50%,16px);background:var(--ink);color:#fff;padding:11px 18px;border-radius:var(--r-sm);font-size:.9rem;font-weight:600;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50}.flash.show{opacity:1;transform:translate(-50%)}body.desktop-app .flash{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);box-shadow:var(--shadow)}.col-picker{margin-top:12px;padding:14px;border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-sm)}.col-picker-title{font-size:.88rem;font-weight:600;color:var(--accent-strong);margin-bottom:10px}.col-picker .lbl{color:var(--ink-2)}.row-ops{margin-top:14px;padding:14px;border:1px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--bg-soft)}.row-ops-title{font-size:.82rem;font-weight:600;color:var(--ink-2);margin-bottom:10px}.row-ops-btns{display:flex;flex-wrap:wrap;gap:8px}.table-preview{margin-top:14px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm)}.table-preview table{border-collapse:collapse;width:100%;font-size:.82rem;font-family:var(--mono)}.table-preview th{text-align:left;background:var(--bg-soft);color:var(--ink-2);font-weight:700;padding:8px 10px;border-bottom:1px solid var(--line);position:sticky;top:0}.table-preview td{padding:7px 10px;border-bottom:1px solid var(--line);white-space:nowrap;color:var(--ink-2)}.table-preview tr:last-child td{border-bottom:none}.hist-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.code-label{font-size:.76rem;color:var(--muted);font-weight:600;margin:12px 0 6px}.code-full{font-family:var(--mono);font-size:.8rem;line-height:1.5;color:var(--ink);background:#0f141b;color:#d7e0ec;padding:14px;border-radius:var(--r-sm);overflow-x:auto;white-space:pre;margin:0;border:1px solid var(--line-strong)}.wrap{padding:20px 0 60px}.cv-root{width:min(1280px,100% - 32px);margin-inline:auto}.cv-empty{width:min(720px,100%);margin:24px auto;display:flex;flex-direction:column;gap:16px}.cv-empty-head h1{font-size:1.6rem;margin-bottom:8px;text-wrap:balance}.cv-empty-head p{color:var(--muted)}.cv-privacy{font-size:.82rem;color:var(--accent-strong);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-pill);padding:7px 14px;align-self:flex-start}.cv-paste{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:12px 14px;font-family:var(--mono);font-size:.82rem;line-height:1.5;background:var(--surface);color:var(--ink);resize:vertical}.cv-empty-actions{display:flex;gap:10px;flex-wrap:wrap}.cv-error{color:var(--danger);font-size:.86rem}body.desktop-app .cv-layout{display:flex;flex:1;min-height:0}body.desktop-app .cv-workbench:not(.cv-workbench-split){display:flex}.cv-layout{display:grid;grid-template-columns:264px 1fr;gap:16px;align-items:start}.cv-workbench{display:grid;grid-template-columns:240px minmax(0,1fr) 300px;gap:0;align-items:stretch;min-height:0}@media(max-width:1200px){.cv-workbench{grid-template-columns:220px minmax(0,1fr) 260px}}@media(max-width:960px){.cv-workbench{grid-template-columns:1fr}.cv-report,.cv-files{max-height:40vh}}@media(max-width:880px){.cv-layout{grid-template-columns:1fr}}.cv-files{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:12px;max-height:calc(100vh - 120px);overflow:auto;position:sticky;top:12px}.cv-files h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:4px}.cv-files h3{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px}.cv-files-hint{font-size:.78rem;color:var(--ink-2);line-height:1.45;margin-bottom:10px}.cv-files-actions{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.cv-files-empty{font-size:.8rem;color:var(--muted);line-height:1.5;padding:8px 2px}.cv-folder{font-size:.78rem;color:var(--ink-2);padding:4px 6px;border-radius:6px;background:var(--bg-soft);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-file{display:block;width:100%;text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;padding:8px;cursor:pointer;margin-bottom:4px}.cv-file:hover{background:var(--bg-soft);border-color:var(--line)}.cv-file.active{border-color:var(--accent);background:var(--accent-soft)}.cv-file-name{display:block;font-size:.86rem;font-weight:600;color:var(--ink)}.cv-file-meta{display:block;font-size:.72rem;color:var(--muted);margin-top:2px}.cv-rel{font-size:.76rem;color:var(--ink-2);padding:6px 8px;border-left:2px solid var(--accent-soft);margin-bottom:6px;line-height:1.4}.cv-rel-cols{font-family:var(--mono, ui-monospace, monospace);font-size:.72rem}body.desktop-app .cv-tools-panel{flex:1;min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column}body.desktop-app .cv-tools-panel[hidden]{display:none!important}body.desktop-app .cv-tools-panel-model,body.desktop-app .cv-tools-panel-joins{padding:12px 14px 16px;overflow-y:auto}body.desktop-app .cv-tools-empty{margin:8px 0;font-size:.78rem;color:var(--muted);line-height:1.45}body.desktop-app .cv-model-panel .cv-model-lead{margin:0 0 10px;font-size:.78rem;color:var(--ink-2);line-height:1.4}body.desktop-app .cv-tools-panel-report{overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:column}body.desktop-app .cv-tools-panel-report>.cv-report{flex:1;min-height:0;height:auto;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-tools-panel-activity-wrap{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}body.desktop-app .cv-report-summary,body.desktop-app .cv-report-formulas,body.desktop-app .cv-report .cv-pack-id{flex-shrink:0}.cv-report{background:var(--surface);border-left:1px solid var(--line);padding:12px;max-height:calc(100vh - 120px);overflow:hidden;display:flex;flex-direction:column;min-height:0}body.desktop-app .cv-report{border-radius:0;box-shadow:none;max-height:none;flex:1;min-height:0;width:100%;border:none;background:transparent;padding:10px 12px 10px 10px;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-report.cv-pane-collapsed{width:100%;padding:0;overflow:hidden}.cv-report-summary{margin-bottom:10px;flex-shrink:0}.cv-report-lang{font-size:.78rem;font-weight:600;color:var(--accent-strong);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-sm);padding:8px 10px;margin-bottom:8px}.cv-report-lang.mixed{color:var(--warn);background:var(--warn-soft);border-color:#fcd34d}.cv-report-lang-label{display:block}.cv-report-lang-warn{margin:6px 0 0;font-size:.74rem;font-weight:500;color:var(--ink-2);line-height:1.4}.cv-report-lead{font-size:.86rem;color:var(--ink-2);line-height:1.35;margin:0 0 2px}.cv-report-meta{font-size:.76rem;color:var(--muted);margin:0}.cv-report-scale{color:var(--ink-2)}.cv-report-scale[data-scale-status=loading]{font-style:italic}.cv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cv-hitl-write-tray .cv-job-tray-head{color:var(--warn, #c2410c)}.cv-report-empty{font-size:.82rem;color:var(--muted);line-height:1.5;padding:8px 2px}.cv-clean-btn{margin-bottom:10px;flex-shrink:0}.cv-report-section-title{margin:0 0 6px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.cv-report-applied{margin:0 0 10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft)}.cv-report-applied-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.cv-report-applied-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px;font-size:.78rem;line-height:1.35}.cv-report-applied-kind{font-size:.64rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:1px 6px;border-radius:var(--r-xs);border:1px solid var(--line);color:var(--ink-2);background:var(--surface)}.cv-report-applied-kind.kind-dominio{color:var(--accent-strong);border-color:var(--accent-line);background:var(--accent-soft)}.cv-report-applied-kind.kind-convert{color:var(--clean-ink);border-color:#6ed9a859;background:var(--clean-bg)}.cv-report-applied-kind.kind-excel{color:var(--warn);border-color:#e8b84a59;background:var(--warn-soft)}.cv-report-applied-kind.kind-pbe{color:var(--accent-strong);border-color:var(--accent-line);background:var(--accent-soft)}.cv-report-applied-label{color:var(--ink);font-weight:600}.cv-report-applied-detail{flex:1 1 100%;font-size:.7rem;margin:0}.cv-report-scroll{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:8px}.cv-report-card{display:block;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px;cursor:pointer;transition:border-color .15s,background .15s}.cv-report-card:hover{border-color:var(--line-strong);background:var(--bg-soft)}.cv-report-card.selected{border-color:var(--accent);background:var(--accent-soft)}.cv-report-card.sev-error{border-left:3px solid var(--danger)}.cv-report-card.sev-warn{border-left:3px solid var(--warn)}.cv-report-card.sev-ok{border-left:3px solid var(--accent-line)}.cv-report-card-head{display:flex;align-items:center;gap:6px;margin-bottom:4px}.cv-report-letter{font-family:var(--mono);font-size:.72rem;color:var(--muted)}.cv-report-name{flex:1;font-size:.84rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis}.cv-report-sev{font-size:.7rem}.cv-report-sev.sev-error{color:var(--danger)}.cv-report-sev.sev-warn{color:var(--warn)}.cv-report-sev.sev-ok{color:var(--accent-strong)}.cv-report-kind{font-size:.76rem;color:var(--muted);margin:0 0 6px}.cv-report-issues{margin:0;padding-left:1.1rem;font-size:.76rem;color:var(--ink-2);line-height:1.4}.cv-report-ok{font-size:.76rem;color:var(--accent-strong);margin:0}.cv-report-card-hint{font-size:.74rem;color:var(--muted);margin:0;line-height:1.35}.cv-report-detail{flex-shrink:0;border-top:1px solid var(--line);margin-top:8px;background:var(--bg-soft);border-radius:var(--r-sm);padding:12px}.cv-report-detail-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.cv-report-detail-head strong{flex:1;font-size:.9rem}.cv-report-detail-close{border:none;background:transparent;cursor:pointer;color:var(--muted);font-size:.85rem;padding:2px 6px}.cv-report-detail-kind{font-size:.76rem;color:var(--muted);margin:0 0 8px}.cv-report-cell-edit{margin:0 0 12px;display:flex;flex-direction:column;gap:6px}.cv-report-cell-chip{display:flex;align-items:baseline;gap:8px;margin:0;padding:6px 8px;border-radius:var(--r-xs);background:var(--bg-soft);border:1px solid var(--line);font-size:.76rem;line-height:1.35;min-width:0}.cv-report-cell-ref{flex-shrink:0;font-weight:700;font-family:var(--mono);color:var(--accent-strong)}.cv-report-cell-hint{font-size:.68rem;color:var(--muted)}.cv-report-cell-val{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-family:var(--mono);font-size:.72rem}.cv-report-cell-input{font-family:var(--mono)!important;font-size:.78rem!important}.cv-report-cell-edit-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cv-report-cell-note{font-size:.66rem}.cv-report-formula{margin:10px 0}.cv-report-formula-label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}.cv-report-formula-code{display:block;font-family:var(--mono);font-size:.78rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:8px;line-height:1.45;color:var(--ink-2)}.cv-report-previews{display:flex;flex-direction:column;gap:4px;margin:8px 0}.cv-report-preview-row{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.74rem;flex-wrap:wrap}.cv-report-preview-in{color:var(--dirty-ink);max-width:45%;overflow:hidden;text-overflow:ellipsis}.cv-report-preview-out{color:var(--clean-ink);font-weight:600}.cv-report-detail-note{font-size:.74rem;color:var(--muted);margin:8px 0;line-height:1.4}.cv-report-steps{display:flex;flex-direction:column;gap:6px;margin:10px 0}.cv-report-step{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--ink-2);line-height:1.35;cursor:pointer}.cv-report-step input{margin-top:3px;flex-shrink:0;accent-color:var(--accent)}.cv-report-step-wrap{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px;padding:6px 8px;background:var(--surface);border:1px solid var(--line);border-radius:6px}.cv-report-step-wrap .cv-report-step{flex:1;min-width:140px;margin:0}.cv-report-step-remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:2px 6px}.cv-report-step-remove:hover{color:var(--danger)}.cv-report-date-fs{font-size:.74rem;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--bg-soft);color:var(--ink-2);max-width:100%}.cv-report-add-step{display:flex;gap:6px;align-items:center;margin:8px 0}.cv-report-add-step-select{flex:1;font-size:.78rem;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.cv-report-detail-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;align-items:center}.cv-report-detail-actions .btn.primary{flex:none;min-width:0}body.desktop-app .cv-report-detail-actions .btn.primary[disabled]{opacity:.55;font-weight:500}body.desktop-app .cv-report-card{padding:7px 8px;border-radius:var(--r-xs)}body.desktop-app .cv-report-name{font-size:.78rem}body.desktop-app .cv-report-detail{padding:8px;border-radius:var(--r-xs)}body.desktop-app .cv-report-detail-head strong{font-size:.82rem}body.desktop-app .cv-report-lead{font-size:.78rem}body.desktop-app .cv-tbl td{font-size:.74rem}.cv-report-card.sev-resolved{border-left:3px solid var(--accent);opacity:.92}.cv-report-review-badge{font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:var(--r-pill)}.cv-report-review-badge.applied{background:var(--clean-bg);color:var(--clean-ink)}.cv-report-review-badge.skipped{background:var(--bg-soft);color:var(--muted)}.cv-report-pii-tag{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 5px;border-radius:4px;background:var(--warn-soft);color:var(--warn);flex-shrink:0}body.desktop-app .cv-report-detail-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.cv-report-shape-note{margin:6px 0 0;font-size:.72rem;color:var(--ink-2);line-height:1.4}.cv-report-diagnosis{margin:0 0 12px;padding:8px 10px;border-radius:6px;background:var(--bg-soft);border:1px solid var(--line)}.cv-report-diagnosis p{margin:0;font-size:.78rem;color:var(--ink-2);line-height:1.45}.cv-report-diagnosis p+p{margin-top:4px}.cv-report-action-block{flex-shrink:0;margin-bottom:10px}.cv-report-fold{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.cv-report-fold summary{cursor:pointer;font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;list-style:none}.cv-report-fold summary::-webkit-details-marker{display:none}.cv-report-fold[open] summary{margin-bottom:8px;color:var(--ink-2)}.cv-report-preview-row.unchanged{opacity:.55}.cv-report-preview-note{margin:6px 0 0;font-size:.72rem;color:var(--muted);font-style:italic}.cv-col-tag{margin:8px 0 10px}.cv-report-tag-select,.cv-report-tag-desc{width:100%;font-size:.78rem;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink-2);margin-top:4px}.cv-report-tag-desc-row{display:flex;gap:6px;margin-top:6px;align-items:center}.cv-report-tag-desc-row .cv-report-tag-desc{flex:1;margin-top:0}.cv-report-tag-hint{margin:8px 0 0;font-family:var(--mono);font-size:.68rem;color:var(--muted);word-break:break-all}.cv-rail{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:14px}.cv-rail h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:2px}.cv-file{font-family:var(--mono);font-size:.76rem;color:var(--ink-2);margin-bottom:12px}.cv-step{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:7px;cursor:pointer;background:var(--surface)}.cv-step:hover{border-color:var(--line-strong)}.cv-step.sel{border-color:var(--accent);background:var(--accent-soft)}.cv-step-n{font-family:var(--mono);font-size:.7rem;color:var(--muted);padding-top:2px}.cv-step-t{flex:1;font-size:.82rem;line-height:1.35}.cv-step-t b{display:block;font-weight:600;margin-bottom:3px}.cv-badge{display:inline-block;font-size:.68rem;color:var(--accent-strong);background:var(--surface);border:1px solid var(--accent-line);border-radius:var(--r-pill);padding:1px 8px}.cv-badge.exact{color:var(--muted);border-color:var(--line)}.cv-step-x{border:none;background:none;color:var(--muted);font-size:.8rem;padding:2px 5px;border-radius:6px;cursor:pointer}.cv-step-x:hover{color:var(--danger);background:var(--danger-soft)}.cv-rail-empty{font-size:.82rem;color:var(--muted);line-height:1.5;padding:4px 2px 10px}.cv-rail-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.cv-canvas{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}.cv-canvas-head{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);flex-wrap:wrap}.cv-meta{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.cv-delta{font-size:.8rem;color:var(--accent-strong);font-weight:600;font-variant-numeric:tabular-nums}.cv-spacer{flex:1}.cv-tblwrap{overflow-x:auto}.cv-tbl{border-collapse:collapse;width:100%;font-size:.8rem}.cv-tbl th{text-align:left;padding:0;background:var(--bg-soft);border-bottom:1px solid var(--line);position:sticky;top:0;min-width:120px;vertical-align:top}.cv-tbl th.touched .cv-colbtn{box-shadow:inset 3px 0 0 var(--accent)}.cv-colbtn{width:100%;border:none;background:transparent;text-align:left;padding:8px 10px 4px;color:var(--ink);font-weight:600;font-size:.8rem;display:flex;align-items:center;gap:6px;cursor:pointer}.cv-colbtn:hover{background:var(--accent-soft)}.cv-caret{color:var(--muted);font-size:.62rem;margin-left:auto}.cv-prof{display:flex;gap:4px;padding:0 10px 7px;flex-wrap:wrap}.cv-pchip{font-family:var(--mono);font-size:.62rem;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:1px 5px;white-space:nowrap}.cv-pchip.pii{color:#9a6a12;border-color:#e4c983;background:#fbf3e0}.cv-tbl td{padding:2px 8px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.74rem;white-space:nowrap;line-height:1.25}.cv-tbl td.cv-new{background:var(--clean-bg);color:var(--clean-ink)}.cv-old{display:block;font-size:.62rem;color:var(--muted);text-decoration:line-through}.cv-nul{color:var(--danger);opacity:.65}.cv-foot{padding:8px 14px;font-size:.7rem;color:var(--muted);border-top:1px solid var(--line);display:flex;gap:14px;flex-wrap:wrap}.cv-menu{z-index:60;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-lg);padding:5px;min-width:224px}.cv-menu button{display:block;width:100%;text-align:left;border:none;background:none;color:var(--ink);padding:8px 10px;border-radius:var(--r-xs);font-size:.82rem;cursor:pointer}.cv-menu button:hover{background:var(--accent-soft)}.cv-menu button b{color:var(--accent-strong)}.cv-menu-sep{height:1px;background:var(--line);margin:4px 6px}.cv-menu-label{margin:4px 10px 2px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}@media(prefers-reduced-motion:no-preference){.cv-step,.cv-menu button{transition:background .12s ease,border-color .12s ease}}.card.rec{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.rec-main{flex:1;min-width:240px}.rec-meta{font-size:.8rem;color:var(--muted);margin-top:4px;display:flex;gap:7px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.rec-dot{opacity:.5}.rec-steps{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.rec-chip{font-family:var(--mono);font-size:.68rem;color:var(--ink-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:6px;padding:2px 7px}.rec-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.rerun-head{display:flex;align-items:center;gap:12px}.rerun-ok{margin-top:16px;padding:14px 16px;border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:var(--r-sm);display:flex;flex-direction:column;gap:10px;align-items:flex-start}.rerun-err{margin-top:16px;padding:14px 16px;border:1px solid #efc7c7;background:var(--danger-soft);border-radius:var(--r-sm)}.cv-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.cv-stat{border:1px solid var(--line);border-radius:var(--r-xs);padding:8px 10px;background:var(--bg-soft)}.cv-stat-action{display:block;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;border-color:var(--accent-line, var(--line));background:var(--accent-soft, var(--bg-soft))}.cv-stat-action:hover{border-color:var(--accent, var(--line-strong))}.cv-stat-action.is-active{border-color:var(--accent, var(--accent-strong));box-shadow:inset 0 0 0 1px var(--accent, transparent)}.cv-stat-v{display:block;font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums}.cv-stat-l{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.cv-pii-block{margin-top:12px;padding:12px;border:1px solid #e4c983;background:#fbf3e0;border-radius:var(--r-sm)}.cv-pii-block p{font-size:.8rem;color:#7a5a12;margin-bottom:8px}.cv-bars{display:flex;flex-direction:column;gap:5px;margin-top:6px}.cv-bar-row{display:grid;grid-template-columns:90px 1fr 28px;gap:8px;align-items:center}.cv-bar-val{font-family:var(--mono);font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-bar-track{height:12px;background:var(--bg-soft);border-radius:6px;overflow:hidden}.cv-bar-fill{display:block;height:100%;background:var(--accent);border-radius:6px}.cv-bar-n{font-family:var(--mono);font-size:.68rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}body.desktop-app .app-palette-btn{margin-left:auto;font-family:var(--mono);letter-spacing:.02em}.cv-palette{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;align-items:flex-end;justify-content:center;padding:0 12px 12px;pointer-events:none}.cv-palette.show{display:flex}.cv-palette-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000002e;pointer-events:auto}.cv-palette-panel{position:relative;width:min(640px,96vw);max-height:48vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm) var(--r-sm) 0 0;padding:10px;gap:8px;pointer-events:auto;box-shadow:0 -8px 32px #0003}.cv-palette-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:.85rem}.cv-palette-hint{color:var(--muted);font-size:.72rem;font-family:var(--mono)}.cv-palette-meta{font-size:.7rem;color:var(--muted);font-variant-numeric:tabular-nums}.cv-palette-input{width:100%}.cv-palette-list{overflow:auto;max-height:28vh;display:flex;flex-direction:column;gap:2px}.cv-palette-item{display:grid;grid-template-columns:64px 1fr auto;grid-template-rows:auto auto;gap:0 8px;text-align:left;border:none;background:transparent;color:var(--ink);padding:7px 8px;border-radius:var(--r-xs);cursor:pointer;font-size:.8rem}.cv-palette-item:hover,.cv-palette-item.active{background:var(--accent-soft)}.cv-palette-kind{grid-row:1 / 3;align-self:center;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-strong);font-weight:600}.cv-palette-label{font-weight:600}.cv-palette-mode{justify-self:end;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:1px 5px;border-radius:4px;background:var(--bg-soft);border:1px solid var(--line)}.cv-palette-id{grid-column:2 / 4;font-family:var(--mono);font-size:.68rem;color:var(--muted)}.cv-palette-empty{padding:16px 8px;color:var(--muted);font-size:.8rem}.cv-palette-args{border:1px solid var(--line);border-radius:var(--r-xs);padding:8px;display:flex;flex-direction:column;gap:6px;background:var(--bg-soft)}.cv-palette-args[hidden]{display:none!important}.cv-palette-args-title{font-size:.75rem;font-weight:600}.cv-palette-args-hint{font-weight:400;color:var(--muted);font-size:.72rem}.cv-palette-arg{display:grid;grid-template-columns:90px 1fr;gap:8px;align-items:center;font-size:.75rem;color:var(--muted)}.cv-palette-arg-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:0}body.desktop-app .cv-pipe-dot{width:7px;height:7px;padding:0;border:none;border-radius:50%;background:var(--line-strong);opacity:.45;cursor:pointer}body.desktop-app .cv-pipe-dot:hover{opacity:.85}body.desktop-app .cv-pipe-dot.done{opacity:.7;background:var(--ink-2)}body.desktop-app .cv-pipe-dot.active{opacity:1;background:var(--accent);transform:scale(1.25)}body.desktop-app .cv-empty{flex:1;min-height:0;width:min(520px,100%);margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;background:var(--bg)}body.desktop-app .cv-empty-hero{display:flex;flex-direction:column;align-items:center;gap:12px}body.desktop-app .cv-empty-title{font-size:1.75rem;font-weight:650;letter-spacing:-.02em;margin:0}body.desktop-app .cv-empty-sub{margin:0;max-width:28rem;line-height:1.45}body.desktop-app .cv-main-table-empty .cv-main-body{display:flex;flex:1;min-height:0;align-items:stretch;justify-content:center}body.desktop-app .cv-main-empty .cv-main-body{display:none}body.desktop-app .cv-main-empty.cv-chat-main{flex-direction:column}body.desktop-app .cv-main-empty .cv-workspace-stage-host{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;padding:clamp(12px,3vw,28px) clamp(16px,4vw,40px)}body.desktop-app .cv-stage-welcome-host{background:radial-gradient(ellipse 70% 55% at 50% 18%,rgba(107,158,255,.08),transparent 72%),var(--bg)}body.desktop-app .cv-stage-welcome{max-width:720px;margin:0 auto;width:100%}body.desktop-app .cv-stage-welcome-kicker{margin:0 0 .35rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}body.desktop-app .cv-stage-welcome-title{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.02em}body.desktop-app .cv-stage-welcome-lead{margin:0 0 1.25rem;color:var(--muted);font-size:.95rem;line-height:1.5;max-width:36rem}body.desktop-app .cv-stage-welcome-foot{margin:1.25rem 0 0;font-size:.82rem}body.desktop-app .cv-main-empty .cv-orch-dock{flex:0 0 auto;min-height:0;border-top:1px solid var(--line);background:var(--bg-soft)}body.desktop-app .cv-main-empty .cv-orch-dock.is-stage-welcome.is-drawer-collapsed .cv-orch-body{display:none}body.desktop-app .cv-main-empty .cv-orch-drawer-head{justify-content:center;padding:.45rem .75rem}body.desktop-app .cv-lienzo-main{display:flex;flex-direction:column;flex:1 1 0;min-height:0}body.desktop-app .cv-lienzo-main .cv-workspace-stage-host{flex:0 1 auto;max-height:42%;min-height:0;border-bottom:none;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(138,146,158,.45) transparent}body.desktop-app .cv-lienzo-main .cv-workspace-stage-host::-webkit-scrollbar{width:6px}body.desktop-app .cv-lienzo-main .cv-workspace-stage-host::-webkit-scrollbar-thumb{background:#8a929e73;border-radius:4px}body.desktop-app .cv-lienzo-main.cv-has-data-pane .cv-workspace-stage-host{max-height:44%}body.desktop-app .cv-lienzo-main:not(.cv-has-data-pane) .cv-workspace-stage-host{flex:1 1 auto;max-height:none}body.desktop-app .cv-lienzo-data{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--sheet-cell);margin:0;padding:0}body.desktop-app .cv-lienzo-data[hidden],body.desktop-app .cv-main-empty .cv-lienzo-data{display:none!important}body.desktop-app .cv-main-empty .cv-workspace-stage-host{flex:1 1 auto;max-height:none;min-height:0}body.desktop-app .cv-main-empty .cv-lienzo-main .cv-orch-dock{flex:0 0 auto;max-height:none}body.desktop-app .cv-center-stack{position:relative;flex:1 1 0;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-center-stack>.cv-lienzo-main{flex:1 1 0;min-height:0}body.desktop-app .cv-investigate-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:22;pointer-events:none}body.desktop-app .cv-investigate-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e73;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s linear .2s;pointer-events:none}body.desktop-app .cv-investigate-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s}body.desktop-app .cv-investigate-slide{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:row;justify-content:flex-end;transform:translate(calc(100% + 8px));transition:transform .22s ease;pointer-events:none}body.desktop-app .cv-investigate-slide.is-open{transform:translate(0);pointer-events:auto}body.desktop-app .cv-investigate-slide-inner{height:calc(100% - 16px);min-height:0;margin:8px 8px 8px 0;display:flex;flex-direction:row;align-items:stretch;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px 0 0 12px;box-shadow:var(--shadow-sm, 0 4px 16px rgba(0, 0, 0, .18));overflow:hidden}body.desktop-app .cv-investigate-slide-main{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-investigate-slide-handle{flex:none;width:6px;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none}body.desktop-app .cv-investigate-slide.is-open .cv-investigate-slide-handle:hover,body.desktop-app.cv-investigate-slide-dragging .cv-investigate-slide-handle{background:linear-gradient(90deg,var(--accent),transparent);opacity:.35}body.desktop-app.cv-investigate-slide-dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}body.desktop-app .cv-investigate-slide-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px 8px 0;border-bottom:1px solid var(--line);font-weight:600;font-size:.9rem}body.desktop-app .cv-investigate-slide-body{flex:1 1 0;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-orch-dock.cv-orch-in-slide{flex:1 1 0;min-height:0;height:100%;border:none;background:transparent}body.desktop-app .cv-orch-dock.cv-orch-in-slide .cv-orch-body{flex:1 1 0;min-height:0;overflow:hidden;display:flex;flex-direction:column}body.desktop-app .cv-orch-dock.cv-orch-in-slide .cv-orch-agent{flex:1 1 0;min-height:0;overflow:auto}body.desktop-app .cv-lienzo-chrome-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:0;padding:0 6px;border-bottom:1px solid var(--line)}body.desktop-app .cv-lienzo-chrome{display:none!important}body.desktop-app .cv-lienzo-chrome-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .65rem;padding:6px 10px 2px;min-width:0}body.desktop-app .cv-lienzo-chrome-file{font-weight:550;font-size:.88rem;color:var(--ink)}body.desktop-app .cv-lienzo-chrome-domain,body.desktop-app .cv-lienzo-chrome-stats{font-size:.75rem}body.desktop-app .cv-lienzo-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-bottom:1px solid transparent;border-radius:0;padding:.3rem .55rem;font-size:.75rem;font-weight:500;color:var(--muted);background:transparent;cursor:pointer;margin-bottom:-1px}body.desktop-app .cv-lienzo-tab:hover{color:var(--text);background:transparent}body.desktop-app .cv-lienzo-tab.is-active{color:var(--ink);border-bottom-color:var(--ink);background:transparent}body.desktop-app .cv-lienzo-domain-focus .cv-workspace-stage-host{flex:1 1 0;max-height:none;min-height:0}body.desktop-app .cv-lienzo-data-focus .cv-workspace-stage-host,body.desktop-app .cv-workspace-stage-host[hidden]{display:none!important;flex:0 0 0!important;height:0!important;max-height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;border:none!important}body.desktop-app .cv-lienzo-data-focus .cv-lienzo-data{flex:1 1 0;min-height:0}body.desktop-app .cv-ws-tab-body .cv-ws-widget>h3:first-child{display:none}body.desktop-app .cv-lienzo-data .cv-main-body{flex:1;min-height:0;overflow:hidden;padding:0}body.desktop-app .cv-insight-panel{height:100%;min-height:0;display:flex;flex-direction:column}body.desktop-app .cv-insight-slide{position:absolute;top:0;right:0;bottom:0;z-index:24;display:flex;flex-direction:row;align-items:stretch;pointer-events:none;visibility:hidden;transform:translate(calc(100% + 12px));transition:transform .22s ease,visibility 0s linear .22s}body.desktop-app .cv-insight-slide.is-open{pointer-events:auto;visibility:visible;transform:translate(0);transition:transform .22s ease,visibility 0s}body.desktop-app .cv-insight-slide-inner{height:calc(100% - 16px);min-height:0;margin:8px 8px 8px 0;display:flex;flex-direction:column;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-sm, 0 4px 16px rgba(0, 0, 0, .12));overflow:hidden}body.desktop-app .cv-insight-slide-inner .cv-tools{border:none;border-radius:0;box-shadow:none;height:100%}body.desktop-app .cv-insight-slide-handle{flex:none;width:6px;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;background:transparent}body.desktop-app .cv-insight-slide.is-open .cv-insight-slide-handle:hover,body.desktop-app.cv-insight-slide-dragging .cv-insight-slide-handle{background:linear-gradient(90deg,transparent,var(--accent));opacity:.35}body.desktop-app.cv-insight-slide-dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}body.desktop-app .cv-insight-panel .cv-tools{flex:1;min-height:0;overflow:hidden}body.desktop-app .cv-stage-dropzone{flex:1;min-height:200px;margin:.5rem 0;padding:2rem 1.5rem;border:2px dashed var(--line-strong, var(--line));border-radius:12px;text-align:center;cursor:default}body.desktop-app .cv-stage-dropzone.is-dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}body.desktop-app .cv-stage-drop-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1.25rem}body.desktop-app .cv-stage-drop-title{margin:0 0 .5rem;font-size:1.15rem;font-weight:600}body.desktop-app .cv-stage-status{flex:0 0 auto;display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.78rem;color:var(--muted);background:color-mix(in srgb,var(--accent) 10%,var(--bg));border-bottom:1px solid var(--line)}body.desktop-app .cv-stage-status[hidden]{display:none!important;padding:0;border:none;height:0;overflow:hidden}body.desktop-app .cv-stage-status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:cv-dot-pulse 1.2s ease-in-out infinite}body.desktop-app .cv-chat-main{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%}body.desktop-app .cv-center-mode{display:flex;gap:4px;padding:6px 10px;border-bottom:1px solid var(--line);flex:0 0 auto;background:var(--bg)}body.desktop-app .cv-center-mode[hidden]{display:none!important}body.desktop-app .cv-center-mode-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:8px;cursor:pointer}body.desktop-app .cv-center-mode-btn:hover{color:var(--ink)}body.desktop-app .cv-center-mode-btn.is-active{color:var(--ink);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}body.desktop-app .cv-lienzo-host{display:none;flex:1;min-height:0;overflow:hidden;flex-direction:column;border-bottom:1px solid var(--line)}body.desktop-app .cv-chat-main.cv-main-lienzo .cv-lienzo-host{display:flex}body.desktop-app .cv-chat-main.cv-main-lienzo .cv-lienzo-host .cv-dashboards{flex:1}body.desktop-app .cv-chat-main.cv-main-lienzo .cv-orch-dock{flex:0 1 auto;max-height:44%;min-height:160px}body.desktop-app .cv-orch-dock{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg)}body.desktop-app .cv-orch-dock.is-empty{justify-content:flex-start;background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(107,158,255,.06),transparent 70%),var(--bg)}body.desktop-app .cv-orch-drawer-head{flex:0 0 auto;padding:.35rem .5rem 0;display:flex;justify-content:flex-end}body.desktop-app .cv-orch-dock.is-drawer-collapsed .cv-chat-thread{display:none}body.desktop-app .cv-orch-dock.is-drawer-collapsed .cv-orch-body{max-height:7.5rem;overflow:hidden}body.desktop-app .cv-orch-dock.is-empty.is-drawer-collapsed .cv-orch-body{display:none;max-height:none}body.desktop-app .cv-orch-dock.is-empty.is-drawer-collapsed{flex:0 0 auto}body.desktop-app .cv-workspace-stage-host{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:.5rem 1rem .75rem;border-bottom:none}body.desktop-app .cv-workspace-stage .cv-ws-widget{margin-bottom:.75rem;padding:.5rem 0;border:none;border-bottom:1px solid var(--line);border-radius:0;background:transparent}body.desktop-app .cv-ws-briefing h3{margin:0 0 .5rem;font-size:1rem}body.desktop-app .cv-ws-check.is-block{border-left:3px solid var(--danger, #e55);padding-left:.5rem}body.desktop-app .cv-ws-check.is-warn{border-left:3px solid var(--warn, #da3);padding-left:.5rem}body.desktop-app .cv-ws-approval.is-proposal{border-style:dashed;border-color:var(--accent, #6b9eff);background:#6b9eff0f}body.desktop-app .cv-ws-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}body.desktop-app .cv-ws-exception-list{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.45rem}body.desktop-app .cv-ws-exception{padding:.4rem .55rem;border-radius:var(--r-xs);background:#ffffff08;border-left:3px solid var(--muted)}body.desktop-app .cv-ws-exception.is-warn{border-left-color:var(--warn, #da3)}body.desktop-app .cv-ws-exception.is-block{border-left-color:var(--danger, #e55)}body.desktop-app .cv-ws-mapping-table{width:100%;border-collapse:collapse;font-size:.82rem;margin-top:.35rem}body.desktop-app .cv-ws-mapping-table th,body.desktop-app .cv-ws-mapping-table td{text-align:left;padding:.35rem .45rem;border-bottom:1px solid var(--line)}body.desktop-app .cv-chat-stage-delegate{font-size:.82rem;margin:.35rem 0 0}body.desktop-app .cv-ws-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}body.desktop-app .cv-ws-title{margin:0;font-size:1.05rem}body.desktop-app .cv-ws-stage-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 .65rem;padding-bottom:.35rem;border-bottom:1px solid var(--line)}body.desktop-app .cv-ws-stage-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:6px;padding:.25rem .55rem;font-size:.78rem;color:var(--muted);background:transparent;cursor:pointer}body.desktop-app .cv-ws-stage-tab:hover{color:var(--text);background:#ffffff0a}body.desktop-app .cv-ws-stage-tab.is-active{color:var(--text);border-color:var(--line);background:#6b9eff1a}body.desktop-app .cv-ws-tab-body{min-height:0}body.desktop-app .cv-workspace-stage-host.cv-workspace-stage{display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}body.desktop-app .cv-orch-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:18px 24px;max-width:760px;width:100%;margin:0 auto}body.desktop-app .cv-table-panel{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;border-left:1px solid var(--line);background:var(--surface)}body.desktop-app .cv-tablepanel-bar{flex:none;display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line)}body.desktop-app .cv-tablepanel-tabs{display:flex;gap:2px;flex:none}body.desktop-app .cv-tablepanel-tab{border:1px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:600;padding:4px 9px;border-radius:7px;cursor:pointer}body.desktop-app .cv-tablepanel-tab:hover{color:var(--ink);background:var(--bg-soft)}body.desktop-app .cv-tablepanel-tab.is-active{color:var(--ink);border-color:var(--line);background:var(--bg-soft)}body.desktop-app .cv-tablepanel-title{font-size:.82rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-tablepanel-close{border:none;background:transparent;color:var(--muted);font:inherit;font-size:1rem;cursor:pointer;padding:2px 8px;border-radius:6px}body.desktop-app .cv-tablepanel-close:hover{color:var(--ink);background:var(--bg-soft)}body.desktop-app .cv-table-panel .cv-main-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-entregar{flex:1;min-height:0;overflow:auto;padding:14px 16px 20px;display:flex;flex-direction:column;gap:14px}body.desktop-app .cv-entregar-title{margin:0;font-size:1rem;font-weight:700}body.desktop-app .cv-entregar-sub{margin:4px 0 0;font-size:.78rem;color:var(--muted);line-height:1.4}body.desktop-app .cv-entregar-meta{margin:0;font-size:.78rem;color:var(--muted);line-height:1.4}body.desktop-app .cv-entregar-empty{padding:18px 14px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:.84rem;line-height:1.45}body.desktop-app .cv-entregar-options{display:flex;flex-direction:column;gap:10px}body.desktop-app .cv-entregar-option{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffff05}body.desktop-app .cv-entregar-option-title{font-size:.88rem;font-weight:700;color:var(--ink)}body.desktop-app .cv-entregar-option-detail{margin-top:2px;font-size:.76rem;color:var(--muted);line-height:1.35}body.desktop-app .cv-entregar-consent{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--warn, #c09218) 45%,var(--line));background:color-mix(in srgb,var(--warn, #c09218) 12%,transparent)}body.desktop-app .cv-entregar-consent-text{margin:0;font-size:.76rem;line-height:1.4;color:var(--ink)}body.desktop-app .cv-entregar-consent-actions{display:flex;gap:8px;flex-wrap:wrap}body.desktop-app .cv-entregar-receipt{margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--ok, #2d8a4e) 35%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--ok, #2d8a4e) 8%,transparent)}body.desktop-app .cv-entregar-receipt-title{font-size:.78rem;font-weight:700;color:var(--ink)}body.desktop-app .cv-entregar-receipt-line{margin:6px 0 0;font-size:.76rem;line-height:1.4;color:var(--muted)}body.desktop-app .cv-entregar-receipt-hash{display:block;margin-top:8px;padding:8px 10px;font-size:.68rem;line-height:1.35;word-break:break-all;border-radius:8px;background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--ink)}body.desktop-app .cv-chat-chart-actions{margin-top:6px}body.desktop-app .cv-orch-dock.is-empty .cv-orch-body{flex:1;justify-content:flex-start;max-width:680px;padding-bottom:20px}body.desktop-app .cv-orch-agent,body.desktop-app .cv-agent-panel.cv-chat{display:flex;flex-direction:column;gap:10px;min-height:0;height:100%;overflow:hidden}body.desktop-app .cv-agent-panel.cv-chat.is-empty .cv-hero{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}body.desktop-app .cv-agent-panel.cv-chat .cv-chat-compose-frame,body.desktop-app .cv-agent-panel.cv-chat .cv-chat-compose-block{margin-top:auto;flex:none}body.desktop-app .cv-agent-panel.cv-chat .cv-chat-compose-block .cv-chat-compose-frame{margin-top:0}body.desktop-app .cv-chat-thread{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:14px;padding:8px 2px 12px}body.desktop-app .cv-chat-msg{font-size:.9rem;line-height:1.55;white-space:pre-wrap}body.desktop-app .cv-chat-msg p{margin:0 0 8px}body.desktop-app .cv-chat-msg p:last-child{margin-bottom:0}body.desktop-app .cv-chat-msg.user{align-self:flex-end;max-width:82%;background:var(--bg-soft);color:var(--ink);border-radius:16px;padding:9px 14px}body.desktop-app .cv-chat-msg.assistant{align-self:stretch;max-width:100%;color:var(--ink);padding:0 2px;white-space:normal}body.desktop-app .cv-md{display:flex;flex-direction:column;gap:.45rem;min-width:0}body.desktop-app .cv-md-p{margin:0;white-space:pre-wrap}body.desktop-app .cv-md-h{margin:.35rem 0 .15rem;font-weight:600;line-height:1.3;color:var(--ink)}body.desktop-app .cv-md-h2,body.desktop-app .cv-md-h1{font-size:.95rem}body.desktop-app .cv-md-h3{font-size:.88rem;color:var(--ink-2)}body.desktop-app .cv-md-hr{border:none;border-top:1px solid var(--line);margin:.35rem 0}body.desktop-app .cv-md-list{margin:0;padding-left:1.15rem}body.desktop-app .cv-md-list li{margin:.15rem 0}body.desktop-app .cv-md code{font-family:var(--mono);font-size:.82em;padding:.05em .3em;border-radius:3px;background:#ffffff0f}body.desktop-app .cv-md-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:6px}body.desktop-app .cv-md-table{width:100%;border-collapse:collapse;font-size:.78rem}body.desktop-app .cv-md-table th,body.desktop-app .cv-md-table td{text-align:left;padding:.35rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}body.desktop-app .cv-md-table th{font-weight:600;background:var(--bg-soft);white-space:nowrap}body.desktop-app .cv-md-table tr:last-child td{border-bottom:none}body.desktop-app .cv-chat-msg.assistant.transient{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.84rem}body.desktop-app .cv-chat-dots{display:inline-flex;gap:3px}body.desktop-app .cv-chat-dots i{width:5px;height:5px;border-radius:50%;background:var(--muted);animation:cv-dot-pulse 1.2s ease-in-out infinite}body.desktop-app .cv-chat-dots i:nth-child(2){animation-delay:.18s}body.desktop-app .cv-chat-dots i:nth-child(3){animation-delay:.36s}@keyframes cv-dot-pulse{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}body.desktop-app .cv-chat-pack{margin-top:10px;border:1px solid var(--line);border-radius:12px;background:#ffffff05;padding:10px 12px}body.desktop-app .cv-chat-pack-proposed{border-style:dashed;border-color:var(--line-strong, var(--line))}body.desktop-app .cv-chat-pack-confirmed,body.desktop-app .cv-chat-pack-corrected{border-color:var(--accent, var(--line-strong))}body.desktop-app .cv-chat-pack-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.72rem;font-weight:700;color:var(--ink-2);margin-bottom:6px}body.desktop-app .cv-chat-pack-badge{flex:none;font-size:.62rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);padding:2px 6px;border-radius:999px;border:1px solid var(--line)}body.desktop-app .cv-chat-pack-confirmed .cv-chat-pack-badge,body.desktop-app .cv-chat-pack-corrected .cv-chat-pack-badge{color:var(--accent-strong, var(--ink-2));border-color:var(--accent-soft, var(--line));background:var(--accent-soft, transparent)}body.desktop-app .cv-chat-pack-line{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;font-size:.72rem;color:var(--muted);line-height:1.35;padding:4px 0;font-family:var(--mono, ui-monospace, monospace)}body.desktop-app .cv-chat-pack-line .cv-chat-pack-fix{grid-column:2;color:var(--ink-2, var(--ink));font-family:var(--sans, ui-sans-serif, system-ui, sans-serif);font-size:.7rem}body.desktop-app .cv-chat-pack-sev{font-size:.62rem;font-weight:650;text-transform:uppercase;letter-spacing:.03em;padding:1px 5px;border-radius:4px;align-self:start}body.desktop-app .cv-chat-pack-sev.sev-block,body.desktop-app .cv-chat-pack-line.sev-block .cv-chat-pack-sev{color:var(--danger, #e5484d);background:var(--danger-soft, #ffe8e9)}body.desktop-app .cv-chat-pack-sev.sev-warn,body.desktop-app .cv-chat-pack-line.sev-warn .cv-chat-pack-sev{color:var(--warn, #e5a000);background:var(--warn-soft, #fff8e6)}body.desktop-app .cv-chat-pack-sev.sev-info,body.desktop-app .cv-chat-pack-line.sev-info .cv-chat-pack-sev{color:var(--muted);background:var(--bg-soft, #eceef5)}body.desktop-app .cv-chat-pack-connectors{margin:8px 0 0;padding:6px 0 0;font-size:.72rem;line-height:1.35;color:var(--muted);border-top:1px solid var(--line)}body.desktop-app .cv-chat-pack-legal{margin:10px 0 0;padding:8px 10px;font-size:.72rem;line-height:1.35;color:var(--muted);border-top:1px solid var(--line)}body.desktop-app .cv-chat-pack-connectors+.cv-chat-pack-legal{border-top:none;margin-top:6px;padding-top:0}body.desktop-app .cv-chat-pack-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}body.desktop-app .cv-chat-pack-picker{display:flex;flex-direction:column;gap:6px;margin-top:10px}body.desktop-app .cv-chat-pack-picker-label{font-size:.7rem;color:var(--muted);margin-bottom:2px}body.desktop-app .cv-chat-pack-option{text-align:left;font-size:.78rem;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:transparent;color:var(--ink-2);cursor:pointer}body.desktop-app .cv-chat-pack-option:hover{background:var(--bg-soft, rgba(255, 255, 255, .04));border-color:var(--line-strong, var(--line))}body.desktop-app .cv-chat-pack-option.active{border-color:var(--accent, var(--line-strong));background:var(--accent-soft, rgba(255, 255, 255, .04))}body.desktop-app .cv-chat-plan{margin-top:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:10px 12px}body.desktop-app .cv-chat-plan.is-proposal{border-style:dashed;border-color:var(--accent-line, var(--line-strong));background:var(--accent-soft, rgba(107, 158, 255, .08))}body.desktop-app .cv-chat-plan.is-proposal.is-row-loss,body.desktop-app .cv-chat-plan.is-proposal.is-writes-outside{border-color:#e5a0008c;background:#e5a00014}body.desktop-app .cv-chat-plan.is-receipt{border-style:solid;border-color:#087f5b73;background:#087f5b14}body.desktop-app .cv-chat-plan.is-dismissed{opacity:.65;border-style:solid}body.desktop-app .cv-chat-plan-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;margin-bottom:8px}body.desktop-app .cv-chat-plan-kicker{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-2)}body.desktop-app .cv-chat-plan-risk{font-size:.66rem;font-weight:600;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}body.desktop-app .cv-chat-plan-risk.risk-reversible{color:var(--clean-ink, #087f5b);border-color:#087f5b59;background:#087f5b14}body.desktop-app .cv-chat-plan-risk.risk-row-loss,body.desktop-app .cv-chat-plan-risk.risk-writes-outside{color:#b8860b;border-color:#e5a00073;background:#e5a0001f}body.desktop-app .cv-chat-plan-line{font-size:.82rem;color:var(--ink-2);font-family:var(--mono, ui-monospace, monospace);padding:2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-plan-steps{display:flex;flex-direction:column;gap:4px;margin-top:6px}body.desktop-app .cv-chat-plan-steps-title{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:2px}body.desktop-app .cv-chat-plan-step{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--ink-2);font-family:var(--mono, ui-monospace, monospace);cursor:pointer;padding:3px 4px;border-radius:6px;line-height:1.35}body.desktop-app .cv-chat-plan-step:hover{background:#ffffff0a}body.desktop-app .cv-chat-plan-step.is-off{opacity:.45;text-decoration:line-through}body.desktop-app .cv-chat-plan-step input{margin-top:2px;flex:none}body.desktop-app .cv-chat-commit button:disabled{opacity:.45;cursor:not-allowed}body.desktop-app .cv-chat-sql{margin-top:8px;font-size:.72rem;color:var(--muted)}body.desktop-app .cv-chat-sql>summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;letter-spacing:.02em}body.desktop-app .cv-chat-sql>summary:hover{color:var(--ink)}body.desktop-app .cv-chat-sql-body{margin-top:6px;display:flex;flex-direction:column;gap:8px}body.desktop-app .cv-chat-sql-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:3px}body.desktop-app .cv-chat-sql-pre{margin:0;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:#0000002e;color:var(--ink-2);font-family:var(--mono, ui-monospace, monospace);font-size:.7rem;line-height:1.4;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto}body.desktop-app .cv-chat-sql-note{margin:0;font-size:.72rem;color:var(--muted);line-height:1.35}body.desktop-app .cv-chat-preview{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}body.desktop-app .cv-chat-preview-title{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:6px}body.desktop-app .cv-chat-preview-line{font-size:.8rem;color:var(--accent-strong, var(--accent));font-family:var(--mono, ui-monospace, monospace);padding:1px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-diff{display:grid;grid-template-columns:minmax(64px,.9fr) minmax(0,1.2fr) 16px minmax(0,1.2fr);gap:6px;align-items:baseline;font-family:var(--mono, ui-monospace, monospace);font-size:.74rem;padding:3px 0}body.desktop-app .cv-chat-diff-col{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-diff-before{color:var(--dirty-ink, #c92a2a);background:var(--dirty-bg, rgba(201, 42, 42, .12));border-radius:4px;padding:1px 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-diff-arrow{color:var(--muted);text-align:center}body.desktop-app .cv-chat-diff-after{color:var(--clean-ink, #087f5b);background:var(--clean-bg, rgba(8, 127, 91, .12));border-radius:4px;padding:1px 5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-impact.is-ok{border-color:#087f5b59;background:#087f5b14;color:var(--clean-ink, #087f5b)}body.desktop-app .cv-chat-impact{margin-top:8px;font-size:.74rem;line-height:1.4;color:#b8860b;padding:8px 10px;border-radius:8px;background:#e5a0001a;border:1px solid rgba(229,160,0,.35)}body.desktop-app .cv-chat-chart{margin-top:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#ffffff05}body.desktop-app .cv-chat-chart-title{font-size:.78rem;font-weight:700;color:var(--ink-2);margin-bottom:8px}body.desktop-app .cv-chat-chart-svg{display:block;width:100%;max-width:360px;height:auto;color:var(--accent-strong, #8fb4ff);fill:var(--accent-strong, #8fb4ff)}body.desktop-app .cv-chat-chart-legend{margin-top:8px;display:flex;flex-direction:column;gap:2px}body.desktop-app .cv-chat-chart-legend-row{font-size:.7rem;font-family:var(--mono, ui-monospace, monospace);color:var(--muted);text-align:left;border:none;background:transparent;padding:2px 0;width:100%}body.desktop-app .cv-chat-chart-legend-row.muted{opacity:.7}body.desktop-app .cv-chat-chart-legend-row.is-clickable{cursor:pointer;border-radius:4px;padding:2px 6px;margin:0 -6px}body.desktop-app .cv-chat-chart-legend-row.is-clickable:hover{color:var(--ink);background:var(--bg-soft)}body.desktop-app .cv-chat-chart-legend-row.is-active{color:var(--ink);font-weight:700;background:color-mix(in srgb,var(--accent-strong, #8fb4ff) 18%,transparent)}body.desktop-app .cv-chat-chart-svg rect.is-clickable:hover{opacity:.85}body.desktop-app .cv-chat-chart-svg rect.is-active{opacity:1;stroke:var(--ink);stroke-width:1.5}body.desktop-app .cv-chart-filter-chip{display:inline-flex;align-items:center;gap:6px;max-width:min(280px,42vw);padding:2px 6px 2px 8px;border-radius:8px;border:1px solid var(--line);background:var(--bg-soft);font-size:.72rem;color:var(--ink);overflow:hidden}body.desktop-app .cv-chart-filter-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-tbl th.cv-chart-match-col{box-shadow:inset 0 -2px 0 var(--clean-ink, #087f5b)}body.desktop-app .cv-tbl td.cv-chart-match-cell{background:color-mix(in srgb,var(--clean-ink, #087f5b) 12%,transparent);font-weight:600}body.desktop-app .cv-chat-chart-a11y{margin-top:8px;font-size:.72rem;color:var(--muted)}body.desktop-app .cv-chat-chart-a11y summary{cursor:pointer;-webkit-user-select:none;user-select:none}body.desktop-app .cv-chat-chart-a11y summary:hover{color:var(--ink)}body.desktop-app .cv-chat-chart-data{width:100%;margin-top:6px;border-collapse:collapse;font-size:.72rem}body.desktop-app .cv-chat-chart-data th,body.desktop-app .cv-chat-chart-data td{border:1px solid var(--line);padding:3px 6px;text-align:left}body.desktop-app .cv-chat-chart-data th{font-weight:700;color:var(--muted)}body.desktop-app .cv-chat-chart-empty{font-size:.78rem;color:var(--muted)}body.desktop-app .cv-chat-receipt-meta{margin-top:8px;font-size:.74rem;font-weight:600;color:var(--clean-ink, #087f5b)}body.desktop-app .cv-chat-receipt-rows{display:grid;gap:4px;margin-top:8px}body.desktop-app .cv-chat-receipt-line{font-size:.74rem;font-weight:600;color:var(--clean-ink, #087f5b);line-height:1.35}body.desktop-app .cv-chat-receipt-rail{margin-top:8px}body.desktop-app .cv-chat-receipt-rail-hint{margin:0;font-size:.72rem;color:var(--muted);line-height:1.35}.cv-chat-orch-retry{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px}body.desktop-app .cv-chat-files{margin-top:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#ffffff05}body.desktop-app .cv-chat-files-title{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}body.desktop-app .cv-chat-file-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line)}body.desktop-app .cv-chat-file-row:first-of-type{border-top:none}body.desktop-app .cv-chat-file-main{flex:1;min-width:0}body.desktop-app .cv-chat-file-name{font-size:.82rem;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .cv-chat-file-meta{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.desktop-app .btn.warn{background:#e5a000;color:#1a1400;border-color:transparent}body.desktop-app .btn.warn:hover{filter:brightness(1.05)}body.desktop-app .cv-hero{text-align:center;margin-bottom:18px}body.desktop-app .cv-hero-title{font-size:1.5rem;font-weight:700;color:var(--ink);margin:0 0 8px}body.desktop-app .cv-hero-sub{font-size:.92rem;color:var(--ink-2);line-height:1.55;max-width:460px;margin:0 auto}body.desktop-app .cv-hero-groups{display:flex;flex-direction:column;gap:16px;margin-top:18px;max-width:520px;margin-left:auto;margin-right:auto;text-align:left}body.desktop-app .cv-hero-group-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}body.desktop-app .cv-hero-starters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.desktop-app .cv-hero-card{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;font:inherit;color:var(--ink);transition:border-color .15s ease,transform .15s ease}body.desktop-app .cv-hero-card:hover{border-color:var(--accent);transform:translateY(-1px)}body.desktop-app .cv-hero-card.is-disabled{opacity:.55;cursor:not-allowed}body.desktop-app .cv-hero-card-title{font-size:.86rem;font-weight:600}body.desktop-app .cv-hero-card-sub{font-size:.74rem;color:var(--muted)}body.desktop-app .cv-hero-card-badge{margin-top:4px;font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}body.desktop-app .cv-hero-card-badge.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}body.desktop-app .cv-hero-card-badge.is-off{color:var(--muted)}body.desktop-app .cv-chat-commit{display:flex;gap:8px;margin-top:10px}body.desktop-app .cv-chat-compose-frame{flex:none;display:flex;flex-direction:row;align-items:flex-end;gap:6px;min-height:46px;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .15s ease;box-shadow:none}body.desktop-app .cv-chat-compose-frame:focus-within{border-color:var(--line);box-shadow:none}body.desktop-app .cv-chat-input,body.desktop-app .cv-chat-input.field{flex:1;width:auto;min-width:0;resize:none;min-height:30px;max-height:144px;margin:0;border:none!important;border-radius:0;background:transparent!important;box-shadow:none!important;padding:5px 4px;font-size:.86rem;line-height:20px;overflow-y:auto;color:var(--ink)}body.desktop-app .cv-chat-input:focus,body.desktop-app .cv-chat-input.field:focus{outline:none!important;border:none!important;box-shadow:none!important;background:transparent!important}body.desktop-app .cv-chat-compose-foot{display:flex;align-items:center;gap:8px;padding:4px 8px 8px 10px}body.desktop-app .cv-chat-send-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:999px;background:var(--accent);color:#fff;cursor:pointer;padding:0}body.desktop-app .cv-chat-send-icon:hover{filter:brightness(1.1)}body.desktop-app .cv-chat-send-icon.is-stop{background:#b45309;border-radius:6px}body.desktop-app .cv-chat-send-icon.is-stop:hover{filter:brightness(1.08)}body.desktop-app .cv-chat-compose-tools,body.desktop-app .cv-chat-compose-trailing{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}body.desktop-app .cv-chat-action-wrap,body.desktop-app .cv-chat-mode-wrap{position:relative;display:inline-flex;align-items:center}body.desktop-app .cv-chat-compose-trailing .cv-chat-mode-menu{left:auto;right:0}body.desktop-app .cv-chat-mode-pill{display:inline-flex;align-items:center;gap:4px;border:1px solid transparent;background:transparent;color:var(--ink-2);font:inherit;font-size:.72rem;font-weight:600;padding:4px 8px;border-radius:8px;cursor:pointer;white-space:nowrap}body.desktop-app .cv-chat-mode-pill:hover{color:var(--ink);background:var(--bg-soft);border-color:var(--line)}body.desktop-app .cv-chat-mode-caret{font-size:.58rem;opacity:.65;margin-left:1px}body.desktop-app .cv-chat-action-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--ink-2);cursor:pointer;padding:0}body.desktop-app .cv-chat-action-btn svg{display:block}body.desktop-app .cv-chat-action-btn:hover{color:var(--ink);background:var(--bg-soft)}body.desktop-app .cv-chat-planner-pill{max-width:7.5rem;color:var(--muted);font-weight:500}body.desktop-app .cv-chat-workmode-pill{border-radius:8px}body.desktop-app .cv-chat-mode-only-menu{min-width:220px;max-height:none;overflow:visible}body.desktop-app .cv-chat-autonomy-btn{display:inline-flex;align-items:center;gap:4px;border:none;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:.7rem;padding:4px 6px;cursor:pointer}body.desktop-app .cv-chat-autonomy-btn:hover{color:var(--ink-2);background:var(--bg-soft)}body.desktop-app .cv-chat-compose-block{display:flex;flex-direction:column;gap:6px;flex:none;width:100%;min-width:0}body.desktop-app .cv-chat-context-chips{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0;padding:0 2px}body.desktop-app .cv-chat-context-chip{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:220px;padding:3px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--bg-soft);font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.desktop-app .cv-chat-context-chip.is-attached{color:var(--ink-2);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}body.desktop-app .cv-chat-context-chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis}body.desktop-app .cv-chat-context-chip-remove{flex:none;margin:0;padding:0 2px;border:none;background:transparent;color:var(--muted);font-size:.85rem;line-height:1;cursor:pointer}body.desktop-app .cv-chat-context-chip-remove:hover{color:var(--danger, #c44)}body.desktop-app .cv-chat-mode-menu{position:absolute;bottom:calc(100% + 6px);left:0;min-width:260px;display:flex;flex-direction:column;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);box-shadow:0 12px 32px #00000047;padding:4px;z-index:30}body.desktop-app .cv-chat-mode-menu[hidden]{display:none!important}body.desktop-app .cv-chat-action-menu{width:min(290px,calc(100vw - 24px));max-height:min(340px,60vh);overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 55%,transparent) transparent}body.desktop-app .cv-chat-action-menu::-webkit-scrollbar{width:3px}body.desktop-app .cv-chat-action-menu::-webkit-scrollbar-track{background:transparent}body.desktop-app .cv-chat-action-menu::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 55%,transparent);border-radius:999px}body.desktop-app .cv-chat-action-menu::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 55%,transparent)}body.desktop-app .cv-chat-action-group{padding:7px 9px 3px;color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}body.desktop-app .cv-chat-action-item{flex-direction:row;align-items:center;gap:6px;padding:4px 8px}body.desktop-app .cv-chat-action-glyph{flex:0 0 16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:0;color:var(--ink-2);background:transparent;font-size:.76rem}body.desktop-app .cv-chat-action-glyph svg{display:block;width:14px;height:14px}body.desktop-app .cv-chat-action-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:0}body.desktop-app .cv-chat-mode-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;border:none;background:transparent;font:inherit;text-align:left;padding:5px 8px;border-radius:6px;cursor:pointer;color:var(--ink)}body.desktop-app .cv-chat-action-item.cv-chat-mode-item{flex-direction:row;align-items:center;gap:6px}body.desktop-app .cv-chat-mode-item:hover{background:var(--bg-soft)}body.desktop-app .cv-chat-mode-item.active{background:var(--accent-soft)}body.desktop-app .cv-chat-mode-item:disabled{cursor:not-allowed;opacity:.48}body.desktop-app .cv-chat-mode-item:disabled:hover{background:transparent}body.desktop-app .cv-chat-mode-item-label{font-size:.8rem;font-weight:500}body.desktop-app .cv-chat-mode-item-hint{font-size:.7rem;color:var(--muted)}body.desktop-app .cv-chat-autonomy-menu{min-width:240px}@media(max-width:1180px){body.desktop-app .cv-chat-context-chip{max-width:140px}body.desktop-app .cv-chat-autonomy-btn{max-width:74px;overflow:hidden}}body.desktop-app .cv-orch-compose-wrap{width:100%}body.desktop-app .cv-orch-compose{width:100%;min-height:88px;resize:none;font-size:1rem;line-height:1.45;padding:14px 16px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 8px 28px #0000001f}body.desktop-app .cv-orch-compose:focus{outline:none;border-color:var(--accent)}body.desktop-app .cv-report-cell-fold,body.desktop-app .cv-synth-from-cell{margin-top:10px;border:1px solid var(--line);border-radius:8px;padding:4px 8px 8px;background:var(--bg-soft)}body.desktop-app .cv-report-cell-fold summary,body.desktop-app .cv-synth-from-cell summary{cursor:pointer;font-size:.78rem;font-weight:600;color:var(--ink-2);padding:4px 0}body.desktop-app .cv-report-detail-actions .btn.primary{min-width:140px}body.desktop-app .cv-grid-toggle{display:none!important}.cv-gcmd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;display:flex;align-items:flex-start;justify-content:center;padding:14vh 16px 32px;background:#0000006b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-gcmd{width:min(560px,100%);max-height:min(64vh,520px);display:flex;flex-direction:column;background:#1e1e1e;color:#f0f0f0;border:1px solid #333;border-radius:14px;box-shadow:0 24px 64px #00000073;overflow:hidden}body.desktop-app .cv-gcmd{background:color-mix(in srgb,var(--surface, #1e1e1e) 92%,#000);border-color:color-mix(in srgb,var(--line-strong, #333) 85%,#000);color:var(--ink, #f0f0f0)}.cv-gcmd-head{display:flex;align-items:center;gap:8px;padding:12px 12px 10px 14px;border-bottom:1px solid #333}.cv-gcmd-input{flex:1;min-width:0;border:none;background:transparent;color:inherit;font:inherit;font-size:.95rem;padding:4px 0}.cv-gcmd-input::placeholder{color:#7a7a7a}.cv-gcmd-input:focus{outline:none}.cv-gcmd-close{flex:none;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:#8a8a8a;font-size:1.15rem;line-height:1;cursor:pointer}.cv-gcmd-close:hover{background:#2a2a2a;color:#eee}.cv-gcmd-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:8px;scrollbar-width:thin}.cv-gcmd-group{padding:10px 14px 4px;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#7a7a7a}.cv-gcmd-item{width:100%;display:flex;align-items:center;gap:12px;border:none;background:transparent;text-align:left;padding:9px 12px;margin:1px 0;border-radius:8px;cursor:pointer;color:inherit;font:inherit}.cv-gcmd-item:hover,.cv-gcmd-item.is-active{background:#2a2a2a}body.desktop-app .cv-gcmd-item:hover,body.desktop-app .cv-gcmd-item.is-active{background:color-mix(in srgb,#fff 6%,var(--surface, #222))}.cv-gcmd-item.is-disabled,.cv-gcmd-item:disabled{opacity:.42;cursor:not-allowed}.cv-gcmd-icon{flex:none;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:#c8c8c8}.cv-gcmd-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.cv-gcmd-label{font-size:.88rem;font-weight:500;color:#f2f2f2}.cv-gcmd-desc{font-size:.7rem;color:#8a8a8a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-gcmd-meta{flex:none;font-size:.68rem;font-weight:600;color:#7a7a7a;max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-gcmd-item.is-active .cv-gcmd-meta{color:#b0b0b0;padding:2px 6px;border-radius:4px;background:#1a1a1a;border:1px solid #3a3a3a}.cv-gcmd-empty{padding:20px 14px;color:#8a8a8a;font-size:.85rem}.cv-gcmd-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:8px 14px 10px;border-top:1px solid #333;background:#181818;font-size:.68rem;color:#8a8a8a}.cv-gcmd-foot-item{display:inline-flex;align-items:center;gap:5px}.cv-gcmd-foot-muted{opacity:.75}.cv-gcmd-foot kbd{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.25rem;padding:0 5px;border-radius:4px;border:1px solid #3a3a3a;background:#252525;color:#c8c8c8;font:inherit;font-size:.64rem;font-weight:600}.cv-mention-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:82;pointer-events:none}.cv-mention-scrim{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:auto;background:transparent}.cv-mention-wrap{position:fixed;pointer-events:auto;z-index:83;display:flex;flex-direction:column;max-height:min(48vh,360px);background:#2b2b2b;color:#e8e8e8;border:1px solid #3f3f3f;border-radius:12px;box-shadow:0 16px 40px #00000061;overflow:hidden}body.desktop-app .cv-mention-wrap{background:color-mix(in srgb,var(--surface, #2b2b2b) 88%,#0a0a0a);border-color:color-mix(in srgb,var(--line-strong, #3f3f3f) 80%,#000);color:var(--ink, #e8e8e8)}.cv-mention-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:6px;scrollbar-width:thin}.cv-mention-item{width:100%;display:flex;align-items:flex-start;gap:10px;border:none;background:transparent;text-align:left;padding:8px 10px;margin:1px 0;border-radius:8px;cursor:pointer;color:inherit;font:inherit}.cv-mention-item:hover,.cv-mention-item.is-active{background:#1a1a1a}body.desktop-app .cv-mention-item:hover,body.desktop-app .cv-mention-item.is-active{background:color-mix(in srgb,#000 55%,var(--surface, #222))}.cv-mention-icon{flex:none;width:22px;height:22px;margin-top:1px;display:inline-flex;align-items:center;justify-content:center;color:#b8b8b8}.cv-mention-copy{min-width:0;display:flex;flex-direction:column;gap:1px}.cv-mention-label{font-size:.84rem;font-weight:600;color:#f2f2f2}.cv-mention-detail{font-size:.68rem;color:#8a8a8a}.cv-mention-empty{padding:14px 12px;color:#8a8a8a;font-size:.8rem}.cv-mention-filter{display:flex;align-items:center;gap:6px;flex:none;padding:8px 10px 10px;border-top:1px solid #3a3a3a;background:color-mix(in srgb,#1e1e1e 70%,#2b2b2b)}.cv-mention-prefix{color:#8a8a8a;font-size:.86rem;font-weight:700;-webkit-user-select:none;user-select:none}.cv-mention-input{flex:1;min-width:0;border:none;background:transparent;color:#f0f0f0;font:inherit;font-size:.84rem;padding:4px 0}.cv-mention-input::placeholder{color:#7a7a7a}.cv-mention-input:focus{outline:none}.cv-slash-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;pointer-events:none}.cv-slash-scrim{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:auto;background:transparent}.cv-slash-wrap{position:fixed;pointer-events:auto;display:flex;flex-direction:row;align-items:stretch;gap:8px;max-height:min(52vh,420px);z-index:81}.cv-slash{flex:0 0 auto;width:min(300px,100%);min-width:240px;display:flex;flex-direction:column;background:#2b2b2b;color:#e8e8e8;border:1px solid #3f3f3f;border-radius:12px;box-shadow:0 16px 40px #00000061;overflow:hidden}body.desktop-app .cv-slash{background:color-mix(in srgb,var(--surface, #2b2b2b) 88%,#0a0a0a);border-color:color-mix(in srgb,var(--line-strong, #3f3f3f) 80%,#000);color:var(--ink, #e8e8e8)}.cv-slash-list{flex:1 1 auto;min-height:0;overflow-y:auto;padding:6px;scrollbar-width:thin;scrollbar-color:#5a5a5a transparent}.cv-slash-item{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:10px;border:none;background:transparent;text-align:left;padding:8px 10px;margin:1px 0;border-radius:8px;cursor:pointer;color:inherit;font:inherit}.cv-slash-item:hover,.cv-slash-item.is-active{background:#1a1a1a}body.desktop-app .cv-slash-item:hover,body.desktop-app .cv-slash-item.is-active{background:color-mix(in srgb,#000 55%,var(--surface, #222))}.cv-slash-item.is-disabled,.cv-slash-item:disabled{opacity:.4;cursor:not-allowed}.cv-slash-cmd{font-size:.84rem;font-weight:500;letter-spacing:.01em;color:#f2f2f2}.cv-slash-tag{font-size:.68rem;color:#8a8a8a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46%}.cv-slash-empty{padding:14px 12px;color:#8a8a8a;font-size:.8rem}.cv-slash-filter{display:flex;align-items:center;gap:6px;flex:none;padding:8px 10px 10px;border-top:1px solid #3a3a3a;background:color-mix(in srgb,#1e1e1e 70%,#2b2b2b)}.cv-slash-prefix{color:#8a8a8a;font-size:.86rem;font-weight:600;-webkit-user-select:none;user-select:none}.cv-slash-input{flex:1;min-width:0;border:none;background:transparent;color:#f0f0f0;font:inherit;font-size:.84rem;padding:4px 0}.cv-slash-input::placeholder{color:#7a7a7a}.cv-slash-input:focus{outline:none}.cv-slash-detail{flex:1 1 220px;min-width:180px;max-width:260px;padding:12px 14px;border-radius:12px;background:#141414;border:1px solid #2e2e2e;color:#e4e4e4;box-shadow:0 12px 32px #00000052;overflow:auto}body.desktop-app .cv-slash-detail{background:color-mix(in srgb,#0c0c0c 70%,var(--surface, #1a1a1a));border-color:var(--line, #333)}.cv-slash-detail-title{font-size:.8rem;font-weight:700;margin-bottom:4px}.cv-slash-detail-label{font-size:.72rem;color:#9a9a9a;margin-bottom:8px}.cv-slash-detail-body{margin:0;font-size:.74rem;line-height:1.45;color:#d0d0d0}.cv-slash-detail-meta{margin-top:10px;font-size:.64rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6e6e6e}.cv-slash-detail-empty{margin:0;font-size:.72rem;color:#7a7a7a;line-height:1.4}@media(max-width:720px){.cv-slash-detail{display:none}.cv-slash-wrap{width:min(320px,calc(100vw - 24px))!important}}.cv-catalog-ac-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:81;background:color-mix(in srgb,var(--ink, #111) 35%,transparent);display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 24px}.cv-catalog-ac{width:min(480px,100%);max-height:min(56vh,420px);display:flex;flex-direction:column;background:var(--bg, #fff);border:1px solid var(--line, #ddd);border-radius:12px;box-shadow:0 18px 48px color-mix(in srgb,var(--ink, #111) 22%,transparent);overflow:hidden}.cv-catalog-ac-input{border:none;border-bottom:1px solid var(--line, #ddd);padding:14px 16px;font:inherit;font-size:.95rem;background:transparent;color:var(--ink, #111)}.cv-catalog-ac-input:focus{outline:none}.cv-catalog-ac-list{overflow-y:auto;padding:6px;flex:1}.cv-catalog-ac-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;border:none;background:transparent;border-radius:8px;padding:8px 10px;cursor:pointer;color:inherit}.cv-catalog-ac-item:hover,.cv-catalog-ac-item.is-active{background:var(--accent-soft, #e8f5e9)}.cv-catalog-ac-label{font-weight:600;font-size:.86rem}.cv-catalog-ac-hint{font-size:.7rem;color:var(--muted, #666);font-family:var(--mono, ui-monospace, monospace)}.cv-catalog-ac-empty{padding:16px;color:var(--muted, #666);font-size:.85rem}.cv-catalog-ac-foot{padding:8px 12px;border-top:1px solid var(--line, #ddd);font-size:.68rem;color:var(--muted, #666)}body.desktop-app .cv-context-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}body.desktop-app .cv-context-actions .btn:disabled{opacity:.45;cursor:not-allowed}body.desktop-app .cv-run-trace{margin:0 0 10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg-soft) 70%,transparent);overflow:hidden}body.desktop-app .cv-run-trace-sum{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;cursor:pointer;color:var(--ink-2);font-size:.74rem;font-weight:600}body.desktop-app .cv-run-trace-sum::-webkit-details-marker{display:none}body.desktop-app .cv-run-trace-title{min-width:0}body.desktop-app .cv-run-trace-count{flex:none;font-size:.64rem;color:var(--muted);font-weight:700}body.desktop-app .cv-run-trace-list{display:flex;flex-direction:column;gap:2px;padding:0 8px 8px;border-top:1px solid var(--line)}body.desktop-app .cv-run-trace-row{display:grid;grid-template-columns:18px 1fr auto;gap:6px 8px;align-items:start;padding:5px 4px;font-size:.72rem}body.desktop-app .cv-run-trace-kind{color:var(--muted);font-size:.7rem;line-height:1.4}body.desktop-app .cv-run-trace-body{display:flex;flex-direction:column;gap:1px;min-width:0}body.desktop-app .cv-run-trace-label{color:var(--ink);font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem}body.desktop-app .cv-run-trace-detail{color:var(--muted);font-size:.68rem}body.desktop-app .cv-run-trace-meta{color:var(--muted);font-size:.64rem;font-weight:600;white-space:nowrap}body.desktop-app .cv-run-trace-meta.is-ok{color:color-mix(in srgb,var(--accent) 75%,#7dcea0)}body.desktop-app .cv-run-trace-meta.is-fail{color:var(--warn, #b45309)}body.desktop-app .cv-run-trace-row.is-running .cv-run-trace-label{color:var(--ink-2)}body.desktop-app .cv-insp-chain{margin:0 0 8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--bg-soft) 70%,transparent)}body.desktop-app .cv-insp-chain-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}body.desktop-app .cv-insp-chain-title{font-size:.72rem;font-weight:700;color:var(--ink-2)}body.desktop-app .cv-insp-chain-count{font-size:.64rem;font-weight:600;color:var(--muted)}body.desktop-app .cv-insp-chain-path{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}body.desktop-app .cv-insp-chain-arrow{color:var(--muted);font-size:.7rem}body.desktop-app .cv-insp-chain-step{display:inline-flex;align-items:baseline;gap:4px;padding:2px 6px;border-radius:4px;font-size:.72rem;background:var(--surface);border:1px solid var(--line)}body.desktop-app .cv-insp-chain-step.is-running{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}body.desktop-app .cv-insp-chain-step.is-done{border-color:color-mix(in srgb,#7dcea0 50%,var(--line))}body.desktop-app .cv-insp-chain-step.is-failed{border-color:color-mix(in srgb,var(--warn, #b45309) 55%,var(--line))}body.desktop-app .cv-insp-chain-label{font-weight:600;color:var(--ink)}body.desktop-app .cv-insp-chain-meta{font-size:.62rem;font-weight:600;color:var(--muted)}body.desktop-app .cv-insp-chain-step.is-done .cv-insp-chain-meta{color:color-mix(in srgb,var(--accent) 75%,#7dcea0)}body.desktop-app .cv-insp-chain-step.is-failed .cv-insp-chain-meta{color:var(--warn, #b45309)}body.desktop-app .cv-insp-chain-bb{margin-top:6px}.cv-bb-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;align-items:flex-start;justify-content:center;padding:10vh 16px 24px}.cv-bb-modal.show{display:flex}.cv-bb-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080a0e8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cv-bb-panel{position:relative;width:min(640px,100%);max-height:min(78vh,680px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}.cv-bb-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px 16px 10px}.cv-bb-head h2{margin:0;font-size:1.05rem;font-weight:700}.cv-bb-sub{margin:4px 0 0;width:100%;font-size:.75rem;color:var(--muted);line-height:1.4}.cv-bb-body{padding:0 16px 16px;overflow:auto;display:flex;flex-direction:column;gap:12px}.cv-bb-empty{font-size:.8rem;color:var(--muted);line-height:1.45}.cv-bb-runs{display:flex;flex-direction:column;gap:4px}.cv-bb-run{display:flex;justify-content:space-between;gap:8px;text-align:left;border:1px solid var(--line);background:var(--bg-soft);color:inherit;border-radius:6px;padding:6px 8px;cursor:pointer;font:inherit}.cv-bb-run.active{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.cv-bb-run-id{font-size:.74rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-bb-run-meta,.cv-bb-muted{font-size:.68rem;color:var(--muted)}.cv-bb-detail-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:6px}.cv-bb-log{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px;max-height:36vh;overflow:auto}.cv-bb-log-item{display:grid;grid-template-columns:2.5rem 1fr 5rem minmax(0,1fr);gap:6px;font-size:.7rem;padding:3px 0;border-bottom:1px solid var(--line)}.cv-bb-seq{font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.cv-bb-type{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-bb-from{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.cv-bb-keys{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-bb-ok{font-size:.72rem;color:color-mix(in srgb,var(--accent) 75%,#7dcea0)}.cv-bb-warn{font-size:.72rem;color:var(--warn, #b45309)}body.desktop-app .cv-chat-transient-label{display:block;margin-top:6px;color:var(--muted);font-size:.78rem}body.desktop-app .cv-chat-suggestions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}body.desktop-app .cv-chat-suggestion{font:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:6px 12px;border-radius:var(--r-pill);color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-strong);transition:background .15s,border-color .15s,color .15s}body.desktop-app .cv-chat-suggestion:hover{background:var(--accent-fill);border-color:var(--accent-border);color:var(--accent-hover)}body.desktop-app .cv-session-hist-bar{display:flex;justify-content:flex-end;margin:0 12px 4px}body.desktop-app .cv-session-hist-toggle{border:none;background:transparent;color:var(--muted);font-size:.72rem;font-weight:600;cursor:pointer;padding:2px 4px}body.desktop-app .cv-session-hist-toggle:hover,body.desktop-app .cv-session-hist-toggle.is-open{color:var(--text)}body.desktop-app .cv-session-hist-panel{display:flex;flex-direction:column;gap:4px;margin:0 12px 8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft);max-height:180px;overflow:auto}body.desktop-app .cv-session-hist-empty{font-size:.74rem;color:var(--muted);line-height:1.35}body.desktop-app .cv-session-hist-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;border:none;background:transparent;border-radius:6px;padding:6px;cursor:pointer;color:inherit}body.desktop-app .cv-session-hist-item:hover{background:var(--accent-soft)}body.desktop-app .cv-session-hist-outcome{font-size:.65rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}body.desktop-app .cv-session-hist-intent{font-size:.8rem;font-weight:600}body.desktop-app .cv-session-hist-meta{font-size:.7rem;color:var(--muted)}body.desktop-app .cv-session-hist-clear{align-self:flex-end;margin-top:4px;border:none;background:transparent;color:var(--muted);font-size:.7rem;cursor:pointer;text-decoration:underline}body.desktop-app .cv-job-tray{display:flex;flex-direction:column;gap:4px;margin:0 12px 8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft)}body.desktop-app .cv-job-tray-head{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}body.desktop-app .cv-job-tray-row{display:grid;grid-template-columns:auto auto 1fr auto;gap:6px 8px;align-items:center;font-size:.76rem;padding:4px 0;border-top:1px solid var(--line)}body.desktop-app .cv-job-tray-row:first-of-type{border-top:none}body.desktop-app .cv-job-tray-status{font-size:.68rem;font-weight:600;color:var(--ink-2);white-space:nowrap}body.desktop-app .cv-job-tray-lock{font-size:.72rem;line-height:1;color:var(--muted);width:1em;text-align:center}body.desktop-app .cv-job-tray-lock.is-write{color:var(--warn, #b45309)}body.desktop-app .cv-job-tray-lock.is-read{color:color-mix(in srgb,var(--accent) 70%,var(--muted))}body.desktop-app .cv-job-tray-row.is-failed .cv-job-tray-status,body.desktop-app .cv-job-tray-row.is-cancelled .cv-job-tray-status{color:var(--warn, #b45309)}body.desktop-app .cv-job-tray-intent{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}body.desktop-app .cv-job-tray-node{font-size:.65rem;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}body.desktop-app .cv-job-tray-row.is-graph-node{opacity:.92}body.desktop-app .cv-job-tray-actions{display:inline-flex;gap:4px}body.desktop-app .cv-job-tray-error{grid-column:1 / -1;font-size:.68rem;color:var(--muted)}:root[data-product=hr]{--hr-accent: #2a9d8f;--hr-accent-hover: #21867a;--hr-accent-fill: color-mix(in srgb, #2a9d8f 18%, transparent)}.product-gate-root,.app-shell--gate{min-height:100vh;display:grid;place-items:center;background:radial-gradient(1200px 600px at 20% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent),var(--surface-page, var(--bg))}.product-gate-card{width:min(720px,92vw);padding:2.5rem 2rem;border:1px solid var(--border-subtle);border-radius:16px;background:var(--surface-card, var(--bg));box-shadow:var(--shadow)}.product-gate-brand{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted, var(--muted));margin-bottom:.75rem}.product-gate-title{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:.5rem}.product-gate-lead{color:var(--text-secondary, var(--muted));margin-bottom:1.75rem;max-width:36em}.product-gate-choices{display:grid;gap:.85rem}.product-gate-choice{text-align:left;display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:12px;border:1px solid var(--border-subtle);background:var(--surface-muted, transparent);color:inherit;cursor:pointer}.product-gate-choice:hover{border-color:var(--border-strong)}.product-gate-choice--primary{border-color:color-mix(in srgb,#2a9d8f 55%,var(--border-subtle));background:color-mix(in srgb,#2a9d8f 12%,transparent)}.product-gate-choice strong{font-size:1.05rem}.product-gate-choice span{color:var(--text-secondary, var(--muted));font-size:.92rem;line-height:1.45}.product-switch-chip{margin-left:auto;margin-right:.5rem;align-self:center;font-size:.75rem;padding:.25rem .6rem;border-radius:999px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-muted, var(--muted));cursor:pointer}.hr-root,.hr-app,.hr-shell{min-height:100vh;display:flex;flex-direction:column}.hr-titlebar{display:flex;align-items:center;gap:1rem;padding:.65rem 1rem;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--surface-card, var(--bg)) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hr-titlebar-brand{display:grid;gap:.1rem;min-width:12rem}.hr-brand{font-weight:700;letter-spacing:-.02em}.hr-trust{font-size:.72rem;color:var(--text-muted, var(--muted))}.hr-nav{display:flex;gap:.35rem;flex:1}.hr-nav-btn{border:0;background:transparent;color:var(--text-secondary, var(--muted));padding:.4rem .7rem;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem}.hr-nav-btn--active{background:var(--hr-accent-fill, var(--accent-fill));color:var(--text-primary, var(--ink))}.hr-badge{font-style:normal;font-size:.7rem;background:var(--hr-accent, var(--accent-base));color:#fff;border-radius:999px;padding:.05rem .4rem}.hr-titlebar-actions{display:flex;gap:.35rem}.hr-main{flex:1;display:grid;grid-template-columns:1fr auto;min-height:0}.hr-stage{padding:1.25rem 1.5rem 2rem;overflow:auto}.hr-panel{max-width:960px}.hr-h1{font-size:1.55rem;margin-bottom:.35rem}.hr-h2{font-size:1.15rem;margin:1.25rem 0 .5rem}.hr-h3{font-size:.95rem;margin:1rem 0 .4rem}.hr-lead{color:var(--text-secondary, var(--muted));margin-bottom:1.25rem;max-width:40em}.hr-zones{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin-bottom:1.25rem}.hr-zone{border:1px solid var(--border-subtle);border-radius:10px;padding:.75rem;background:var(--surface-muted, transparent)}.hr-zone-n{display:block;font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums}.hr-zone-l{font-size:.72rem;letter-spacing:.04em;color:var(--text-muted, var(--muted))}.hr-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.hr-btn{border:1px solid var(--border-subtle);background:var(--surface-card, transparent);color:inherit;border-radius:8px;padding:.45rem .85rem;cursor:pointer}.hr-btn--primary{background:var(--hr-accent, var(--accent-base));border-color:transparent;color:#fff}.hr-btn--primary:hover{background:var(--hr-accent-hover, var(--accent-hover))}.hr-btn--ghost{background:transparent}.hr-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.hr-list-item{border:1px solid var(--border-subtle);border-radius:10px;padding:.75rem .9rem;background:var(--surface-card, transparent)}.hr-list--click .hr-list-item{cursor:pointer}.hr-list-item--active{border-color:color-mix(in srgb,var(--hr-accent, var(--accent-base)) 50%,var(--border-subtle));background:var(--hr-accent-fill, var(--accent-fill))}.hr-muted{color:var(--text-muted, var(--muted));font-size:.88rem}.hr-map-grid{display:grid;gap:.5rem;margin:.75rem 0}.hr-map-row{display:grid;grid-template-columns:1fr minmax(10rem,14rem);gap:.5rem;align-items:center;font-size:.88rem}.hr-map-col{font-family:var(--font-mono, ui-monospace, monospace)}.hr-map-flag{color:var(--hr-accent, var(--accent-base));font-style:normal;font-size:.78rem}.hr-map-select{width:100%;padding:.35rem .5rem;border-radius:6px;border:1px solid var(--border-subtle);background:var(--surface-card, transparent);color:inherit}.hr-split{display:grid;grid-template-columns:minmax(240px,340px) 1fr;gap:1rem;min-height:60vh}.hr-split-list,.hr-split-detail{border:1px solid var(--border-subtle);border-radius:12px;padding:1rem;background:color-mix(in srgb,var(--surface-card, var(--bg)) 70%,transparent)}.hr-card{border:1px solid var(--border-subtle);border-radius:8px;padding:.65rem .75rem;margin:.4rem 0}.hr-draft{white-space:pre-wrap;font-family:var(--sans);font-size:.85rem;background:var(--surface-muted, transparent);border-radius:8px;padding:.75rem;margin-top:.5rem}.hr-chat-dock{width:min(320px,36vw);border-left:1px solid var(--border-subtle);padding:1rem;background:var(--surface-muted, transparent)}.hr-chat-input{width:100%;margin-top:.75rem;border-radius:8px;border:1px solid var(--border-subtle);background:var(--surface-card, transparent);color:inherit;padding:.5rem;resize:vertical}.hr-flash{position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);background:var(--surface-card, #111);border:1px solid var(--border-subtle);padding:.5rem .9rem;border-radius:999px;box-shadow:var(--shadow);z-index:50}.hr-banner{margin:1rem 1.5rem 0;padding:.75rem 1rem;border-radius:8px}.hr-banner--warn{background:var(--state-attention-fill, #fff8e6);color:var(--state-attention, #e5a000)}@media(max-width:860px){.hr-zones{grid-template-columns:repeat(2,1fr)}.hr-split,.hr-main{grid-template-columns:1fr}.hr-chat-dock{width:100%;border-left:0;border-top:1px solid var(--border-subtle)}}body.desktop-app .cv-lienzo-unified-focus{display:flex;flex-direction:column;flex:1 1 0;min-height:0}body.desktop-app .cv-lienzo-unified-focus .cv-workspace-stage-host{flex:0 0 auto;max-height:38%;min-height:0;overflow-x:hidden;overflow-y:auto;border-bottom:1px solid var(--line-strong, var(--border, #333));background:var(--surface-dim, #1e1e1e)}body.desktop-app .cv-lienzo-unified-focus .cv-lienzo-data{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}body.desktop-app .cv-stage{flex:1;min-height:0;display:flex;flex-direction:column;gap:0;overflow:hidden;padding:0;margin:0}body.desktop-app .cv-table-stage{min-width:0;min-height:0;flex:1 1 0;height:100%;display:flex;flex-direction:column;overflow:hidden;border:none;border-radius:0;box-shadow:none;background:var(--sheet-cell);margin:0;padding:0}body.desktop-app .cv-unified-dashboards{border-top:1px solid var(--line);padding-top:1.5rem;flex:0 0 auto}body.desktop-app .cv-unified-export{border-top:1px solid var(--line);padding-top:1.5rem;flex:0 0 auto;margin-bottom:2rem}body.desktop-app .cv-unified-section-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1rem}body.desktop-app .cv-unified-section-header h3{font-size:1.1rem;margin:0;font-weight:600;color:var(--ink)}body.desktop-app .cv-unified-section-header .muted{font-size:.8rem;color:var(--ink-3, #888)}.cv-stage-hero-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;background:linear-gradient(135deg,#1e293bf2,#0f172afa);border:1px solid var(--accent-line, #38bdf844);border-radius:12px;padding:18px 24px;margin:12px 16px 16px;box-shadow:0 4px 20px #00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cv-hero-left{display:flex;flex-direction:column;gap:4px}.cv-hero-tag-row{display:flex;align-items:center;gap:10px}.cv-hero-tag{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#38bdf8;background:#38bdf81f;border:1px solid rgba(56,189,248,.3);padding:2px 8px;border-radius:20px}.cv-hero-meta{font-size:.82rem;color:#94a3b8}.cv-hero-title{margin:4px 0 2px;font-size:1.2rem;font-weight:700;color:#f8fafc}.cv-hero-sub{margin:0;font-size:.88rem}.cv-hero-sub.warning{color:#fbbf24}.cv-hero-sub.success{color:#4ade80}.cv-hero-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.cv-hero-actions .btn.primary{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;font-weight:600;padding:10px 18px;border-radius:8px;border:none;box-shadow:0 2px 10px #0284c74d;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.cv-hero-actions .btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #0284c773}.cv-hero-actions .btn.ghost{background:#ffffff0f;color:#cbd5e1;border:1px solid rgba(255,255,255,.15);font-weight:600;padding:10px 16px;border-radius:8px;cursor:pointer}.cv-hero-actions .btn.ghost:hover{background:#ffffff1f;color:#fff}.cv-tbl td.cv-cell-empty{background-color:#b547081a!important;color:#9a3412}.cv-tbl td.cv-cell-invalid{background-color:#ef44442e!important;color:#f87171}.cv-tbl td.cv-cell-duplicate{background-color:#a855f726!important;color:#c084fc}.cv-tbl td.cv-cell-selected-match{background-color:#0b6bcb24!important;color:#0b6bcb;font-weight:600}.cv-tbl td.cv-cell-clean{background-color:#1a7f371f!important;color:#1a7f37}.cv-tbl td.cv-cell-selected{outline:2px solid rgba(96,165,250,.95);outline-offset:-2px;z-index:1}.cv-tbl td.cv-cell-selected.cv-cell-empty,.cv-tbl td.cv-cell-selected.cv-cell-clean{outline-color:#fbbf24e6}body.desktop-app .cv-chart{display:flex;flex-direction:column;gap:8px;min-width:0}body.desktop-app .cv-chart-title{font-size:.8125rem;font-weight:600;color:var(--text-primary)}body.desktop-app .cv-chart-empty{color:var(--text-muted);font-size:.8125rem}body.desktop-app .cv-chart-svg-host{width:100%}body.desktop-app .cv-chart-svg{display:block;width:100%;height:auto;overflow:visible}body.desktop-app .cv-chart-grid line,body.desktop-app .cv-chart-axis{stroke:var(--chart-grid);stroke-width:1}body.desktop-app .cv-chart-tick,body.desktop-app .cv-chart-xlabel{fill:var(--chart-axis);font-size:9px}body.desktop-app .cv-chart-tick{text-anchor:end}body.desktop-app .cv-chart-xlabel{text-anchor:middle}body.desktop-app .cv-chart-bar{fill:var(--chart-series-1)}body.desktop-app .cv-chart-line{fill:none;stroke:var(--chart-series-1);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}body.desktop-app .cv-chart-dot{fill:var(--chart-series-1);stroke:var(--surface-card);stroke-width:2}body.desktop-app .cv-chart-bar.is-muted{opacity:.28}body.desktop-app .cv-chart-bar.is-active{opacity:1}body.desktop-app .cv-chart-bar.is-clickable{cursor:pointer}body.desktop-app .cv-chart-bar.is-clickable:hover{opacity:.82}body.desktop-app .cv-chart-hero{display:flex;flex-direction:column;gap:2px;padding:8px 0}body.desktop-app .cv-chart-hero-value{font-size:1.75rem;font-weight:650;line-height:1.1;color:var(--text-primary);font-variant-numeric:tabular-nums}body.desktop-app .cv-chart-hero-label{font-size:.8125rem;color:var(--text-secondary)}body.desktop-app .cv-chart-legend{display:flex;flex-wrap:wrap;gap:4px 6px}body.desktop-app .cv-chart-legend-row{font-size:.75rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border-subtle);border-radius:999px;padding:2px 8px;font-variant-numeric:tabular-nums}body.desktop-app button.cv-chart-legend-row.is-clickable{cursor:pointer}body.desktop-app button.cv-chart-legend-row.is-clickable:hover{border-color:var(--accent-border);color:var(--text-primary)}body.desktop-app .cv-chart-legend-row.is-active{background:var(--accent-fill);border-color:var(--accent-border);color:var(--text-primary);font-weight:600}body.desktop-app .cv-chart-a11y summary{font-size:.75rem;color:var(--text-muted);cursor:pointer}body.desktop-app .cv-chart-data{width:100%;font-size:.75rem;border-collapse:collapse;margin-top:6px}body.desktop-app .cv-chart-data th,body.desktop-app .cv-chart-data td{text-align:left;padding:2px 6px;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}body.desktop-app .cv-sheet-graph{width:100%;overflow-x:auto}body.desktop-app .cv-sheet-graph.is-empty{color:var(--text-muted);font-size:.8125rem;text-align:center;padding:24px}body.desktop-app .cv-sheet-graph-svg{display:block;max-width:100%;height:auto}body.desktop-app .cv-graph-edge{fill:none;stroke:var(--chart-grid);stroke-width:1.5}body.desktop-app .cv-graph-arrow-head{fill:var(--chart-grid)}body.desktop-app .cv-graph-node-box{fill:var(--surface-muted);stroke:var(--border-subtle);stroke-width:1}body.desktop-app .cv-graph-node.is-computed .cv-graph-node-box{fill:var(--accent-fill);stroke:var(--accent-border)}body.desktop-app .cv-graph-node.has-discrepancy .cv-graph-node-box{stroke:var(--state-attention);stroke-width:2}body.desktop-app .cv-graph-node-name{fill:var(--text-primary);font-size:13px;font-weight:600}body.desktop-app .cv-graph-node-role{fill:var(--text-muted);font-size:11px}body.desktop-app .cv-graph-node-flag{fill:var(--state-attention);font-size:11px;font-weight:600;text-anchor:end}body.desktop-app .cv-graficos{display:flex;flex-direction:column;gap:16px;padding:16px;min-width:0;flex:1;min-height:0;overflow-y:auto}body.desktop-app .cv-graficos-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}body.desktop-app .cv-graficos-title{margin:0;font-size:1.0625rem;font-weight:650;color:var(--text-primary)}body.desktop-app .cv-graficos-lead{margin:2px 0 0;font-size:.8125rem;color:var(--text-muted)}body.desktop-app .cv-graficos-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}body.desktop-app .cv-graficos-kpi{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:10px;padding:10px 12px}body.desktop-app .cv-graficos-kpi-value{font-size:1.375rem;font-weight:650;line-height:1.15;color:var(--text-primary);font-variant-numeric:tabular-nums}body.desktop-app .cv-graficos-kpi-label{font-size:.75rem;color:var(--text-secondary)}body.desktop-app .cv-graficos-kpi-hint{font-size:.6875rem;color:var(--text-muted);margin-top:2px}body.desktop-app .cv-graficos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}body.desktop-app .cv-graficos-grid .cv-dashboards-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:12px;padding:12px;min-width:0;position:relative}body.desktop-app .cv-graficos-grid .cv-dashboards-card.is-brush-source{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-border)}body.desktop-app .cv-graficos-grid .cv-dashboards-card.is-brushed{opacity:.86}body.desktop-app .cv-dashboards-brush-tag{font-size:.6875rem;color:var(--text-muted);margin-top:6px}body.desktop-app .cv-graficos-grid .cv-dashboards-remove{position:absolute;top:8px;right:8px;opacity:0;transition:opacity .12s ease}body.desktop-app .cv-graficos-grid .cv-dashboards-card:hover .cv-dashboards-remove,body.desktop-app .cv-graficos-grid .cv-dashboards-remove:focus-visible{opacity:1}body.desktop-app .cv-graficos-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:12px;padding:12px;min-width:0}body.desktop-app .cv-graficos-card-title{margin:0;font-size:.875rem;font-weight:650;color:var(--text-primary)}body.desktop-app .cv-graficos-card-note{margin:2px 0 10px;font-size:.75rem;color:var(--text-muted)}body.desktop-app .cv-graficos-brush{display:flex;align-items:center;gap:8px;font-size:.75rem;background:var(--accent-fill);border:1px solid var(--accent-border);border-radius:999px;padding:4px 6px 4px 12px}body.desktop-app .cv-dashboards-brush-label{color:var(--text-primary);font-weight:600}body.desktop-app .cv-dashboards-empty{text-align:center;color:var(--text-muted);font-size:.8125rem;padding:32px 16px;background:var(--surface-card);border:1px dashed var(--border-subtle);border-radius:12px}body.desktop-app .cv-graficos-thumb{cursor:pointer;text-align:left;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}body.desktop-app .cv-graficos-thumb:hover{border-color:var(--accent-border);box-shadow:0 2px 12px #00000012;transform:translateY(-1px)}body.desktop-app .cv-graficos-thumb:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}body.desktop-app .cv-graficos-detail{display:flex;flex-direction:column;gap:12px}body.desktop-app .cv-graficos-back{align-self:flex-start}body.desktop-app .cv-graficos-detail-card{position:relative;max-width:760px}body.desktop-app .cv-graficos-detail-card .cv-dashboards-remove{position:absolute;top:8px;right:8px}.lp{min-height:100vh;background:var(--surface-page);color:var(--text-primary);display:flex;flex-direction:column}.lp-nav{display:flex;align-items:center;gap:16px;padding:18px 0}.lp-nav .spacer{margin-left:auto}.hero{padding:72px 0 56px;text-align:center;max-width:860px;margin-inline:auto;display:flex;flex-direction:column;align-items:center}.hero h1{font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.12;letter-spacing:-.03em;margin:20px 0 16px;color:var(--text-primary)}.hero h1 .g{color:var(--chart-series-1);display:inline-block}.hero .lead{font-size:1.18rem;line-height:1.6;color:var(--text-secondary);max-width:720px;margin-bottom:32px}.cta-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px}.hero .btn.big{padding:16px 32px;font-size:1.12rem;font-weight:700;letter-spacing:-.01em}.band{padding:64px 0}.band.soft{background:var(--surface-card)}.t{font-size:clamp(1.6rem,3.5vw,2.2rem);text-align:center;margin-bottom:12px;letter-spacing:-.02em}.lead-c{text-align:center;font-size:1.08rem;color:var(--text-secondary);max-width:660px;margin:0 auto 36px;line-height:1.55}.demo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:32px}.demo-card{background:var(--surface-page);border:1px solid var(--border-strong);border-radius:var(--r);padding:18px;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease}.demo-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.demo-header{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:14px}.demo-body{display:flex;align-items:center;justify-content:space-between;gap:10px}.demo-cell{display:flex;flex-direction:column;gap:4px;flex:1}.demo-lbl{font-size:.72rem;font-weight:600;color:var(--text-muted)}.demo-val{font-family:var(--mono);font-size:.88rem;padding:6px 10px;border-radius:var(--r-xs);background:var(--surface-muted);border:1px solid var(--border-subtle);word-break:break-all}.demo-cell.before .demo-val{color:var(--diff-before-ink);background:var(--diff-before-fill)}.demo-cell.after .demo-val{color:var(--diff-after-ink);background:var(--diff-after-fill);font-weight:600}.demo-arrow{font-size:1.1rem;font-weight:700;color:var(--text-muted)}.ba-highlights{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.tag-badge{font-size:.86rem;font-weight:600;padding:8px 16px;border-radius:var(--r-pill);background:var(--surface-page);border:1px solid var(--border-strong);color:var(--text-primary)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.feat{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s ease}.feat:hover{border-color:var(--accent-border)}.feat .ic{font-size:1.6rem;line-height:1}.feat h3{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.feat p{font-size:.92rem;color:var(--text-secondary);line-height:1.5}.format-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.format-card{background:var(--surface-page);border:1px solid var(--border-subtle);border-radius:var(--r);padding:22px}.format-card h3{font-size:1.05rem;font-weight:700;margin-bottom:8px}.format-card p{font-size:.9rem;color:var(--text-secondary)}.dl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:24px}.dl-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:28px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;transition:border-color .15s ease,box-shadow .15s ease}.dl-card.dl-primary{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-border),var(--shadow);background:linear-gradient(180deg,var(--surface-card) 0%,var(--surface-muted) 100%)}.dl-os{font-size:2.2rem;line-height:1;margin-bottom:4px}.dl-card h3{font-size:1.2rem;font-weight:700}.dl-detect{font-size:.8rem;color:var(--accent-base);font-weight:600}.dl-note{text-align:center;font-size:.88rem;color:var(--text-muted);max-width:600px;margin:0 auto}.lp-foot{margin-top:auto;padding:32px 0;background:var(--surface-card)}.lp-foot .cols{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.lp-foot nav{display:flex;gap:20px}.lp-foot nav a{font-size:.9rem;color:var(--text-secondary)}.lp-foot .contact{font-size:.86rem;color:var(--text-secondary)}.plat-line{margin:18px 0 0;font-size:.86rem;color:var(--text-secondary)}.demo-note{margin:12px 0 0;font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.find-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.find-card{background:var(--surface-page);border:1px solid var(--border-subtle);border-radius:12px;padding:20px;min-width:0}.find-title{margin:0 0 14px;font-size:1rem;font-weight:650;color:var(--text-primary)}.find-ex{display:flex;align-items:stretch;gap:10px;margin-bottom:14px}.find-cell{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;border-radius:9px;padding:10px 12px}.find-cell.is-from{background:var(--diff-before-fill)}.find-cell.is-to{background:var(--diff-after-fill)}.find-lbl{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.find-val{font-size:1.05rem;font-weight:650;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:break-word}.find-cell .find-val{color:var(--text-primary)}.find-arrow{align-self:center;font-size:1rem;color:var(--text-secondary)}.find-line{margin:0;font-size:.86rem;line-height:1.55;color:var(--text-secondary)}.idx{display:flex;flex-direction:column;gap:2px;max-width:760px;margin-inline:auto;border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.idx-row{background:var(--surface-card);padding:16px 18px}.idx-row.is-current{background:var(--accent-fill)}.idx-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}.idx-name{font-size:.98rem;font-weight:650;letter-spacing:-.01em;color:var(--text-primary)}.idx-name.idx-link{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px;transition:color .15s ease}.idx-name.idx-link:hover{color:var(--accent-base)}.idx-host{font-size:.8rem;color:var(--text-primary);text-decoration:underline;text-underline-offset:2px}.idx-host:hover{text-decoration-thickness:2px}.idx-host.is-current{color:var(--text-secondary);text-decoration:none}.idx-desc{margin:4px 0 0;font-size:.86rem;line-height:1.55;color:var(--text-secondary)}.wl-slots{margin:-8px 0 20px;text-align:center;font-size:.88rem;font-weight:600;color:var(--text-primary);min-height:1.2em}.wl-wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start;max-width:900px;margin-inline:auto}.wl-form{display:flex;flex-direction:column;gap:14px;background:var(--surface-page);border:1px solid var(--border-subtle);border-radius:14px;padding:22px}.wl-field{display:flex;flex-direction:column;gap:6px}.wl-label{font-size:.84rem;font-weight:600;color:var(--text-primary)}.wl-input{font:inherit;font-size:.94rem;color:var(--text-primary);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:9px;padding:10px 12px;width:100%}.wl-input:focus-visible{outline:2px solid var(--accent-base);outline-offset:1px;border-color:var(--accent-base)}.wl-textarea{resize:vertical;min-height:76px;line-height:1.5}.wl-note{margin:0;min-height:1.2em;font-size:.82rem;color:var(--text-secondary)}.wl-ok{margin:0;font-size:.98rem;line-height:1.6;color:var(--text-primary)}.wl-aside h3{margin:0 0 8px;font-size:.96rem;color:var(--text-primary)}.wl-aside p{margin:0 0 12px;font-size:.86rem;line-height:1.6;color:var(--text-secondary)}.stepper-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;position:relative;max-width:960px;margin-inline:auto}.stepper-flow:before{content:"";position:absolute;top:22px;left:16%;right:16%;height:2px;background:var(--accent-border);z-index:1}.step-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;position:relative;z-index:2}.step-badge{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--surface-page);border:2px solid var(--accent-base);color:var(--accent-base);font-weight:800;font-size:.95rem;box-shadow:0 0 0 6px var(--surface-page)}.step-body{display:flex;flex-direction:column;align-items:center;text-align:center}.step-title{font-size:1.12rem;font-weight:700;color:var(--text-primary);margin-bottom:6px;text-align:center}.step-desc{font-size:.92rem;color:var(--text-secondary);line-height:1.55;text-align:center}.spec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:var(--r);overflow:hidden}.spec-item{background:var(--surface-card);padding:24px;display:flex;flex-direction:column;gap:10px}.spec-tag{display:inline-block;font-size:.8rem;font-weight:700;color:var(--accent-base);background:var(--accent-fill);padding:4px 10px;border-radius:var(--r-pill);width:fit-content}.spec-title{font-size:1.05rem;font-weight:700;color:var(--text-primary)}.spec-desc{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.segment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.segment-card{background:var(--surface-page);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-base);border-radius:var(--r);padding:22px;transition:transform .15s ease}.segment-card:hover{transform:translateY(-2px)}.segment-title{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:8px}.segment-desc{font-size:.92rem;color:var(--text-secondary);line-height:1.5}@media(max-width:1120px){.hero{padding:44px 0 32px}.hero h1{font-size:1.85rem;margin:14px 0 12px}.hero .lead{font-size:1.02rem;margin-bottom:24px}.cta-row{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:14px}.band{padding:44px 0}.stepper-flow{grid-template-columns:1fr!important;gap:40px!important}.stepper-flow:before{display:none!important}.spec-grid{grid-template-columns:1fr!important}.find-grid,.features,.segment-grid,.format-grid,.dl-grid{grid-template-columns:1fr!important;gap:20px}.wl-wrap{grid-template-columns:1fr!important;gap:24px}.lp-foot .cols{flex-direction:column;align-items:center;text-align:center;gap:20px}.lp-foot nav{flex-wrap:wrap;justify-content:center}}@media(max-width:640px){.nav-link-desktop{display:none!important}}@media(max-width:560px){.container{width:calc(100% - 24px)}.lp-nav{flex-wrap:wrap;gap:10px;justify-content:space-between}.lp-nav .spacer{display:none}.find-card,.feat,.format-card,.dl-card,.wl-form{padding:16px 14px}.find-ex{flex-direction:column;gap:8px;align-items:stretch}.find-arrow{text-align:center;transform:rotate(90deg)}.idx-head{flex-direction:column;align-items:flex-start;gap:4px}}
