.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}:root{--font: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: "JetBrains Mono", "Fira Code", "Cascadia Code", ui-monospace, Menlo, Consolas, monospace;--radius: 10px;--radius-sm: 7px;--radius-lg: 14px;--sidebar-w: 260px;--accent: #6366f1;--accent-hover: #5458e8;--accent-soft: rgba(99, 102, 241, .14);--accent-text: #a5b4fc;--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .13);--warn: #f59e0b;--warn-soft: rgba(245, 158, 11, .14);--success: #22c55e;--success-soft: rgba(34, 197, 94, .13);--info: #38bdf8;--info-soft: rgba(56, 189, 248, .13);--ease: cubic-bezier(.2, .8, .2, 1)}[data-theme=dark]{color-scheme:dark;--bg: #0d1017;--bg-2: #12161f;--surface: #161b26;--surface-2: #1c2230;--surface-3: #242b3b;--border: #252c3b;--border-2: #313a4d;--text: #e6e9f0;--text-2: #a3abbd;--text-3: #6b7489;--shadow: 0 10px 30px -10px rgba(0, 0, 0, .6), 0 2px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 24px 60px -12px rgba(0, 0, 0, .7);--overlay: rgba(5, 7, 12, .6)}[data-theme=light]{color-scheme:light;--bg: #f5f6fa;--bg-2: #eef0f6;--surface: #ffffff;--surface-2: #f6f7fb;--surface-3: #eceef5;--border: #e3e6ef;--border-2: #d3d8e4;--text: #171b26;--text-2: #4d5568;--text-3: #8a92a6;--accent-text: #4f46e5;--accent-soft: rgba(99, 102, 241, .1);--shadow: 0 8px 24px -10px rgba(20, 25, 45, .18), 0 1px 3px rgba(20, 25, 45, .08);--shadow-lg: 0 24px 60px -16px rgba(20, 25, 45, .3);--overlay: rgba(20, 24, 36, .35)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}h1{font-size:24px}h2{font-size:17px}h3{font-size:14px}p{margin:0}a{color:var(--accent-text);cursor:pointer;text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:10px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--text-2)}.small{font-size:12.5px}.tiny{font-size:11px}.mono{font-family:var(--mono);font-size:.93em}.grow{flex:1}.min0{min-width:0}.block{display:block}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break{word-break:break-all}.center{text-align:center;display:flex;justify-content:center;align-items:center;gap:6px}.p{padding:24px}.mt{margin-top:14px}.w-full{width:100%}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:14px}.inline-flex{display:inline-flex;align-items:center;gap:8px}.accent-text{color:var(--accent-text)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot{height:100%;display:grid;place-items:center;color:var(--text-3)}.hidden{display:none!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--surface-2);color:var(--text);font-weight:550;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .05s,box-shadow .15s}.btn:hover:not(:disabled){background:var(--surface-3)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 1px #ffffff1f inset,0 4px 14px -6px var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-danger{background:var(--danger);border-color:transparent;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-ghost{background:transparent;border-color:transparent}.btn-sm{height:30px;padding:0 11px;font-size:13px}.btn-lg{height:42px;font-size:15px}.icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s}.icon-btn:hover:not(:disabled){background:var(--surface-3);color:var(--text);text-decoration:none}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.active{background:var(--accent-soft);color:var(--accent-text)}.icon-btn.copied{color:var(--success)}.icon-btn.accent{color:var(--accent-text)}.icon-btn.danger-hover:hover{color:var(--danger);background:var(--danger-soft)}.link{background:none;border:none;color:var(--accent-text);cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:4px;font-weight:500}.link:hover{text-decoration:underline}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:600;color:var(--text-2)}.field-hint{font-size:12px;color:var(--text-3)}.field-error{font-size:12px;color:var(--danger)}.input{width:100%;height:38px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--bg-2);color:var(--text);font:inherit;transition:border-color .15s,box-shadow .15s,background .15s}.input::placeholder{color:var(--text-3)}.input:hover{border-color:var(--text-3)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--surface)}.textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.5}.select{appearance:none;padding-right:32px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}.select-auto{width:auto}.select-sm{width:auto;height:30px;font-size:13px;padding-left:9px}.input-group{display:flex;align-items:center;gap:2px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-2);padding-right:4px;transition:border-color .15s,box-shadow .15s}.input-group:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input-group .input{border:none;background:transparent;box-shadow:none}.input-icon{position:relative;display:flex;align-items:center}.input-icon>svg{position:absolute;left:11px;color:var(--text-3);pointer-events:none}.input-icon .input{padding-left:36px}.input-icon .icon-btn{position:absolute;right:4px;width:26px;height:26px}.form{display:flex;flex-direction:column;gap:22px}.form-section{display:flex;flex-direction:column;gap:14px}.form-section h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:650}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid-host{display:grid;grid-template-columns:1fr 100px;gap:12px}.segmented{display:inline-flex;padding:3px;gap:2px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap}.segmented button{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border:none;border-radius:7px;background:transparent;color:var(--text-2);cursor:pointer;font-weight:550;font-size:13px;transition:background .12s,color .12s}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface-3);color:var(--text);box-shadow:0 1px 2px #00000026}[data-theme=light] .segmented button.active{background:var(--surface)}.segmented-sm button{height:26px;padding:0 8px}.seg-count{font-size:11px;padding:0 6px;border-radius:10px;background:var(--surface-2);color:var(--text-3);font-weight:600}.segmented button.active .seg-count{background:var(--accent-soft);color:var(--accent-text)}.switch-row{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.switch{width:38px;height:22px;border-radius:22px;background:var(--border-2);position:relative;flex-shrink:0;transition:background .2s;margin-top:1px}.switch.on{background:var(--accent)}.switch-knob{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s var(--ease);box-shadow:0 1px 3px #0000004d}.switch.on .switch-knob{transform:translate(16px)}.switch-label{display:block;font-weight:600;margin-bottom:2px}.tag-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:38px;padding:5px 8px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--bg-2);cursor:text}.tag-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tag-input input{flex:1;min-width:120px;border:none;background:transparent;outline:none;color:var(--text);font:inherit;height:26px}.tag{display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:6px;background:var(--surface-3);color:var(--text-2);font-size:12px;font-weight:500;white-space:nowrap}.tag button{border:none;background:none;padding:0;cursor:pointer;color:var(--text-3);display:grid}.tag button:hover{color:var(--danger)}.tags{display:flex;flex-wrap:wrap;gap:5px}.color-row{display:flex;gap:8px;flex-wrap:wrap}.color-swatch{width:28px;height:28px;border-radius:8px;border:2px solid transparent;cursor:pointer;display:grid;place-items:center;color:#fff;transition:transform .1s}.color-swatch:hover{transform:scale(1.1)}.color-swatch.active{border-color:var(--text)}.strength{font-size:11px;font-weight:600;padding:1px 7px;border-radius:6px}.strength-1{color:var(--danger);background:var(--danger-soft)}.strength-2{color:var(--warn);background:var(--warn-soft)}.strength-3,.strength-4{color:var(--success);background:var(--success-soft)}.alert{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:var(--radius-sm);font-size:13px;border:1px solid transparent}.alert-error{background:var(--danger-soft);color:#fca5a5;border-color:#ef444440}.alert-success{background:var(--success-soft);color:#86efac;border-color:#22c55e40}.alert-info{background:var(--accent-soft);color:var(--text);border-color:#6366f140}[data-theme=light] .alert-error{color:#b91c1c}[data-theme=light] .alert-success{color:#15803d}.badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:6px;font-size:11.5px;font-weight:600;background:var(--surface-3);color:var(--text-2);white-space:nowrap}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-info{background:var(--info-soft);color:var(--info)}.env-badge{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:5px;font-size:10px;font-weight:750;letter-spacing:.05em;color:var(--env);background:color-mix(in srgb,var(--env) 15%,transparent);border:1px solid color-mix(in srgb,var(--env) 30%,transparent);vertical-align:middle}.kbd{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:5px;font-family:var(--font);font-size:11px;font-weight:600;color:var(--text-3);background:var(--surface-2);border:1px solid var(--border-2);border-bottom-width:2px;margin:0 1px}.avatar{display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-weight:650;flex-shrink:0;letter-spacing:.02em}.avatar-team{border-radius:30%}.folder-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0;display:inline-block}.folder-chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--text-2);padding:1px 7px;border-radius:6px;background:var(--surface-2);border:1px solid var(--border);white-space:nowrap}.overlay{position:fixed;inset:0;background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;z-index:100;animation:fade .15s;padding:16px}.overlay-drawer{display:flex;justify-content:flex-end;padding:0}.overlay-top{place-items:start center;padding-top:12vh}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes slide{0%{transform:translate(40px);opacity:0}}.modal{max-width:100%;max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:pop .2s var(--ease)}.modal-head{display:flex;gap:12px;align-items:flex-start;padding:18px 18px 6px 20px}.modal-head p{margin-top:3px;font-size:13px}.modal-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;flex-shrink:0}.modal-body{padding:14px 20px 18px;overflow:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);background:var(--bg-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.confirm-text{color:var(--text-2);line-height:1.55}.drawer{max-width:100vw;height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slide .22s var(--ease)}.drawer-head{display:flex;align-items:center;gap:8px;padding:16px 16px 16px 22px;border-bottom:1px solid var(--border)}.drawer-body{flex:1;overflow:auto;padding:20px 22px}.drawer-foot{display:flex;gap:8px;align-items:center;padding:14px 22px;border-top:1px solid var(--border);background:var(--bg-2)}.menu{position:fixed;z-index:200;min-width:200px;padding:5px;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop .12s var(--ease)}.menu-trigger{display:inline-flex}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;border-radius:6px;cursor:pointer;text-align:left;color:var(--text);font-size:13.5px}.menu-item svg{color:var(--text-2)}.menu-item:hover{background:var(--surface-3)}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.menu-item.danger:hover{background:var(--danger-soft)}.menu-divider{height:1px;background:var(--border);margin:4px 2px}.menu-hint{color:var(--text-3);font-size:12px}.toasts{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:300;max-width:420px}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border-2);box-shadow:var(--shadow-lg);animation:pop .2s var(--ease);font-weight:500}.toast svg{flex-shrink:0;margin-top:1px}.toast-success svg{color:var(--success)}.toast-error{border-color:#ef444466}.toast-error svg{color:var(--danger)}.toast-info svg{color:var(--accent-text)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:56px 24px;max-width:520px;margin:0 auto}.empty-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-text);margin-bottom:6px}.empty h3{font-size:17px}.empty p{color:var(--text-2);line-height:1.55;margin-bottom:8px}.auth{min-height:100%;display:grid;grid-template-columns:1.1fr 1fr}.auth-single{grid-template-columns:1fr;place-items:center;padding:24px}.auth-hero{padding:56px 64px;display:flex;flex-direction:column;justify-content:center;gap:32px;position:relative;overflow:hidden;background:radial-gradient(1000px 600px at -10% -10%,rgba(99,102,241,.28),transparent 60%),radial-gradient(800px 500px at 110% 110%,rgba(236,72,153,.16),transparent 60%),var(--bg-2);border-right:1px solid var(--border)}.auth-brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:750}.auth-hero h1{font-size:36px;line-height:1.15;max-width:520px;letter-spacing:-.02em}.auth-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:18px;max-width:480px}.auth-features li{display:flex;gap:14px;align-items:flex-start}.auth-features li>svg{flex-shrink:0;color:var(--accent-text);background:var(--accent-soft);padding:8px;width:36px;height:36px;border-radius:10px}.auth-features b{display:block;margin-bottom:2px}.auth-features span{color:var(--text-2);font-size:13.5px}.auth-panel{display:grid;place-items:center;padding:32px}.auth-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:16px}.auth-single .auth-card{background:var(--surface);padding:32px;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow)}.auth-card h2{font-size:24px}.auth-card>p.muted{margin-top:-10px}.auth-card-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-text)}.auth-switch{text-align:center;color:var(--text-2);font-size:13px}.shell{height:100%;display:grid;grid-template-columns:var(--sidebar-w) 1fr}.shell.sidebar-collapsed{--sidebar-w: 68px}.main{min-width:0;height:100%;overflow:hidden;position:relative;display:flex;flex-direction:column}.page{flex:1;overflow:auto;padding:28px 36px 48px}.sidebar{display:flex;flex-direction:column;gap:6px;padding:14px 12px;background:var(--bg-2);border-right:1px solid var(--border);min-height:0;overflow:hidden}.sidebar-top{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 8px}.brand{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:750;font-size:17px;letter-spacing:-.01em}.search-trigger{display:flex;align-items:center;gap:9px;height:36px;padding:0 8px 0 11px;margin-bottom:8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;font-size:13px;text-align:left;transition:border-color .15s}.search-trigger:hover{border-color:var(--border-2);color:var(--text-2)}.nav{display:flex;flex-direction:column;gap:1px}.nav-item,.folder-item{display:flex;align-items:center;gap:11px;height:36px;padding:0 10px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-2);cursor:pointer;font-weight:550;text-align:left;width:100%;position:relative;transition:background .12s,color .12s}.nav-item:hover,.folder-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-text)}.nav-item.active-soft{color:var(--text)}.nav-label{flex:1;min-width:0}.nav-count{font-size:11.5px;color:var(--text-3);font-weight:600;min-width:18px;text-align:right}.nav-item.active .nav-count{color:var(--accent-text)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.sidebar-section{margin-top:14px;flex:1;min-height:0;display:flex;flex-direction:column}.sidebar-section-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 4px 10px;font-size:11.5px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.folder-list{overflow:auto;flex:1;display:flex;flex-direction:column;gap:1px}.folder-item{height:32px;font-weight:500;font-size:13.5px}.folder-item.active{background:var(--surface-3);color:var(--text)}.folder-item .folder-menu{display:none;position:absolute;right:4px}.folder-item:hover .folder-menu{display:block}.folder-item:hover .nav-count{visibility:hidden}.folder-empty{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px dashed var(--border-2);border-radius:var(--radius-sm);background:none;color:var(--text-3);cursor:pointer;font-size:12.5px;text-align:left}.folder-empty:hover{color:var(--text-2);border-color:var(--text-3)}.sidebar-bottom{padding-top:8px;border-top:1px solid var(--border)}.sidebar-bottom .menu-trigger{width:100%}.user-chip{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border-radius:var(--radius-sm);border:none;background:none;cursor:pointer;text-align:left}.user-chip:hover{background:var(--surface-2)}.user-chip-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.sidebar-collapsed .brand-name,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-count,.sidebar-collapsed .search-trigger span,.sidebar-collapsed .search-trigger .kbd,.sidebar-collapsed .sidebar-section-head span,.sidebar-collapsed .user-chip-text,.sidebar-collapsed .user-chip-gear,.sidebar-collapsed .folder-shared,.sidebar-collapsed .folder-empty span,.sidebar-collapsed .folder-menu{display:none!important}.sidebar-collapsed .sidebar-top{flex-direction:column;gap:8px}.sidebar-collapsed .nav-item,.sidebar-collapsed .folder-item,.sidebar-collapsed .search-trigger{justify-content:center;padding:0}.sidebar-collapsed .sidebar-section-head{justify-content:center;padding:0 0 4px}.sidebar-collapsed .live-dot{position:absolute;top:7px;right:12px}.sidebar-collapsed .user-chip{justify-content:center}.page-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:22px;flex-wrap:wrap}.page-head p{margin-top:4px}.breadcrumbs{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-3);margin-bottom:4px;font-weight:500}.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.search-box{flex:1 1 220px;max-width:340px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px}.settings-card{margin-bottom:20px}.group{margin-bottom:26px}.group-head{display:flex;align-items:center;gap:8px;border:none;background:none;cursor:pointer;padding:4px 2px;margin-bottom:10px;color:var(--text-2);font-weight:650;font-size:13px}.group-head:hover{color:var(--text)}.group-count{font-size:11.5px;color:var(--text-3);background:var(--surface-2);border-radius:10px;padding:0 7px}.chev{transition:transform .15s}.chev.rot{transform:rotate(-90deg)}.server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.server-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:16px 16px 14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;transition:border-color .15s,box-shadow .2s,transform .15s}.server-card:hover{border-color:var(--border-2);box-shadow:var(--shadow);transform:translateY(-1px)}.env-stripe{position:absolute;left:0;top:0;bottom:0;width:3px;opacity:.85}.server-card-top{display:flex;gap:12px;align-items:flex-start}.server-icon{width:38px;height:38px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;color:var(--text-2);flex-shrink:0}.server-name{display:flex;align-items:center;gap:8px;font-size:15px;min-width:0}.server-addr{margin-top:3px;display:flex;align-items:center;gap:5px}.server-addr svg{flex-shrink:0}.server-card-mid{display:flex;flex-direction:column;gap:8px}.server-desc{color:var(--text-2);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.server-card-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.server-card-foot .grow{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap;overflow:hidden}.server-card .btn-primary{opacity:.92}.server-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.server-table-head,.server-row{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(180px,1.4fr) 150px 120px 170px;gap:14px;align-items:center;padding:0 14px}.server-table-head{height:36px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:650;background:var(--bg-2);border-bottom:1px solid var(--border)}.server-row{position:relative;height:54px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.server-row:last-child{border-bottom:none}.server-row:hover{background:var(--surface-2)}.server-row-name{display:flex;align-items:center;gap:8px;min-width:0}.server-row .env-stripe{top:10px;bottom:10px;border-radius:0 3px 3px 0}.row-actions{display:flex;align-items:center;gap:2px;justify-content:flex-end}.details-head{display:flex;align-items:center;gap:12px}.details-head h2{display:flex;align-items:center;gap:8px}.details-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;color:var(--env, var(--text-2));background:color-mix(in srgb,var(--env, #888) 14%,transparent)}.details-actions{display:flex;gap:8px;align-items:center;margin-bottom:18px}.details-section{margin-bottom:22px;display:flex;flex-direction:column}.details-section>h3{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:6px;font-weight:650}.details-section>.alert{margin-bottom:10px}.drawer-body>.alert{margin-bottom:18px}.details-desc{margin-top:10px;padding:12px;border-radius:var(--radius-sm);background:var(--bg-2);color:var(--text-2);white-space:pre-wrap;font-size:13px}.kv{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center;min-height:40px;border-bottom:1px dashed var(--border);padding:4px 0}.kv:last-child{border-bottom:none}.kv-label{color:var(--text-3);font-size:13px;display:flex;align-items:center;gap:6px}.kv-value{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.kv-text{flex:1;min-width:0;word-break:break-all}.kv-actions{display:flex;align-items:center;gap:0;margin-left:auto}.kv-pre{flex:1 1 100%;order:2;margin:4px 0;padding:10px;border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--border);font-family:var(--mono);font-size:12px;white-space:pre-wrap;word-break:break-all;max-height:240px;overflow:auto}.masked{letter-spacing:.1em;color:var(--text-3)}.used-by{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:10px}.gen-box{display:flex;align-items:center;gap:10px;padding:12px;border-radius:var(--radius);background:var(--accent-soft);border:1px dashed rgba(99,102,241,.4);flex-wrap:wrap}.share-add{display:flex;gap:8px;align-items:flex-start}.share-perm{width:170px;flex-shrink:0}.picker{position:relative;flex:1;min-width:0}.picker-selected{display:flex;align-items:center;gap:8px;height:38px;padding:0 10px;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft)}.picker-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:4px;max-height:280px;overflow:auto}.picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border:none;background:none;border-radius:6px;cursor:pointer;text-align:left}.picker-item:hover{background:var(--surface-3)}.level-hint{display:flex;gap:7px;align-items:flex-start;margin-top:10px;font-size:12.5px;color:var(--text-2)}.level-hint svg{flex-shrink:0;margin-top:2px;color:var(--text-3)}.share-list-head{margin:22px 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:650}.share-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.share-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--border)}.share-row:last-child{border-bottom:none}.share-list .empty{padding:20px}.share-list .empty h3{font-size:14px}.vault-list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.vault-row{display:flex;align-items:center;gap:14px;padding:11px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.vault-row:last-child{border-bottom:none}.vault-row:hover{background:var(--surface-2)}.vault-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.vault-icon-login{background:#3b82f624;color:#60a5fa}.vault-icon-ssh_key{background:#f59e0b24;color:#fbbf24}.vault-icon-token{background:#a855f724;color:#c084fc}.vault-icon-note{background:#14b8a624;color:#2dd4bf}.vault-name{display:flex;align-items:center;gap:8px;min-width:0}.vault-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.vault-row .row-actions{opacity:.55;transition:opacity .12s}.vault-row:hover .row-actions{opacity:1}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.team-card{display:flex;flex-direction:column;gap:14px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.team-card-head{display:flex;align-items:center;gap:12px}.team-card-head h3{font-size:16px}.team-desc{margin-top:-4px}.member-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.member-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border)}.member-row:last-child{border-bottom:none}.profile-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.audit-table,.user-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.audit-head,.audit-row{display:grid;grid-template-columns:130px 150px 210px minmax(120px,1fr) minmax(120px,1.3fr) 120px;gap:14px;align-items:center;padding:0 16px}.audit-head,.user-head{height:38px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:650;background:var(--bg-2);border-bottom:1px solid var(--border)}.audit-row{padding-top:9px;padding-bottom:9px;border-bottom:1px solid var(--border)}.audit-row:last-child{border-bottom:none}.audit-row:hover{background:var(--surface-2)}.audit-details{max-height:3em;overflow:hidden}.event{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--surface-3);color:var(--text-2)}.event-accent{background:var(--accent-soft);color:var(--accent-text)}.event-info{background:var(--info-soft);color:var(--info)}.event-warn{background:var(--warn-soft);color:var(--warn)}.event-danger{background:var(--danger-soft);color:var(--danger)}.pager{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:14px}.user-head,.user-row{display:grid;grid-template-columns:minmax(220px,1.6fr) 130px minmax(160px,1fr) 140px 130px 50px;gap:14px;align-items:center;padding:0 16px}.user-row{min-height:58px;border-bottom:1px solid var(--border)}.user-row>span:nth-child(3){display:flex;gap:5px;flex-wrap:wrap}.user-row:last-child{border-bottom:none}.user-row.inactive{opacity:.6}.palette{width:640px;max-width:calc(100vw - 32px);background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:pop .15s var(--ease)}.palette-input{display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid var(--border);color:var(--text-3)}.palette-input input{flex:1;height:54px;border:none;background:transparent;outline:none;color:var(--text);font:inherit;font-size:16px}.palette-list{max-height:420px;overflow:auto;padding:6px}.palette-group{padding:10px 10px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:650}.palette-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 10px;border:none;background:none;border-radius:8px;cursor:pointer;text-align:left;color:var(--text-2)}.palette-item.active{background:var(--accent-soft);color:var(--text)}.palette-item.active>svg:first-child{color:var(--accent-text)}.palette-title{display:flex;align-items:center;gap:8px;color:var(--text);font-weight:550}.palette-empty{padding:28px;text-align:center;color:var(--text-2);display:flex;flex-direction:column;align-items:center;gap:10px}.palette-foot{display:flex;gap:18px;padding:9px 16px;border-top:1px solid var(--border);background:var(--bg-2);font-size:12px;color:var(--text-3)}.terminals{position:absolute;inset:0;display:flex;flex-direction:column;background:#0b0e14}.terminals.fullscreen{position:fixed;z-index:90}.term-tabs{display:flex;align-items:stretch;height:42px;background:var(--bg-2);border-bottom:1px solid var(--border);flex-shrink:0}[data-theme=dark] .term-tabs{background:#0f131b;border-bottom-color:#1c2230}.term-tabs-scroll{display:flex;flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.term-tab{display:flex;align-items:center;gap:8px;min-width:140px;max-width:230px;padding:0 8px 0 14px;border-right:1px solid var(--border);cursor:pointer;color:var(--text-2);font-size:13px;font-weight:550;position:relative;-webkit-user-select:none;user-select:none}.term-tab:hover{background:var(--surface-2);color:var(--text)}.term-tab.active{background:#0b0e14;color:#e6e9f0}.term-tab.active:after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent)}.term-tab .truncate{flex:1}.term-tab-env{width:3px;height:14px;border-radius:2px;flex-shrink:0}.term-tab-close{display:grid;place-items:center;width:22px;height:22px;border-radius:5px;border:none;background:none;color:inherit;cursor:pointer;opacity:.6}.term-tab-close:hover{opacity:1;background:#ffffff14}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-3)}.status-connecting{background:var(--warn);animation:pulse 1s infinite}.status-connected{background:var(--success)}.status-error{background:var(--danger)}@keyframes pulse{50%{opacity:.35}}.term-tools{display:flex;align-items:center;gap:2px;padding:0 8px;border-left:1px solid var(--border)}.term-font{width:36px;text-align:center}.term-body{flex:1;position:relative;min-height:0}.term-pane{position:absolute;inset:0;visibility:hidden}.term-pane.active{visibility:visible}.term-container{position:absolute;inset:8px 4px 4px 12px}.term-container .xterm-viewport::-webkit-scrollbar-thumb{background:#2a3142}.term-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#0b0e148c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:20px}.term-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--radius-lg);background:#161b26;border:1px solid #2a3142;color:#e6e9f0;box-shadow:0 20px 50px #00000080;max-width:520px}.term-card .muted{color:#a3abbd}.term-card-error>svg{color:var(--danger);flex-shrink:0;align-self:flex-start}.term-card-wide{max-width:620px;align-items:flex-start}.term-card p{margin:6px 0 10px;color:#a3abbd;line-height:1.5}.hostkey-cmp{padding:10px;border-radius:8px;background:#0b0e14;display:flex;flex-direction:column;gap:4px;word-break:break-all}.term-card .btn:not(.btn-danger){background:#242b3b;border-color:#313a4d;color:#e6e9f0}.quick-connect{position:absolute;inset:0;overflow:auto;background:var(--bg);padding:40px 20px;display:flex;flex-direction:column;align-items:center}.quick-connect .empty{padding-bottom:12px}.quick-list{width:100%;max-width:520px;display:flex;flex-direction:column;gap:6px}.quick-list .input-icon{margin-bottom:6px}.quick-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;transition:border-color .12s,transform .12s}.quick-item:hover{border-color:var(--accent);transform:translate(2px)}.quick-list>p{margin-top:14px}@media(max-width:1100px){.audit-head,.audit-row{grid-template-columns:110px 120px 180px 1fr}.audit-head span:nth-child(5),.audit-head span:nth-child(6),.audit-row>span:nth-child(5),.audit-row>span:nth-child(6){display:none}.user-head,.user-row{grid-template-columns:1fr 120px 150px 50px}.user-head span:nth-child(4),.user-head span:nth-child(5),.user-row>span:nth-child(4),.user-row>span:nth-child(5){display:none}.server-table-head,.server-row{grid-template-columns:1fr 1fr 170px}.server-table-head span:nth-child(3),.server-table-head span:nth-child(4),.server-row>span:nth-child(3),.server-row>span:nth-child(4){display:none}}@media(max-width:860px){.auth{grid-template-columns:1fr}.auth-hero{display:none}.shell{--sidebar-w: 68px}.shell .brand-name,.shell .nav-label,.shell .nav-count,.shell .search-trigger span,.shell .search-trigger .kbd,.shell .sidebar-section-head span,.shell .user-chip-text,.shell .user-chip-gear,.shell .folder-shared,.shell .collapse-btn,.shell .folder-menu{display:none!important}.shell .nav-item,.shell .folder-item,.shell .search-trigger{justify-content:center;padding:0}.page{padding:20px 16px 40px}.search-box{width:100%}.vault-meta,.hide-sm{display:none}.share-add{flex-wrap:wrap}.share-perm{flex:1}.grid-2{grid-template-columns:1fr}.kv{grid-template-columns:1fr;gap:2px}}.alert-warn{background:var(--warn-soft);color:var(--text);border-color:#f59e0b4d}.alert-warn>svg{color:var(--warn);flex-shrink:0}.code-input{height:52px;font-family:var(--mono);font-size:26px;letter-spacing:.35em;text-align:center}.code-input::placeholder{letter-spacing:.35em;opacity:.4}.auth-card-wide{max-width:560px;background:var(--surface);padding:32px;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow)}.auth-switch a{display:inline-flex;align-items:center;gap:4px}.steps{display:flex;gap:6px;list-style:none;padding:0;margin:0 0 18px}.steps li{flex:1;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-3);font-weight:600;padding-bottom:8px;border-bottom:2px solid var(--border)}.steps li span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);font-size:11px}.steps li.done{color:var(--text);border-color:var(--accent)}.steps li.done span{background:var(--accent);color:#fff}.tfa-scan{display:flex;gap:20px;align-items:flex-start}.tfa-scan img{border-radius:12px;background:#fff;padding:6px;flex-shrink:0}.tfa-status{display:flex;gap:14px;align-items:center;padding:16px;border-radius:var(--radius);background:var(--warn-soft);border:1px solid rgba(245,158,11,.3)}.tfa-status>svg{color:var(--warn);flex-shrink:0}.tfa-status.on{background:var(--success-soft);border-color:#22c55e4d}.tfa-status.on>svg{color:var(--success)}.recovery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:14px;border-radius:var(--radius);background:var(--bg-2);border:1px dashed var(--border-2)}.recovery-grid code{font-family:var(--mono);font-size:15px;text-align:center;letter-spacing:.05em;padding:4px}.avatar-wrap{position:relative;display:inline-flex}.avatar-warn{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:var(--warn);border:2px solid var(--bg-2)}.danger-text,.danger-text svg{color:var(--danger)!important}.btn-active{background:var(--accent-soft)!important;border-color:#6366f173!important;color:var(--accent-text)!important}.term-tab-kind{color:var(--accent-text);flex-shrink:0}.term-tools .btn{margin-right:6px}.term-pane{display:flex}.term-main{position:relative;flex:1;min-width:0}.term-side{position:relative;flex-shrink:0;border-left:1px solid #1f2533;display:flex;min-width:0;background:var(--bg)}.term-resizer{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:5}.term-resizer:hover,body.resizing .term-resizer{background:linear-gradient(90deg,transparent 3px,var(--accent) 3px,var(--accent) 5px,transparent 5px)}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing iframe,body.resizing .xterm{pointer-events:none}.files-pane{background:var(--bg)}.fb{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg);color:var(--text);outline:none}.fb-panel-head{display:flex;align-items:center;gap:8px;height:40px;padding:0 6px 0 12px;border-bottom:1px solid var(--border);color:var(--text-2);font-size:13px}.fb-toolbar{display:flex;align-items:center;gap:2px;padding:8px 10px 6px}.fb-crumbs{flex:1;min-width:0;display:flex;align-items:center;overflow-x:auto;scrollbar-width:none;height:32px;padding:0 6px;margin-left:4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-2);cursor:text;white-space:nowrap;font-family:var(--mono);font-size:12.5px}.fb-crumbs button{border:none;background:none;padding:3px 4px;border-radius:5px;cursor:pointer;color:var(--text-2);font:inherit}.fb-crumbs button:hover{background:var(--surface-3);color:var(--text)}.fb-crumb:last-child button{color:var(--text);font-weight:600}.fb-sep{color:var(--text-3)}.fb-path-form{flex:1;margin-left:4px}.fb-path-form .input{height:32px;font-size:12.5px}.fb-actions{display:flex;align-items:center;gap:2px;padding:0 10px 8px;border-bottom:1px solid var(--border)}.fb-filter{flex:1;max-width:220px;margin-left:auto}.fb-filter .input{height:30px;font-size:13px;padding-left:30px}.fb-filter>svg{left:9px}.fb-list{flex:1;overflow:auto;padding-bottom:12px}.fb-row{display:grid;grid-template-columns:minmax(200px,1fr) 90px 130px 100px 100px 72px;gap:12px;align-items:center;height:36px;padding:0 12px 0 14px;border-bottom:1px solid transparent;cursor:default;-webkit-user-select:none;user-select:none}.fb-compact .fb-row{grid-template-columns:minmax(0,1fr) 70px 64px;gap:8px;height:32px;padding:0 6px 0 12px}.fb-row:not(.fb-head):hover{background:var(--surface-2)}.fb-row.selected{background:var(--accent-soft)!important}.fb-row.dim .fb-name{opacity:.7}.fb-head{position:sticky;top:0;z-index:1;height:32px;background:var(--bg);border-bottom-color:var(--border);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:650}.fb-sort{border:none;background:none;padding:0;cursor:pointer;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;display:inline-flex;align-items:center;gap:3px}.fb-sort:hover{color:var(--text)}.fb-name{display:flex;align-items:center;gap:9px;min-width:0;font-size:13.5px}.fb-icon-dir{color:#60a5fa;flex-shrink:0;fill:#60a5fa2e}.fb-icon{color:var(--text-3);flex-shrink:0}.fb-size{text-align:right;font-size:12.5px;font-variant-numeric:tabular-nums}.fb-row-actions{display:flex;justify-content:flex-end;opacity:0;transition:opacity .1s}.fb-row:hover .fb-row-actions,.fb-row.selected .fb-row-actions{opacity:1}.fb-row-actions .icon-btn{width:26px;height:26px}.fb-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:48px 20px;color:var(--text-2)}.fb-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px;text-align:center}.fb-error>svg{color:var(--danger)}.fb-drop{position:absolute;inset:8px;z-index:10;border:2px dashed var(--accent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--bg) 82%,var(--accent));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--accent-text);pointer-events:none}.fb-uploads{border-top:1px solid var(--border);padding:6px 10px;display:flex;flex-direction:column;gap:4px;max-height:160px;overflow:auto;background:var(--bg-2)}.fb-upload{display:grid;grid-template-columns:16px 1fr auto 26px;grid-template-rows:auto auto;column-gap:8px;align-items:center;font-size:12.5px}.fb-upload .progress{grid-column:2 / 4;height:3px;border-radius:3px;background:var(--surface-3);overflow:hidden;margin-top:3px}.fb-upload .progress div{height:100%;background:var(--accent);transition:width .2s}.icon-btn.spinning svg{animation:spin .8s linear infinite}.editor{width:min(1100px,calc(100vw - 32px));height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:pop .2s var(--ease)}.editor-head{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;border-bottom:1px solid var(--border)}.editor-area{flex:1;width:100%;resize:none;border:none;outline:none;padding:14px 18px;background:#0b0e14;color:#d8dee9;font-family:var(--mono);font-size:13.5px;line-height:1.55;tab-size:4}.dirty-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--warn);margin-left:8px;vertical-align:middle}@media(max-width:860px){.fb-row{grid-template-columns:minmax(0,1fr) 70px 64px}.fb-row>span:nth-child(3),.fb-row>span:nth-child(4),.fb-row>span:nth-child(5){display:none}.term-side{position:absolute;inset:0;width:auto!important;z-index:6}.tfa-scan{flex-direction:column;align-items:center}}:root{--good: #16a34a;--warning: #d97706;--critical: #dc2626}[data-theme=dark]{--good: #4ade80;--warning: #fbbf24;--critical: #f87171}.status-badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px 0 6px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--text-2);background:var(--surface-3)}.status-badge svg{flex-shrink:0}.status-good{color:var(--good);background:color-mix(in srgb,var(--good) 13%,transparent)}.status-warning{color:var(--warning);background:color-mix(in srgb,var(--warning) 14%,transparent)}.status-critical{color:var(--critical);background:color-mix(in srgb,var(--critical) 13%,transparent)}.status-neutral{color:var(--text-2);background:var(--surface-3)}.status-btn{border:none;background:none;padding:0;cursor:pointer;display:inline-flex;border-radius:6px}.status-btn:hover .status-badge{filter:brightness(1.15);box-shadow:0 0 0 1px currentColor inset}.nav-alert{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--critical);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}.sidebar-collapsed .nav-alert{position:absolute;top:4px;right:8px}.settings-row{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.settings-row .switch-row{flex:1;min-width:260px}.meters{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.meters-compact{gap:10px}.meter{min-width:0}.meter-top{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:5px}.meter-label{font-size:12px;color:var(--text-3);font-weight:600}.meter-value{font-size:13px;font-weight:650;color:var(--text);font-variant-numeric:tabular-nums}.meter-track{height:6px;border-radius:3px;overflow:hidden;background:color-mix(in srgb,var(--accent) 16%,var(--surface-3))}.meter-fill{height:100%;border-radius:3px;background:var(--accent);transition:width .4s var(--ease)}.meter-warning .meter-track{background:color-mix(in srgb,var(--warning) 18%,var(--surface-3))}.meter-warning .meter-fill{background:var(--warning)}.meter-critical .meter-track{background:color-mix(in srgb,var(--critical) 18%,var(--surface-3))}.meter-critical .meter-fill{background:var(--critical)}.meter-detail{margin-top:4px;font-size:11.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meter-compact .meter-top{margin-bottom:3px}.meter-compact .meter-track{height:4px}.meter-compact .meter-label:empty{display:none}.mon-row .meter-top,.disk-row .meter-top{justify-content:flex-start}.stat-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat-tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;padding:14px 16px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:border-color .15s,box-shadow .15s}.stat-tile:hover{border-color:var(--border-2)}.stat-tile.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.stat-icon{grid-row:1 / 3;width:38px;height:38px;border-radius:10px;display:grid;place-items:center}.stat-label{font-size:12.5px;color:var(--text-2)}.stat-value{font-size:24px;font-weight:650;letter-spacing:-.02em;line-height:1.15}.mon-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.mon-head,.mon-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(170px,1.2fr) 100px 100px 100px 100px 80px 76px;gap:16px;align-items:center;padding:0 16px}.mon-head{height:38px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:650;background:var(--bg-2);border-bottom:1px solid var(--border)}.mon-row{min-height:60px;padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.mon-row:last-child{border-bottom:none}.mon-row:hover{background:var(--surface-2)}.mon-row>span:nth-child(2) .tiny{margin-top:3px}.mon-name{display:flex;align-items:center;gap:8px;min-width:0}.mon-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mon-range{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mon-range h3{margin:0!important}.server-card .meters{padding-top:2px}.uptime-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.uptime-bar{display:flex;gap:1px;height:22px;margin-bottom:18px}.ub{flex:1;min-width:1px;border-radius:2px;background:var(--surface-3)}.ub-up{background:color-mix(in srgb,var(--good) 70%,transparent)}.ub-partial{background:var(--warning)}.ub-down{background:var(--critical)}.ub:hover{filter:brightness(1.3)}.chart-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.chart{border:1px solid var(--border);border-radius:var(--radius);padding:12px 12px 6px;background:var(--surface);min-width:0}.chart-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.chart-title{font-size:12.5px;font-weight:600;color:var(--text-2)}.chart-current{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}.chart-body{position:relative}.chart-body svg{display:block;overflow:visible}.chart-grid{stroke:var(--border);stroke-width:1}.chart-tick{fill:var(--text-3);font-size:10.5px;font-variant-numeric:tabular-nums}.chart-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-area{fill:var(--accent);opacity:.1}.chart-dot{fill:var(--accent)}.chart-end{fill:var(--accent);stroke:var(--surface);stroke-width:2}.chart-cross{stroke:var(--text-3);stroke-width:1}.chart-empty{display:grid;place-items:center;color:var(--text-3);font-size:13px}.chart-tip{position:absolute;transform:translate(-50%,-100%);pointer-events:none;background:var(--surface);border:1px solid var(--border-2);box-shadow:var(--shadow);border-radius:8px;padding:5px 9px;display:flex;flex-direction:column;align-items:center;white-space:nowrap;font-size:11.5px;color:var(--text-2);z-index:2}.chart-tip b{color:var(--text);font-size:13px}.disk-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.disk-row{display:grid;grid-template-columns:16px minmax(0,1fr) 140px 150px;gap:12px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--border)}.disk-row:last-child{border-bottom:none}.disk-row>span:last-child{text-align:right}@media(max-width:1100px){.mon-head,.mon-row{grid-template-columns:minmax(160px,1fr) minmax(150px,1fr) 90px 90px 90px 76px}.mon-head span:nth-child(6),.mon-head span:nth-child(7),.mon-row>span:nth-child(6),.mon-row>span:nth-child(7){display:none}}@media(max-width:860px){.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat-tile{padding:10px 12px;column-gap:10px;min-width:0}.stat-icon{width:32px;height:32px}.stat-value{font-size:20px}.chart-grid-2{grid-template-columns:1fr}.mon-head{display:none}.mon-row{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.mon-row>span:nth-child(2){grid-column:1 / -1;grid-row:2}.mon-row>span:last-child{grid-column:2;grid-row:1}.mon-row>span:nth-child(n+3):not(:last-child){display:none}.shell .folder-empty span{display:none}.shell .folder-empty{justify-content:center}.disk-row{grid-template-columns:16px 1fr 100px}.disk-row>span:last-child{display:none}}.proto-badge{display:inline-flex;align-items:center;height:17px;padding:0 5px;margin-right:2px;border-radius:4px;font-family:var(--font);font-size:10px;font-weight:750;letter-spacing:.04em;color:var(--accent-text);background:var(--accent-soft);flex-shrink:0}.desktop-pane{background:#05070b}.rd{position:absolute;inset:0;overflow:hidden;outline:none;display:flex;align-items:center;justify-content:center;background:#05070b}.rd:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.rd-display{display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%}.rd-display>div{box-shadow:0 0 0 1px #1c2230,0 20px 60px #00000080}.rd-display canvas{image-rendering:auto}.agent-badge{display:inline-flex;align-items:center;gap:3px;height:17px;padding:0 5px;margin-right:4px;border-radius:4px;font-family:var(--font);font-size:10px;font-weight:700;letter-spacing:.02em;flex-shrink:0}.agent-badge.on{color:var(--good);background:color-mix(in srgb,var(--good) 14%,transparent)}.agent-badge.off{color:var(--critical);background:color-mix(in srgb,var(--critical) 13%,transparent)}.agent-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.agent-head,.agent-row{display:grid;grid-template-columns:minmax(200px,1.5fr) 140px minmax(150px,1.2fr) 150px 130px 76px;gap:14px;align-items:center;padding:0 16px}.agent-head{height:38px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:650;background:var(--bg-2);border-bottom:1px solid var(--border)}.agent-row{min-height:58px;border-bottom:1px solid var(--border)}.agent-row:last-child{border-bottom:none}.agent-row:hover{background:var(--surface-2)}.agent-update{margin-left:8px}.mb{margin-bottom:12px}.agents-empty{display:flex;flex-direction:column;align-items:center}.agent-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:980px;width:100%;margin-top:8px}.agent-features>div{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);font-size:13px}.agent-features svg{color:var(--accent-text)}.agent-features span{color:var(--text-2);font-size:12.5px;line-height:1.45}.cmd-block{display:flex;align-items:flex-start;gap:8px;padding:12px 8px 12px 14px;border-radius:var(--radius);background:#0b0e14;border:1px solid var(--border-2)}.cmd-block code{flex:1;min-width:0;font-family:var(--mono);font-size:12.5px;color:#d8dee9;word-break:break-all;line-height:1.55}.agent-wait{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-2);font-size:13px;color:var(--text-2)}.agent-success{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px 8px}.agent-success>svg{color:var(--good)}.agent-success h3{font-size:18px}@media(max-width:1100px){.agent-head,.agent-row{grid-template-columns:minmax(160px,1fr) 130px 120px 76px}.agent-head span:nth-child(3),.agent-head span:nth-child(5),.agent-row>span:nth-child(3),.agent-row>span:nth-child(5){display:none}.agent-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.agent-head{display:none}.agent-row{grid-template-columns:minmax(0,1fr) auto;padding-top:10px;padding-bottom:10px}.agent-row>span:nth-child(3),.agent-row>span:nth-child(4),.agent-row>span:nth-child(5){display:none}}
