:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-ui:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "Source Code Pro", Consolas, monospace;--radius-sm:8px;--radius-md:10px;--radius-lg:18px;--radius-xl:24px;--motion-duration:.16s;--motion-ease:cubic-bezier(.2, .8, .2, 1);--shadow-sm:0 1px 4px #00000014;--shadow-md:0 4px 16px #0000001a;--shadow-lg:0 8px 32px #00000024;--shadow-focus:0 0 0 2px var(--color-bg-canvas), 0 0 0 4px var(--color-accent-primary);--color-bg-canvas:#f0f4f0;--color-bg-surface:#fff;--color-bg-surface-raised:#ebf2eb;--color-bg-muted:#ebf2eb;--color-border-subtle:#d4e4d4;--color-border-strong:#1a5c1a;--color-text-primary:#111827;--color-text-secondary:#374151;--color-text-muted:#6b7280;--color-text-inverse:#fff;--color-accent-primary:#1a5c1a;--color-accent-primary-hover:#1e6b1e;--color-accent-primary-pressed:#144d14;--color-accent:#1a5c1a;--color-accent-bright:#3d9b40;--color-accent-light:#e8f5e9;--color-status-success:#1a5c1a;--color-status-warning:#b45309;--color-status-danger:#c42424;--color-status-info:#1e6b1e;--color-success:#1a5c1a;--color-warning:#f59e0b;--color-warning-text:#92400e;--color-danger:#e53e3e;--color-info:#3d9b40;--color-scope-private:#6366f1;--color-scope-company:#1a5c1a;--color-scope-content:#d97706;--color-scope-wg:#8b5cf6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--text-xs:.75rem;--text-sm:.8125rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--line-height-body:1.55;--line-height-tight:1.3;--bp-medium:768px;--bp-expanded:1024px;--shell-header-height:56px;--shell-nav-width:240px;--shell-mobile-nav-height:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%}body{min-height:100%;font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--line-height-body);color:var(--color-text-primary);background:var(--color-bg-canvas);padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right);margin:0;overflow-x:hidden}#root{min-height:100svh}a{color:var(--color-accent-primary);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--color-accent-primary-hover)}:focus-visible{box-shadow:var(--shadow-focus);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.skip-link{left:var(--space-4);top:calc(var(--space-4) + var(--safe-top));z-index:100;padding:var(--space-2) var(--space-3);background:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-primary);transition:transform var(--motion-duration) var(--motion-ease);font-weight:500;text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.search-panel{z-index:60;padding:var(--space-6) var(--space-4);padding-top:calc(var(--space-8) + var(--safe-top));justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.search-panel__backdrop{cursor:pointer;background:#080a0e8c;border:none;margin:0;padding:0;position:absolute;inset:0}.search-panel__card{z-index:1;width:min(580px,100%);max-height:calc(100svh - var(--space-8) * 2);padding:var(--space-5);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;display:flex;position:relative;overflow:auto;box-shadow:0 24px 48px #0003}.search-panel__head{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.search-panel__title{font-size:var(--text-lg);margin:0;font-weight:600}.search-panel__head-right{align-items:center;gap:var(--space-2);display:flex}.search-panel__shortcut{font-size:var(--text-xs);color:var(--color-text-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:2px 6px;font-family:monospace}.search-panel__input-wrap{position:relative}.search-panel__input-icon{color:var(--color-text-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-panel__input{width:100%;padding-left:38px!important}.search-panel__hint{font-size:var(--text-sm);color:var(--color-text-secondary);text-align:center;padding:var(--space-3) 0;margin:0}.search-panel__footer{font-size:var(--text-xs);color:var(--color-text-muted);text-align:right;border-top:1px solid var(--color-border-subtle);padding-top:var(--space-2);margin:0}.search-panel__suggestions{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.search-panel__suggestion{text-align:left;gap:var(--space-1);width:100%;padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font:inherit;color:inherit;background:0 0;border:1px solid #0000;flex-direction:column;transition:background-color 80ms;display:flex}.search-panel__suggestion:hover,.search-panel__suggestion--active{background:var(--color-bg-surface-raised);border-color:var(--color-border-subtle)}.search-panel__suggestion-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.search-panel__suggestion-label{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.search-panel__suggestion-meta{font-size:var(--text-xs);color:var(--color-text-secondary);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search-panel__badge{font-size:var(--text-xs);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;padding:2px 6px}.search-panel__badge--task{color:#2563eb;background:#2563eb22}.search-panel__badge--project{color:#7c3aed;background:#7c3aed22}.search-panel__badge--inbox{color:#059669;background:#05966922}.search-panel__badge--service{color:#f59e0b;background:#f59e0b22}.search-panel__badge--agent{color:#ec4899;background:#ec489922}.search-panel__badge--command{color:#94a3b8;background:#64748b22}.shortcuts-panel{z-index:200;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.shortcuts-panel__backdrop{cursor:default;background:#00000073;border:none;position:absolute;inset:0}.shortcuts-panel__card{z-index:1;background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:560px;max-height:80vh;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}.shortcuts-panel__head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.shortcuts-panel__title{font-size:var(--text-base);margin:0;font-weight:600}.shortcuts-panel__body{padding:var(--space-4) var(--space-5);gap:var(--space-5);flex-direction:column;display:flex;overflow-y:auto}.shortcuts-panel__group-heading{margin:0 0 var(--space-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);font-weight:600}.shortcuts-panel__list{gap:var(--space-1);flex-direction:column;margin:0;display:flex}.shortcuts-panel__row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-1) 0;display:flex}.shortcuts-panel__keys{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.shortcuts-panel__kbd{min-width:28px;font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--text-xs);background:var(--color-bg-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);color:var(--color-text-primary);border-bottom-width:2px;justify-content:center;align-items:center;padding:2px 6px;font-weight:500;line-height:1.4;display:inline-flex}.shortcuts-panel__then{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0 var(--space-1)}.shortcuts-panel__desc{font-size:var(--text-sm);color:var(--color-text-primary);text-align:right;flex:1}.shortcuts-panel__footer{padding:var(--space-3) var(--space-5);font-size:var(--text-xs);color:var(--color-text-secondary);border-top:1px solid var(--color-border-subtle);flex-shrink:0;margin:0}.notif-panel{z-index:200;padding:var(--space-4);justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}@media (width>=1024px){.notif-panel{padding-top:calc(var(--shell-header-height) + var(--space-2));padding-right:var(--space-5)}}.notif-panel__backdrop{cursor:default;background:#0000004d;border:none;position:absolute;inset:0}.notif-panel__card{z-index:1;background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:420px;max-height:70vh;display:flex;position:relative;box-shadow:0 16px 48px #00000040}.notif-panel__head{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap;flex-shrink:0;display:flex}.notif-panel__title{font-size:var(--text-base);align-items:center;gap:var(--space-2);flex:1;margin:0;font-weight:600;display:flex}.notif-panel__unread-badge{background:var(--color-accent);color:#fff;min-width:20px;height:20px;font-size:var(--text-xs);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-weight:700;line-height:1;display:inline-flex}.notif-panel__head-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.notif-panel__body{flex:1;min-height:0;overflow-y:auto}.notif-panel__empty{padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.notif-panel__list{padding:var(--space-2) 0;margin:0;list-style:none}.notif-panel__item{border-bottom:1px solid var(--color-border-subtle);transition:background .1s}.notif-panel__item:last-child{border-bottom:none}.notif-panel__item--read{opacity:.6}.notif-panel__item-head{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4) var(--space-1);display:flex}.notif-panel__item-time{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:auto}.notif-panel__dismiss{cursor:pointer;color:var(--color-text-muted);font-size:var(--text-sm);border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 4px;line-height:1;transition:color .1s,background .1s}.notif-panel__dismiss:hover{color:var(--color-text-primary);background:var(--color-bg-muted)}.notif-panel__item-body{gap:var(--space-1);text-align:left;cursor:pointer;width:100%;padding:var(--space-1) var(--space-4) var(--space-3);background:0 0;border:none;flex-direction:column;transition:background .1s;display:flex}.notif-panel__item-body:hover{background:var(--color-bg-muted)}.notif-panel__item-title{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:600}.notif-panel__item-detail{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.4}.notif-panel__item-link{font-size:var(--text-xs);color:var(--color-accent);margin-top:var(--space-1)}.offline-banner{padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-status-warning) 18%, var(--color-bg-surface));color:var(--color-text-primary);font-size:var(--text-sm);text-align:center;border-bottom:1px solid var(--color-border-subtle)}.task-form-drawer__fields{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.task-form-drawer__field--full{grid-column:1/-1}.task-form-drawer__textarea{resize:vertical;min-height:90px;font-family:inherit;line-height:var(--line-height-body)}.task-form-drawer__checkbox-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-primary);display:flex}.task-form-drawer__hint{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.task-form-drawer__actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.task-form-drawer__success{gap:var(--space-3);flex-direction:column;display:flex}.task-form-drawer__prompt{white-space:pre-wrap;font-family:var(--font-mono,monospace);font-size:var(--text-xs);background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:var(--space-3);max-height:320px;overflow-y:auto}:root{--jc-bg-app:#1b212a;--jc-bg-surface:#232b35;--jc-bg-raised:#2c3540;--jc-bg-inset:#161c24;--jc-border:#38424e;--jc-border-soft:#313a45;--jc-tx-primary:#e6edf3;--jc-tx-secondary:#9da7b3;--jc-tx-muted:#6b7681;--jc-accent:#3d9b40;--jc-accent-hover:#46b04a;--jc-accent-dim:#3d9b4029;--jc-info:#38bdf8;--jc-nav-bg-top:#16441a;--jc-nav-bg-bot:#0f3312;--jc-nav-border:#1f5a24;--jc-nav-tx:#e9f3e9cc;--jc-nav-tx-active:#fff;--jc-nav-accent:#7cd183;--jc-ok:#22c55e;--jc-err:#ef4444;--jc-idle:#6b7681;--jc-warn:#f59e0b;--jc-ok-dim:#22c55e21;--jc-err-dim:#ef444421;--jc-idle-dim:#6b768129;--jc-warn-dim:#f59e0b24;--jc-ok-tx:#5fe08a;--jc-err-tx:#ff7a7a;--jc-warn-tx:#f6b545;--jc-idle-tx:#9aa3ad;--jc-hover:#2e3742;--jc-hover-btn:#333d49;--jc-border-hover:#47515e;--jc-topbar-h:56px;--jc-filter-h:44px;--jc-nav-w:240px}[data-jc-theme=light]{--jc-bg-app:#ebeef1;--jc-bg-surface:#fff;--jc-bg-raised:#f4f6f8;--jc-bg-inset:#eef1f4;--jc-border:#dce1e7;--jc-border-soft:#e8ecf0;--jc-tx-primary:#1a222b;--jc-tx-secondary:#51606d;--jc-tx-muted:#8492a0;--jc-info:#0c8fb0;--jc-ok-tx:#15803d;--jc-err-tx:#c0362f;--jc-warn-tx:#b45309;--jc-idle-tx:#5b6671;--jc-hover:#eff3f6;--jc-hover-btn:#e9edf1;--jc-border-hover:#c3ccd5}.jc-shell{grid-template-columns:var(--jc-nav-w) minmax(0, 1fr);grid-template-rows:var(--jc-topbar-h) 1fr;background:var(--jc-bg-app);height:100dvh;color:var(--jc-tx-primary);font-family:var(--font-ui);grid-template-areas:"brand topbar""nav main";font-size:14px;line-height:1.4;display:grid;overflow:hidden}.jc-brand{background:var(--jc-nav-bg-top);border-bottom:1px solid var(--jc-nav-border);border-right:1px solid var(--jc-nav-border);grid-area:brand;align-items:center;gap:10px;padding:0 16px;display:flex}.jc-brand-mark{width:22px;height:22px;font-family:var(--font-mono);color:#16441a;background:#fff;border-radius:5px;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.jc-brand-word{font-family:var(--font-mono);letter-spacing:-.2px;color:#fff;font-size:14.5px;font-weight:600}.jc-topbar{background:var(--jc-bg-surface);border-bottom:1px solid var(--jc-border);z-index:30;grid-area:topbar;align-items:center;gap:16px;padding:0 18px 0 16px;display:flex}.jc-topbar-burger{width:40px;height:40px;color:var(--jc-tx-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;margin-left:-6px;transition:background .12s,color .12s,border-color .12s;display:none}.jc-topbar-burger:hover{background:var(--jc-hover-btn);color:var(--jc-tx-primary);border-color:var(--jc-border)}.jc-env-badge{font-family:var(--font-mono);color:var(--jc-tx-secondary);background:var(--jc-bg-raised);border:1px solid var(--jc-border);white-space:nowrap;border-radius:5px;align-items:center;gap:7px;padding:4px 9px;font-size:11.5px;display:inline-flex}.jc-env-badge b{color:var(--jc-tx-primary);font-weight:600}.jc-global-search{background:var(--jc-bg-inset);border:1px solid var(--jc-border);max-width:460px;height:32px;color:var(--jc-tx-muted);cursor:text;border-radius:6px;flex:1;align-items:center;gap:8px;padding:0 10px;transition:border-color .12s;display:flex}.jc-global-search:focus-within{border-color:var(--jc-accent)}.jc-global-search input{color:var(--jc-tx-primary);font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1;font-size:13px}.jc-global-search input::placeholder{color:var(--jc-tx-muted)}.jc-global-search kbd{font-family:var(--font-mono);color:var(--jc-tx-muted);border:1px solid var(--jc-border);border-radius:4px;padding:1px 5px;font-size:11px}.jc-topbar-right{align-items:center;gap:14px;margin-left:auto;display:flex}.jc-health-pill{border:1px solid var(--jc-border);border-radius:999px;align-items:center;gap:7px;padding:4px 10px 4px 8px;font-size:12.5px;font-weight:500;display:inline-flex}.jc-health-pill.ok{background:var(--jc-ok-dim);color:var(--jc-ok-tx);border-color:#22c55e40}.jc-health-pill.warn{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border-color:#f59e0b47}.jc-health-pill.err{background:var(--jc-err-dim);color:var(--jc-err-tx);border-color:#ef444447}.jc-health-dot{border-radius:50%;flex:none;width:7px;height:7px}.jc-localrun-pill{font-size:12.5px;font-weight:500;font-family:var(--font-ui);background:var(--jc-ok-dim);color:var(--jc-ok-tx);cursor:pointer;border:1px solid #22c55e40;border-radius:999px;align-items:center;gap:7px;padding:4px 10px 4px 8px;display:inline-flex}.jc-localrun-pill:hover{border-color:#22c55e80}.jc-localrun-dot{background:var(--jc-ok);border-radius:50%;flex:none;width:7px;height:7px;animation:1.6s ease-in-out infinite jc-localrun-pulse}@keyframes jc-localrun-pulse{0%,to{opacity:1}50%{opacity:.35}}.jc-clock{font-family:var(--font-mono);color:var(--jc-tx-secondary);white-space:nowrap;font-size:12px}.jc-topbar-btn{width:30px;height:30px;color:var(--jc-tx-secondary);background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;transition:background .12s,color .12s,border-color .12s;display:grid;position:relative}.jc-topbar-btn:hover,.jc-topbar-btn.on{background:var(--jc-hover-btn);color:var(--jc-tx-primary);border-color:var(--jc-border)}.jc-badge-count{background:var(--jc-err);color:#fff;min-width:16px;height:16px;font-size:10px;font-weight:600;font-family:var(--font-mono);border-radius:8px;place-items:center;padding:0 3px;display:grid;position:absolute;top:-4px;right:-4px}.jc-acct{background:var(--jc-bg-raised);border:1px solid var(--jc-border);width:30px;height:30px;color:var(--jc-tx-secondary);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.jc-nav{background:linear-gradient(180deg, var(--jc-nav-bg-top), var(--jc-nav-bg-bot));border-right:1px solid var(--jc-nav-border);flex-direction:column;grid-area:nav;gap:1px;padding:10px;display:flex;overflow-y:auto}.jc-nav-section{letter-spacing:.8px;text-transform:uppercase;color:#e9f3e980;padding:12px 10px 5px;font-size:10.5px;font-weight:600}.jc-nav-item{color:var(--jc-nav-tx);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:8px 10px 8px 12px;font-size:13.5px;font-weight:500;transition:background .12s,color .12s;display:flex;position:relative}.jc-nav-item:hover{color:var(--jc-nav-tx-active);background:#ffffff14}.jc-nav-item.active{color:var(--jc-nav-tx-active);background:#ffffff24}.jc-nav-item.active:before{content:"";background:var(--jc-nav-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.jc-nav-key{font-family:var(--font-mono);color:#e9f3e973;flex:none;width:10px;font-size:11px}.jc-nav-item.active .jc-nav-key{color:var(--jc-nav-accent)}.jc-nav-ico{opacity:.85;flex:none;width:17px;height:17px}.jc-nav-label{flex:1}.jc-nav-dot{border-radius:50%;flex:none;width:7px;height:7px}.jc-nav-foot{border-top:1px solid var(--jc-nav-border);font-family:var(--font-mono);color:#e9f3e980;flex-direction:column;gap:3px;margin-top:auto;padding:12px 10px 6px;font-size:10.5px;display:flex}.jc-main{background:var(--jc-bg-app);flex-direction:column;grid-area:main;min-width:0;display:flex;overflow:hidden}.jc-filterbar{height:var(--jc-filter-h);background:var(--jc-bg-surface);border-bottom:1px solid var(--jc-border);flex:none;align-items:center;gap:10px;padding:0 20px;display:flex;overflow-x:auto}.jc-filter-label{letter-spacing:.5px;text-transform:uppercase;color:var(--jc-tx-muted);white-space:nowrap;margin-right:2px;font-size:11px;font-weight:600}.jc-fdrop{position:relative}.jc-fdrop-btn{background:var(--jc-bg-inset);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);white-space:nowrap;cursor:pointer;font-size:12.5px;font-family:var(--font-ui);border-radius:6px;align-items:center;gap:7px;padding:5px 9px;transition:border-color .12s;display:inline-flex}.jc-fdrop-btn:hover{border-color:var(--jc-border-hover);color:var(--jc-tx-primary)}.jc-fdrop-btn.set{border-color:var(--jc-accent);color:var(--jc-tx-primary)}.jc-fdrop-k{color:var(--jc-tx-muted);font-size:11px}.jc-fdrop-v{font-weight:600}.jc-fdrop-menu{z-index:50;background:var(--jc-bg-raised);border:1px solid var(--jc-border);border-radius:8px;min-width:180px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 12px 32px #00000073}.jc-fdrop-opt{text-align:left;width:100%;color:var(--jc-tx-secondary);cursor:pointer;font-size:13px;font-family:var(--font-ui);background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:7px 9px;display:flex}.jc-fdrop-opt:hover{background:var(--jc-bg-surface);color:var(--jc-tx-primary)}.jc-fdrop-opt.sel{color:var(--jc-tx-primary)}.jc-fdrop-check{color:var(--jc-accent);margin-left:auto}.jc-filter-chips{align-items:center;gap:7px;margin-left:4px;display:flex}.jc-fchip{background:var(--jc-accent-dim);color:var(--jc-tx-primary);border:1px solid #3d9b4073;border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:12px;display:inline-flex}.jc-fchip-x{width:15px;height:15px;color:var(--jc-tx-secondary);cursor:pointer;background:#ffffff14;border:none;border-radius:50%;place-items:center;display:grid}.jc-fchip-x:hover{background:var(--jc-err-dim);color:var(--jc-err)}.jc-filter-reset{color:var(--jc-tx-muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin-left:4px;font-size:12px;text-decoration:underline}.jc-filter-reset:hover{color:var(--jc-tx-primary)}.jc-filter-view{background:var(--jc-bg-inset);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);cursor:pointer;white-space:nowrap;border-radius:7px;align-items:center;gap:6px;margin-left:auto;padding:5px 11px;font-size:12px;display:inline-flex}.jc-filter-view:hover{color:var(--jc-tx-primary);border-color:var(--jc-border-hover)}.jc-filter-view.on{background:var(--jc-accent-dim);border-color:var(--jc-accent);color:var(--jc-tx-primary)}.jc-content{flex:1;padding:22px 24px 60px;overflow-y:auto}.jc-nav::-webkit-scrollbar{width:9px}.jc-content::-webkit-scrollbar{width:9px}.jc-nav::-webkit-scrollbar-track{background:0 0}.jc-content::-webkit-scrollbar-track{background:0 0}.jc-nav::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:5px}.jc-content::-webkit-scrollbar-thumb{background:var(--jc-border);border:2px solid var(--jc-bg-app);border-radius:5px}@media (width<=860px){.jc-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--jc-topbar-h) 1fr;grid-template-areas:"topbar""main"}.jc-topbar,.jc-global-search,.jc-global-search input{min-width:0}.jc-brand{display:none}.jc-topbar-burger{display:grid}.jc-topbar{padding-left:12px}.jc-nav{width:min(82vw,300px);height:100dvh;padding-top:max(10px, env(safe-area-inset-top));z-index:80;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:2px 0 24px #0006}.jc-shell.drawer-open .jc-nav{transform:translate(0)}.jc-nav-backdrop{z-index:70;background:#00000080;animation:.15s jc-backdrop-in;position:fixed;inset:0}}@keyframes jc-backdrop-in{0%{opacity:0}to{opacity:1}}@media (width<=560px){.jc-env-badge,.jc-clock{display:none}.jc-global-search{max-width:none}.jc-global-search kbd{display:none}.jc-topbar{gap:10px}.jc-topbar-right{gap:8px}.jc-filterbar{padding:0 12px}.jc-content{padding:14px 12px 48px}}.jc-page{min-height:0;padding:24px 28px 40px}.jc-block{margin-bottom:24px}.fade-in{animation:.15s jc-fade-in}@keyframes jc-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.jc-page-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.jc-page-title{letter-spacing:-.3px;color:var(--jc-tx-primary);margin:0;font-size:19px;font-weight:600;line-height:1.25}.jc-area-key{font-family:var(--font-mono);color:var(--jc-info);margin-right:8px;font-size:17px}.jc-page-sub{color:var(--jc-tx-secondary);margin:5px 0 0;font-size:12.5px;line-height:1.4}.jc-page-actions{flex:none;align-items:center;gap:8px;display:flex}.route-tabs,.system-tabs,.automation-tabs,.communication-tabs{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.route-tab,.system-tab,.automation-tab,.communication-tab{color:var(--jc-tx-secondary);background:var(--jc-bg-inset);border:1px solid var(--jc-border);font-size:12.5px;font-family:var(--font-ui);white-space:nowrap;cursor:pointer;border-radius:7px;padding:6px 12px;text-decoration:none;transition:border-color .12s,color .12s,background .12s}.route-tab:hover,.system-tab:hover,.automation-tab:hover,.communication-tab:hover{color:var(--jc-tx-primary);border-color:var(--jc-border-hover)}.route-tab--active,.system-tab--active,.automation-tab--active,.communication-tab--active{color:var(--jc-tx-primary);border-color:var(--jc-accent);background:var(--jc-accent-dim)}.jc-kpi-row{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:24px;display:grid}.jc-kpi{background:var(--jc-bg-surface);border:1px solid var(--jc-border);cursor:default;border-radius:10px;padding:14px 16px;transition:border-color .12s}.jc-kpi[role=button]{cursor:pointer}.jc-kpi[role=button]:hover{border-color:var(--jc-border-hover)}.jc-kpi-label{letter-spacing:.4px;text-transform:uppercase;color:var(--jc-tx-muted);margin-bottom:6px;font-size:11px;font-weight:600}.jc-kpi-value{color:var(--jc-tx-primary);font-size:26px;font-weight:700;line-height:1;font-family:var(--font-mono);align-items:baseline;gap:4px;display:flex}.jc-kpi-frac{color:var(--jc-tx-muted);font-size:14px;font-weight:500}.jc-kpi-foot{color:var(--jc-tx-muted);margin-top:5px;font-size:11.5px}.jc-kpi.ok .jc-kpi-value{color:var(--jc-ok-tx)}.jc-kpi.warn .jc-kpi-value{color:var(--jc-warn-tx)}.jc-kpi.err .jc-kpi-value{color:var(--jc-err-tx)}.jc-kpi-foot-ok{color:var(--jc-ok-tx)}.jc-card{background:var(--jc-bg-surface);border:1px solid var(--jc-border);border-radius:10px;padding:16px}.jc-card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.jc-card-title{color:var(--jc-tx-primary);align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex}.jc-card-link{color:var(--jc-info);font-size:11.5px;font-weight:500;text-decoration:none;transition:opacity .12s}.jc-card-link:hover{opacity:.75}.jc-grid{gap:14px;display:grid}.jc-grid-2{grid-template-columns:repeat(2,1fr)}.jc-grid-3{grid-template-columns:repeat(3,1fr)}.jc-grid-auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (width<=960px){.jc-grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.jc-grid-2,.jc-grid-3{grid-template-columns:1fr}}.jc-lrow{border-bottom:1px solid var(--jc-border-soft);align-items:center;gap:9px;min-width:0;padding:5px 0;display:flex}.jc-lrow:last-child{border-bottom:none;padding-bottom:0}.jc-lrow-grow{flex:1;min-width:0}.jc-lrow-title{color:var(--jc-tx-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.jc-lrow-sub{color:var(--jc-tx-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11.5px;overflow:hidden}.jc-lrow-end{font-family:var(--font-mono);color:var(--jc-tx-secondary);flex:none;font-size:11.5px}.jc-chip{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;font-weight:500;display:inline-flex}.jc-chip.ok{background:var(--jc-ok-dim);color:var(--jc-ok-tx);border-color:#22c55e38}.jc-chip.warn{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border-color:#f59e0b38}.jc-chip.err{background:var(--jc-err-dim);color:var(--jc-err-tx);border-color:#ef444438}.jc-chip.idle{background:var(--jc-idle-dim);color:var(--jc-idle-tx);border-color:#6b768133}.jc-chip.sm{padding:2px 7px;font-size:11px}.jc-chip-dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.jc-dot{border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.jc-dot.ok{background:var(--jc-ok)}.jc-dot.warn{background:var(--jc-warn)}.jc-dot.err{background:var(--jc-err)}.jc-dot.idle{background:var(--jc-idle)}.jc-prio{font-family:var(--font-mono);border:1px solid #0000;border-radius:4px;align-items:center;padding:2px 6px;font-size:10.5px;font-weight:600;display:inline-flex}.jc-prio.critical{background:var(--jc-err-dim);color:var(--jc-err-tx);border-color:#ef444438}.jc-prio.high{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border-color:#f59e0b38}.jc-prio.medium{background:var(--jc-idle-dim);color:var(--jc-idle-tx);border-color:#6b768138}.jc-prio.low{color:var(--jc-tx-muted);border-color:var(--jc-border);background:0 0}.jc-badge{font-size:11px;font-weight:600;font-family:var(--font-mono);background:var(--jc-bg-raised);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);white-space:nowrap;border-radius:4px;padding:2px 7px;display:inline-block}.jc-tbl-wrap{border:1px solid var(--jc-border);border-radius:8px;overflow-x:auto}.jc-tbl{border-collapse:collapse;width:100%;font-size:13px}.jc-tbl thead th{background:var(--jc-bg-inset);text-align:left;letter-spacing:.4px;text-transform:uppercase;color:var(--jc-tx-muted);border-bottom:1px solid var(--jc-border);white-space:nowrap;padding:8px 12px;font-size:11px;font-weight:600}.jc-tbl tbody td{border-bottom:1px solid var(--jc-border-soft);color:var(--jc-tx-primary);padding:10px 12px}.jc-tbl tbody tr:last-child td{border-bottom:none}.jc-tbl tbody tr.jc-row{cursor:pointer;transition:background .1s}.jc-tbl tbody tr.jc-row:hover{background:var(--jc-hover)}.jc-tbl .jc-mono{font-family:var(--font-mono);font-size:12px}.jc-tbl .jc-primary{font-weight:600}.jc-tbl .jc-muted-cell{color:var(--jc-tx-muted);font-size:12px}.jc-btn{font-size:13px;font-weight:500;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;color:inherit;border:1px solid #0000;border-radius:7px;align-items:center;gap:6px;padding:7px 14px;text-decoration:none;transition:background .12s,border-color .12s,opacity .12s;display:inline-flex}.jc-btn:disabled{opacity:.4;pointer-events:none}.jc-btn.sm{border-radius:6px;padding:4px 10px;font-size:12px}.jc-btn.xs{border-radius:5px;padding:3px 8px;font-size:11.5px}.jc-btn.primary{background:var(--jc-accent);color:#fff;border-color:var(--jc-accent)}.jc-btn.primary:hover{background:var(--jc-accent-hover)}.jc-btn.ghost{border-color:var(--jc-border);color:var(--jc-tx-secondary);background:0 0}.jc-btn.ghost:hover{background:var(--jc-hover-btn);color:var(--jc-tx-primary);border-color:var(--jc-border-hover)}.jc-btn.warn{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border-color:#f59e0b4d}.jc-btn.danger{background:var(--jc-err-dim);color:var(--jc-err-tx);border-color:#ef44444d}.jc-quickfilter{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.jc-quickfilter button{font-size:12.5px;font-weight:500;font-family:var(--font-ui);background:var(--jc-bg-inset);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);cursor:pointer;border-radius:6px;padding:4px 12px;transition:background .12s,color .12s,border-color .12s}.jc-quickfilter button:hover{background:var(--jc-hover);color:var(--jc-tx-primary)}.jc-quickfilter button.on{background:var(--jc-accent-dim);color:var(--jc-accent);border-color:#3d9b4059}.jc-quickfilter-link{font-size:12.5px;font-weight:500;font-family:var(--font-ui);background:var(--jc-bg-inset);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);cursor:pointer;border-radius:6px;padding:4px 12px;transition:background .12s,color .12s,border-color .12s;display:inline-block}.jc-quickfilter-link:hover{background:var(--jc-hover);color:var(--jc-tx-primary)}.jc-quickfilter-link.on{background:var(--jc-accent-dim);color:var(--jc-accent);border-color:#3d9b4059}.jc-quickfilter-search{max-width:220px;height:30px;margin-left:auto;font-size:12.5px}.jc-quickfilter-select{height:30px;font-size:12.5px}.jc-section-title{letter-spacing:.6px;text-transform:uppercase;color:var(--jc-tx-muted);align-items:center;gap:8px;margin-bottom:10px;font-size:11px;font-weight:600;display:flex}.jc-bar{background:var(--jc-bg-inset);border-radius:3px;height:6px;margin:6px 0;overflow:hidden}.jc-bar-fill{border-radius:3px;height:100%;transition:width .3s}.jc-empty{color:var(--jc-tx-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;display:flex}.jc-empty-title{color:var(--jc-tx-secondary);font-size:14px;font-weight:600}.jc-empty-sub{max-width:320px;font-size:12.5px}.jc-overlay{z-index:200;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.jc-modal{background:var(--jc-bg-surface);border:1px solid var(--jc-border);border-radius:12px;width:min(480px,92vw);max-height:90dvh;padding:24px 28px;overflow-y:auto;box-shadow:0 12px 40px #00000073}.jc-modal-head{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.jc-modal-title{color:var(--jc-tx-primary);margin:0;font-size:15px;font-weight:600}.jc-modal-sub{color:var(--jc-tx-muted);margin-top:2px;font-size:12.5px}.jc-modal-body{margin-bottom:20px}.jc-modal-row{border-bottom:1px solid var(--jc-border-soft);align-items:center;gap:8px;padding:7px 0;font-size:13px;display:flex}.jc-modal-row:last-child{border-bottom:none}.jc-modal-label{color:var(--jc-tx-muted);flex:none;width:110px;font-size:12px}.jc-modal-foot{justify-content:flex-end;gap:10px;display:flex}.jc-muted{color:var(--jc-tx-muted)}.jc-mono{font-family:var(--font-mono)}.jc-grow{flex:1;min-width:0}.jc-ellip{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.jc-warn-strip{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border:1px solid #f59e0b40;border-radius:7px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13px;display:flex}.jc-err-strip{background:var(--jc-err-dim);color:var(--jc-err-tx);border:1px solid #ef444440;border-radius:7px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13px;display:flex}.jc-badge.area{color:var(--jc-info);background:#38bdf814;border-color:#38bdf840}.jc-prio.prio-crit{background:var(--jc-err-dim);color:var(--jc-err-tx);border-color:#ef444438}.jc-prio.prio-high{background:var(--jc-warn-dim);color:var(--jc-warn-tx);border-color:#f59e0b38}.jc-prio.prio-med{background:var(--jc-accent-dim,#3d9b4029);color:var(--jc-ok-tx);border-color:#3d9b4052}.jc-prio.prio-low{color:var(--jc-tx-muted);border-color:var(--jc-border);background:0 0}.jc-btn.danger-solid{background:var(--jc-err);border-color:var(--jc-err);color:#fff}.jc-btn.danger-solid:hover{background:#ef3030}.jc-modal.danger-modal{border-color:#dc262680;max-width:500px}.jc-modal-head.warn-head .jc-m-ico{background:var(--jc-warn-dim);color:var(--jc-warn)}.jc-modal-head.danger-head .jc-m-ico{background:var(--jc-err-dim);color:var(--jc-err-tx)}.jc-m-ico{border-radius:8px;flex:none;place-items:center;width:34px;height:34px;display:grid}.jc-m-sub{color:var(--jc-tx-muted);font-size:12px;font-family:var(--font-mono);margin-top:2px}.jc-modal-head h3{color:var(--jc-tx-primary);margin:0;font-size:15.5px;font-weight:600}.jc-modal-warn-strip{background:var(--jc-err-dim);color:#f6a9a9;border:1px solid #dc262659;border-radius:8px;align-items:flex-start;gap:9px;margin:12px 0;padding:11px 13px;font-size:12.5px;display:flex}.jc-modal-input{background:var(--jc-bg-inset);border:1px solid var(--jc-border);width:100%;color:var(--jc-tx-primary);font-family:var(--font-mono);border-radius:6px;outline:none;margin-top:10px;padding:8px 10px;font-size:13px}.jc-modal-input:focus{border-color:var(--jc-accent)}.jc-modal-effect{background:var(--jc-bg-inset);border:1px solid var(--jc-border);color:var(--jc-tx-secondary);border-radius:8px;margin:12px 0;padding:11px 13px;font-size:13px;line-height:1.5}.jc-modal-foot{border-top:1px solid var(--jc-border);padding-top:14px}.jc-kpi-unit{color:var(--jc-tx-muted);font-size:13px;font-weight:500}.jc-toggle{color:var(--jc-tx-secondary);cursor:pointer;align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.jc-toggle-sw{background:var(--jc-bg-raised);border:1px solid var(--jc-border);border-radius:999px;width:30px;height:17px;transition:background .15s;position:relative}.jc-toggle-sw:after{content:"";background:var(--jc-tx-muted);border-radius:50%;width:13px;height:13px;transition:transform .15s,background .15s;position:absolute;top:1px;left:1px}.jc-toggle.on .jc-toggle-sw{background:var(--jc-accent-dim);border-color:var(--jc-accent)}.jc-toggle.on .jc-toggle-sw:after{background:var(--jc-accent);transform:translate(13px)}.jc-chip.info{background:var(--jc-accent-dim,#3d9b4029);color:var(--jc-ok-tx);border-color:#3d9b4059}.jc-chip.info .jc-chip-dot{background:var(--jc-accent)}.jc-btn-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.jc-logpanel{background:var(--jc-bg-inset);border:1px solid var(--jc-border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.jc-log-head{background:var(--jc-bg-surface);border-bottom:1px solid var(--jc-border);flex-wrap:wrap;align-items:center;gap:12px;padding:9px 12px;display:flex}.jc-log-title{color:var(--jc-tx-primary);align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.jc-log-live{color:var(--jc-ok);font-size:11px;font-family:var(--font-mono);align-items:center;gap:5px;display:inline-flex}.jc-log-dot{background:var(--jc-ok);border-radius:50%;width:7px;height:7px;animation:1.6s infinite jc-log-pulse}@keyframes jc-log-pulse{0%,to{opacity:1}50%{opacity:.35}}.jc-log-controls{align-items:center;gap:6px;margin-left:auto;display:flex}.jc-log-seg{background:var(--jc-bg-inset);border:1px solid var(--jc-border);border-radius:6px;display:flex;overflow:hidden}.jc-log-seg button{color:var(--jc-tx-muted);font-size:11px;font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;padding:4px 9px}.jc-log-seg button.on{background:var(--jc-bg-raised);color:var(--jc-tx-primary)}.jc-log-body{font-family:var(--font-mono);flex:1;padding:10px 12px;font-size:12.5px;line-height:1.6;overflow-y:auto}.jc-log-line{white-space:pre-wrap;word-break:break-word;gap:10px;display:flex}.jc-log-line .jc-log-t{color:var(--jc-tx-muted);flex:none}.jc-log-line .jc-log-l{flex:none;width:46px;font-weight:600}.jc-log-line .jc-log-msg{color:var(--jc-tx-secondary);flex:1}.jc-log-line.info .jc-log-l{color:var(--jc-tx-muted)}.jc-log-line.warn .jc-log-l{color:var(--jc-warn)}.jc-log-line.warn .jc-log-msg{color:#e8c98a}.jc-log-line.error .jc-log-l{color:var(--jc-err)}.jc-log-line.error .jc-log-msg{color:#f6a9a9}.jc-log-line.ok .jc-log-l{color:var(--jc-ok)}.jc-toggle{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}[data-jc-theme=light] .jc-logpanel{--jc-bg-inset:#11161d;--jc-bg-surface:#1a212a;--jc-bg-raised:#232c36;--jc-border:#2c3540;--jc-tx-primary:#e6edf3;--jc-tx-secondary:#9da7b3;--jc-tx-muted:#6b7681;border-color:#2c3540}.jc-proj-card{background:var(--jc-bg-surface);border:1px solid var(--jc-border);border-radius:var(--radius-md);padding:15px 16px}.jc-proj-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.jc-proj-name{color:var(--jc-tx-primary);font-size:14.5px;font-weight:600}.jc-proj-meta{grid-template-columns:1fr 1fr;gap:9px 18px;font-size:12.5px;display:grid}.jc-proj-meta .jc-pm-k{color:var(--jc-tx-muted)}.jc-proj-meta .jc-pm-v{color:var(--jc-tx-primary);font-family:var(--font-mono);font-size:12px}.jc-proj-sources{border-top:1px solid var(--jc-border-soft);flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:12px;display:flex}.jc-conflict{background:var(--jc-warn-dim);border:1px solid #f59e0b66;border-radius:8px;margin-top:12px;padding:11px 13px}.jc-conflict-head{color:var(--jc-warn-tx);align-items:center;gap:7px;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.jc-conflict-cmp{grid-template-columns:1fr 1fr;gap:10px;display:grid}.jc-conflict-cmp .jc-cc{background:var(--jc-bg-inset);border:1px solid var(--jc-border);border-radius:6px;padding:8px 10px}.jc-conflict-cmp .jc-cc .jc-src{font-size:10.5px;font-family:var(--font-mono);color:var(--jc-tx-muted);justify-content:space-between;margin-bottom:3px;display:flex}.jc-conflict-cmp .jc-cc .jc-val{color:var(--jc-tx-primary);font-size:13px;font-weight:500}.jc-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:60px 20px;display:flex}.jc-empty .jc-e-ico{background:var(--jc-bg-raised);border:1px solid var(--jc-border);width:52px;height:52px;color:var(--jc-tx-muted);border-radius:12px;place-items:center;display:grid}.jc-empty .jc-e-title{color:var(--jc-tx-primary);font-size:15px;font-weight:600}.jc-empty .jc-e-sub{color:var(--jc-tx-muted);max-width:360px;font-size:13px;line-height:1.5}@media (width<=560px){.jc-page{padding:14px 14px 32px}.jc-page-head{flex-direction:column;align-items:stretch}.jc-page-actions{flex-wrap:wrap}.jc-kpi-row{grid-template-columns:1fr 1fr;gap:10px}.jc-proj-meta,.jc-conflict-cmp{grid-template-columns:1fr}.jc-quickfilter-search{width:100%;max-width:none;margin-left:0}}@media (width<=400px){.jc-kpi-row{grid-template-columns:1fr}}.hubbr-alerts{background:var(--jc-err-dim);border:1px solid #ef444447;border-radius:10px;margin-bottom:16px;padding:12px 14px}.hubbr-alerts-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.hubbr-alerts-title{color:var(--jc-err-tx);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:700}.hubbr-alert-row{border-top:1px solid #ef444424;align-items:flex-start;gap:9px;padding:6px 0;display:flex}.hubbr-alert-row:first-of-type{border-top:none}.hubbr-alert-body{flex:1;min-width:0}.hubbr-alert-title{color:var(--jc-tx-primary);font-size:13px;font-weight:600}.hubbr-alert-detail{color:var(--jc-tx-secondary);margin-top:1px;font-size:12px}.hubbr-offline{color:var(--jc-tx-muted);padding:8px 0;font-size:12px}.hubbr-warnings{color:var(--jc-tx-muted);cursor:help;margin-top:8px;font-size:11px}.hubbr-warnings:before{content:"⚠ "}.hubbr-error{color:var(--jc-warn-tx);padding:8px 0;font-size:12px}.hubbr-empty{padding:16px 0}.hubbr-loading{flex-direction:column;gap:8px;padding:4px 0;display:flex}.hubbr-skel{border-radius:4px;height:14px}.hubbr-group{margin-bottom:10px}.hubbr-group:last-child{margin-bottom:0}.hubbr-group-head{align-items:center;gap:7px;padding:3px 0;display:flex}.hubbr-group-name{font-family:var(--font-mono);color:var(--jc-tx-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.hubbr-prio{flex:none}.hubbr-more{cursor:pointer;color:var(--jc-accent,var(--jc-tx-secondary));background:0 0;border:none;padding:5px 0 0;font-size:12px;font-weight:600;display:block}.hubbr-more:hover{text-decoration:underline}.jc-table-wrap{border:1px solid var(--jc-border);border-radius:10px;overflow-x:auto}.jc-table{border-collapse:collapse;width:100%;font-size:13px}.jc-table th,.jc-table td{text-align:left;border-bottom:1px solid var(--jc-border-soft,var(--jc-border));white-space:nowrap;padding:8px 12px}.jc-table thead th{z-index:1;background:var(--jc-bg-inset);color:var(--jc-tx-muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--jc-border);font-size:11px;font-weight:600;position:sticky;top:0}.jc-table tbody td{color:var(--jc-tx-primary)}.jc-table tbody tr:last-child td{border-bottom:none}.jc-table tbody tr:hover td{background:var(--jc-bg-inset)}.jc-table-row--clickable{cursor:pointer}.jc-table-row--clickable:focus-visible{outline:2px solid var(--jc-accent,#6366f1);outline-offset:-2px}.jc-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.jc-th-sortable:hover{color:var(--jc-tx-secondary)}.jc-th-arrow{color:var(--jc-tx-secondary);margin-left:4px;font-size:9px}.jc-ta-right{text-align:right!important}.jc-ta-center{text-align:center!important}.jc-table-empty{color:var(--jc-tx-muted);padding:10px 2px;font-size:12.5px}@media (width<=560px){.jc-table-wrap{border:none;border-radius:0;overflow-x:visible}.jc-table{font-size:13px}.jc-table thead{display:none}.jc-table,.jc-table tbody,.jc-table tr,.jc-table td{width:100%;display:block}.jc-table tbody tr{border:1px solid var(--jc-border);background:var(--jc-bg-surface);border-radius:10px;margin-bottom:10px;overflow:hidden}.jc-table tbody tr:hover td{background:0 0}.jc-table tbody td{border-bottom:1px solid var(--jc-border-soft);white-space:normal;text-align:right;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 12px;display:flex}.jc-table tbody tr td:last-child{border-bottom:none}.jc-table tbody td:before{content:attr(data-label);color:var(--jc-tx-muted);text-transform:uppercase;letter-spacing:.03em;text-align:left;flex:none;font-size:11px;font-weight:600}.jc-ta-right,.jc-ta-center{text-align:right!important}}.svc-loading{color:var(--jc-tx-muted);padding:14px 0;font-size:13px}.svc-summary{align-items:center;gap:12px;margin-bottom:16px;display:flex}.svc-checked{color:var(--jc-tx-muted);font-size:11.5px}.svc-note{color:var(--jc-tx-muted);margin-top:16px;font-size:11.5px;line-height:1.5}.svc-actions{border-top:1px solid var(--jc-line,#ffffff14);flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:10px;display:flex}.svc-output-wrap{border:1px solid var(--jc-line,#ffffff14);border-radius:10px;margin-top:18px;overflow:hidden}.svc-output-header{color:var(--jc-tx-muted);background:var(--jc-surface-2,#ffffff08);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.svc-output-meta{flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex}.svc-output-label{font-weight:600}.svc-output-exit,.svc-output-time{color:var(--jc-tx-muted);font-size:11.5px}.svc-output{font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:320px;color:var(--jc-tx);margin:0;padding:12px;font-size:12px;line-height:1.5;overflow:auto}.svc-output--loading{color:var(--jc-tx-muted)}.svc-output--error{color:var(--jc-err-tx,#ff6b6b)}.cmd-zone{margin-bottom:26px}.cmd-zone-head{align-items:center;gap:11px;margin-bottom:14px;display:flex}.cmd-zone-ico{border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.cmd-zone--safe .cmd-zone-ico{background:var(--jc-ok-dim);color:var(--jc-ok)}.cmd-zone--confirm .cmd-zone-ico{background:var(--jc-warn-dim);color:var(--jc-warn-tx)}.cmd-zone--destructive .cmd-zone-ico{background:var(--jc-err-dim);color:var(--jc-err-tx)}.cmd-zt{color:var(--jc-tx-primary);font-size:14px;font-weight:600}.cmd-zs{color:var(--jc-tx-muted);margin-top:1px;font-size:11.5px}.cmd-zone--destructive .cmd-zs{color:var(--jc-err-tx)}.cmd-warn-strip{margin:0 0 14px}.cmd-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.cmd-card{background:var(--jc-bg-surface);border:1px solid var(--jc-border);border-radius:10px;flex-direction:column;padding:14px 15px;display:flex}.cmd-card--destructive{border-color:#ef444466}.cmd-name{color:var(--jc-tx-primary);word-break:break-word;font-size:13px;font-weight:600}.cmd-desc{color:var(--jc-tx-secondary);flex:1;margin:6px 0 12px;font-size:12px;line-height:1.45}.cmd-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.cmd-foot{border-top:1px solid var(--jc-border-soft);justify-content:flex-end;align-items:center;padding-top:11px;display:flex}.cmd-empty{color:var(--jc-tx-muted);grid-column:1/-1;padding:6px 2px;font-size:12.5px}.cmd-output-wrap{border:1px solid var(--jc-border);border-radius:10px;margin-top:20px;overflow:hidden}.cmd-output-header{background:var(--jc-bg-raised);border-bottom:1px solid var(--jc-border);color:var(--jc-tx-primary);justify-content:space-between;align-items:center;padding:9px 13px;font-size:12.5px;font-weight:600;display:flex}.cmd-output-meta{color:var(--jc-tx-muted);border-bottom:1px solid var(--jc-border-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 13px;font-size:11.5px;display:flex}.cmd-output-label{color:var(--jc-tx-primary);font-weight:500}.cmd-output{color:#c9d1d9;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;background:#0d1117;max-height:360px;margin:0;padding:12px 13px;font-size:12px;line-height:1.5;overflow:auto}.cmd-output--loading{color:var(--jc-tx-muted);font-style:italic}.cmd-output--error{color:var(--jc-err-tx);white-space:pre-wrap}.cmd-preview-modal{width:94%;max-width:min(920px,94vw)}.cmd-preview-frame{background:var(--jc-bg-raised);border:0;border-radius:8px;width:100%;height:72vh;display:block}.cmd-file-link{color:var(--jc-accent);align-self:center;font-size:12px;text-decoration:none}.cmd-file-link:hover{text-decoration:underline}.cmd-hist-filter{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.cmd-hist-search{flex:1;min-width:220px;max-width:420px}.cmd-hist-more{justify-content:center;margin-top:10px;display:flex}.lcmd-group-ico{background:var(--jc-accent-dim,var(--jc-ok-dim));color:var(--jc-accent,var(--jc-ok))}.lcmd-foot{justify-content:space-between}.lcmd-detail{color:var(--jc-tx-secondary);background:var(--jc-bg-raised);border:1px solid var(--jc-border-soft);word-break:break-all;border-radius:8px;gap:4px;margin-bottom:12px;padding:8px 10px;font-size:11.5px;display:grid}.lcmd-detail-k{min-width:58px;color:var(--jc-tx-muted);display:inline-block}.lcmd-detail-note{color:var(--jc-tx-muted);font-family:var(--font-ui,inherit);word-break:normal}.lcmd-tab-dot{background:var(--jc-ok);vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:6px;animation:1.6s ease-in-out infinite lcmd-pulse;display:inline-block}@keyframes lcmd-pulse{0%,to{opacity:1}50%{opacity:.35}}.lcmd-reopen{margin-top:20px}.lcmd-panel-title{align-items:center;gap:8px;min-width:0;display:inline-flex}.lcmd-panel-actions{align-items:center;gap:8px;display:inline-flex}.lcmd-panel-hint{color:var(--jc-tx-muted);border-bottom:1px solid var(--jc-border-soft);padding:7px 13px;font-size:11.5px}.lcmd-cancel-fail{color:var(--jc-err-tx);background:var(--jc-err-dim);border-bottom:1px solid var(--jc-border-soft);padding:8px 13px;font-size:12px}.lcmd-output{max-height:380px;overflow:auto}.lcmd-chunk-err{color:var(--jc-err-tx)}.lcmd-exit-meta{gap:8px}
