@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap";.tree[data-v-07f29bc7]{width:240px;background:var(--bg-panel-sidebar);border:var(--panel-border-w) solid var(--sidebar-border);border-radius:var(--panel-radius);padding:16px 12px;display:flex;flex-direction:column;gap:0}.tree-title[data-v-07f29bc7]{font-size:16px;font-weight:var(--logo-weight);color:var(--text-primary);padding:0 8px 12px;flex-shrink:0;letter-spacing:-.01em}.category[data-v-07f29bc7]{padding:0}.category+.category[data-v-07f29bc7]{border-top:1px solid var(--sidebar-divider);margin-top:6px;padding-top:6px}.category-header[data-v-07f29bc7]{font-size:10px;font-weight:700;color:var(--accent-orange);letter-spacing:.06em;padding:4px 8px;-webkit-user-select:none;user-select:none;opacity:var(--sidebar-cat-opacity)}.metrics-list[data-v-07f29bc7]{display:flex;flex-direction:column;gap:1px;padding:2px 0}.metric-item[data-v-07f29bc7]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:5px 8px;border:none;background:transparent;cursor:pointer;font-size:12px;color:var(--metric-text);text-align:left;border-radius:6px;transition:background .15s,color .15s;font-family:inherit}.metric-item[data-v-07f29bc7]:hover{background:var(--metric-hover-bg);color:var(--metric-hover-color)}.metric-item.active[data-v-07f29bc7]{background:var(--metric-active-bg);color:var(--metric-active-color);font-weight:600}.metric-name[data-v-07f29bc7]{flex:1}.arrow-icon[data-v-07f29bc7]{font-size:12px;color:var(--accent-orange);margin-left:6px;flex-shrink:0}.editor[data-v-36eecd08]{border:var(--input-border-w) solid var(--editor-toolbar-border);border-radius:10px;overflow:hidden;background:var(--editor-bg)}.editor-toolbar[data-v-36eecd08]{display:flex;align-items:center;gap:2px;padding:4px 6px;border-bottom:1px solid var(--editor-toolbar-border);background:var(--editor-toolbar-bg);flex-wrap:wrap}.tb-btn[data-v-36eecd08]{width:30px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:5px;cursor:pointer;font-size:13px;font-family:inherit;color:var(--editor-btn-color)}.tb-btn[data-v-36eecd08]:hover{background:var(--editor-btn-hover-bg);color:var(--text-primary)}.tb-btn.active[data-v-36eecd08]{background:var(--editor-btn-active-bg);color:var(--editor-btn-active-color)}.tb-sep[data-v-36eecd08]{width:1px;height:18px;background:var(--editor-sep);margin:0 3px;flex-shrink:0}.editor-content[data-v-36eecd08]{padding:10px 12px;min-height:60px;font-size:13px;line-height:1.5;color:var(--text-secondary)}.editor-content[data-v-36eecd08] .ProseMirror{outline:none;min-height:40px}.editor-content[data-v-36eecd08] .ProseMirror p{margin:6px 0;min-height:1em}.editor-content[data-v-36eecd08] .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--editor-placeholder);pointer-events:none;float:left;height:0}.editor-content[data-v-36eecd08] h3{font-size:15px;font-weight:700;margin:8px 0 4px;color:var(--text-primary)}.editor-content[data-v-36eecd08] h4{font-size:13px;font-weight:700;margin:6px 0 3px;color:var(--text-primary)}.editor-content[data-v-36eecd08] ul,.editor-content[data-v-36eecd08] ol{padding-left:20px;margin:4px 0}.editor-content[data-v-36eecd08] li{margin-bottom:2px}.editor-content[data-v-36eecd08] a{color:var(--link-color);text-decoration:underline}.detail[data-v-c820ff2f]{border:var(--panel-border-w) solid var(--content-border);border-radius:var(--panel-radius);background:var(--bg-panel);padding:24px 28px 0}.metric-title[data-v-c820ff2f]{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:2px;letter-spacing:-.01em}.detail-table[data-v-c820ff2f]{display:flex;flex-direction:column;gap:0}.table-row[data-v-c820ff2f]{display:flex;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--border-divider)}.table-row[data-v-c820ff2f]:last-child{border-bottom:none}.row-label[data-v-c820ff2f]{width:140px;min-width:140px;font-size:12px;font-weight:600;color:var(--text-tertiary);flex-shrink:0;padding-top:1px}.row-value[data-v-c820ff2f]{flex:1;font-size:12px;line-height:1.45;color:var(--text-secondary);white-space:pre-wrap}.detail-empty[data-v-c820ff2f]{border:var(--panel-border-w) solid var(--content-border);border-radius:var(--panel-radius);background:var(--bg-panel);display:flex;align-items:center;justify-content:center}.empty-text[data-v-c820ff2f]{font-size:14px;color:var(--text-muted)}.edit-bar[data-v-c820ff2f]{display:flex;align-items:center;justify-content:space-between;padding:8px 0;margin-bottom:4px;border-bottom:1px solid var(--border-divider)}.editing-bar[data-v-c820ff2f]{background:var(--edit-bar-bg);margin:0 -28px;padding:8px 28px;border-bottom:1px solid var(--edit-bar-border)}.edit-hint[data-v-c820ff2f]{font-size:11px;font-weight:600;color:var(--edit-hint-color);opacity:.8}.btn-edit[data-v-c820ff2f]{padding:6px 16px;border:1px solid var(--content-border);border-radius:8px;background:transparent;color:var(--accent-green);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.btn-edit[data-v-c820ff2f]:hover{background:rgba(var(--accent-green-rgb),.1)}.edit-actions[data-v-c820ff2f]{display:flex;gap:8px}.btn-cancel[data-v-c820ff2f]{padding:6px 14px;border:var(--input-border-w) solid var(--btn-cancel-border);border-radius:8px;background:var(--btn-cancel-bg);font-size:12px;font-family:inherit;cursor:pointer;color:var(--btn-cancel-color);transition:background .15s,color .15s}.btn-cancel[data-v-c820ff2f]:hover{background:#80808014;color:var(--text-primary)}.btn-save[data-v-c820ff2f]{padding:6px 14px;border:none;border-radius:8px;background:var(--accent-green);color:#fff;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.btn-save[data-v-c820ff2f]:disabled{opacity:.3;cursor:default}.btn-save[data-v-c820ff2f]:not(:disabled):hover{background:#28a050}.toast-error[data-v-c820ff2f]{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;margin:8px 0;background:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;font-size:12px;color:var(--error-color)}.toast-error button[data-v-c820ff2f]{background:none;border:none;font-size:16px;cursor:pointer;color:var(--error-color);padding:0 4px}.field-textarea[data-v-c820ff2f]{width:100%;padding:8px 10px;border:var(--input-border-w) solid var(--input-border);border-radius:8px;font-size:12px;font-family:inherit;outline:none;box-sizing:border-box;resize:vertical;min-height:36px;line-height:1.45;background:var(--input-bg);color:var(--input-color)}.field-textarea[data-v-c820ff2f]:focus{border-color:rgba(var(--accent-green-rgb),.5)}.row-value[data-v-c820ff2f] p{margin:6px 0;min-height:1em}.row-value[data-v-c820ff2f] p:first-child{margin-top:0}.row-value[data-v-c820ff2f] p:last-child{margin-bottom:0}.row-value[data-v-c820ff2f] ul,.row-value[data-v-c820ff2f] ol{padding-left:18px;margin:4px 0}.row-value[data-v-c820ff2f] li{margin-bottom:2px}.row-value[data-v-c820ff2f] a{color:var(--link-color);text-decoration:underline}.dialog-overlay[data-v-eb2b1412]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--dialog-overlay);display:flex;align-items:center;justify-content:center;z-index:1000}.dialog[data-v-eb2b1412]{background:var(--dialog-bg);border-radius:14px;padding:28px 32px;width:360px;box-shadow:var(--dialog-shadow);border:1px solid var(--dialog-border)}.dialog-title[data-v-eb2b1412]{font-size:18px;font-weight:700;color:var(--dialog-text);margin-bottom:4px}.dialog-desc[data-v-eb2b1412]{font-size:12px;color:var(--dialog-desc);margin-bottom:16px}.dialog-input[data-v-eb2b1412]{width:100%;padding:10px 14px;border:var(--input-border-w) solid var(--input-border);border-radius:10px;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box;background:var(--input-bg);color:var(--input-color)}.dialog-input[data-v-eb2b1412]:focus{border-color:rgba(var(--accent-green-rgb),.4)}.dialog-error[data-v-eb2b1412]{font-size:12px;color:var(--error-color);margin-top:8px}.dialog-actions[data-v-eb2b1412]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel[data-v-eb2b1412]{padding:8px 18px;border:var(--input-border-w) solid var(--btn-cancel-border);border-radius:10px;background:var(--btn-cancel-bg);font-size:13px;font-family:inherit;cursor:pointer;color:var(--btn-cancel-color);transition:background .15s,color .15s}.btn-cancel[data-v-eb2b1412]:hover{background:#80808014;color:var(--text-primary)}.btn-submit[data-v-eb2b1412]{padding:8px 18px;border:none;border-radius:10px;background:var(--accent-green);color:#fff;font-size:13px;font-family:inherit;font-weight:600;cursor:pointer}.btn-submit[data-v-eb2b1412]:hover{background:#28a050}.toolbar[data-v-6b8891bb]{display:flex;align-items:center;gap:10px}.auth-badge[data-v-6b8891bb]{font-size:11px;font-weight:600;color:var(--accent-green);background:var(--auth-badge-bg);padding:4px 10px;border-radius:6px}.login-btn[data-v-6b8891bb]{font-size:12px;font-weight:600;color:var(--login-btn-color);background:none;border:1px solid var(--login-btn-border);border-radius:8px;padding:5px 14px;cursor:pointer;font-family:inherit;transition:border-color .15s,color .15s}.login-btn[data-v-6b8891bb]:hover{border-color:rgba(var(--accent-green-rgb),.4);color:var(--accent-green)}.logout-btn[data-v-6b8891bb]{font-size:12px;color:var(--logout-btn-color);background:none;border:none;cursor:pointer;font-family:inherit;text-decoration:underline;transition:color .15s}.logout-btn[data-v-6b8891bb]:hover{color:var(--text-primary)}.app-wrapper[data-v-f26c81b0]{height:100vh;display:flex;flex-direction:column;background:var(--bg-page)}.app-header[data-v-f26c81b0]{display:flex;align-items:center;padding:0 20px;height:48px;flex-shrink:0;position:relative;z-index:1;background:var(--header-bg);backdrop-filter:var(--header-backdrop);-webkit-backdrop-filter:var(--header-backdrop);gap:12px}.app-header[data-v-f26c81b0]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--header-line-h);background:linear-gradient(90deg,var(--header-line-gradient));opacity:var(--header-line-opacity)}.header-left[data-v-f26c81b0]{flex:1;display:flex;align-items:center;gap:10px}.header-dot[data-v-f26c81b0]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.header-dot.orange[data-v-f26c81b0]{background:var(--accent-orange);box-shadow:var(--dot-glow-orange)}.header-dot.green[data-v-f26c81b0]{background:var(--accent-green);box-shadow:var(--dot-glow-green)}.app-logo[data-v-f26c81b0]{font-size:14px;font-weight:var(--logo-weight);color:var(--text-primary);letter-spacing:-.01em}.theme-toggle[data-v-f26c81b0]{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-control);background:transparent;cursor:pointer;font-size:15px;flex-shrink:0;transition:background .15s,border-color .15s;color:var(--toggle-color);font-family:inherit;position:relative}.theme-toggle[data-v-f26c81b0]:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:10px;background:transparent;box-shadow:0 0 12px 3px var(--toggle-glow);z-index:-1}.theme-toggle[data-v-f26c81b0]:hover{background:#80808014;border-color:var(--accent-green);color:var(--accent-green)}.app-body[data-v-f26c81b0]{flex:1;display:flex;padding:1px 16px 0;gap:40px;overflow:hidden;background:var(--body-glow1),var(--body-glow2)}@media(max-width:900px){.app-body[data-v-f26c81b0]{gap:16px}}.sidebar[data-v-f26c81b0]{flex-shrink:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(245,158,125,.45) transparent}.content[data-v-f26c81b0]{flex:1;max-width:70%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(48,192,96,.45) transparent}.sidebar[data-v-f26c81b0]::-webkit-scrollbar{width:8px}.sidebar[data-v-f26c81b0]::-webkit-scrollbar-track{background:transparent;margin:14px 0}.sidebar[data-v-f26c81b0]::-webkit-scrollbar-thumb{background:#f59e7d66;border:2px solid transparent;background-clip:content-box;border-radius:10px;transition:background .2s}.sidebar[data-v-f26c81b0]::-webkit-scrollbar-thumb:hover{background:#f59e7db3;background-clip:content-box;border:2px solid transparent}.content[data-v-f26c81b0]::-webkit-scrollbar{width:8px}.content[data-v-f26c81b0]::-webkit-scrollbar-track{background:transparent;margin:14px 0}.content[data-v-f26c81b0]::-webkit-scrollbar-thumb{background:#30c06066;border:2px solid transparent;background-clip:content-box;border-radius:10px;transition:background .2s}.content[data-v-f26c81b0]::-webkit-scrollbar-thumb:hover{background:#30c060b3;background-clip:content-box;border:2px solid transparent}.app-status[data-v-f26c81b0]{flex:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-muted)}.app-status.error[data-v-f26c81b0]{flex-direction:column;gap:12px;color:#ef4444}.app-status.error button[data-v-f26c81b0]{padding:8px 20px;border:none;border-radius:10px;background:#30c060;color:#fff;font-size:13px;cursor:pointer;font-family:inherit}:root{--bg-page: #f8f8f7;--toggle-color: #0f172a;--toggle-glow: rgba(0,0,0,.25);--bg-panel: #ffffff;--bg-panel-sidebar: #FFF4EF;--text-primary: #0f172a;--text-secondary: #334155;--text-tertiary: #6B7280;--text-muted: #9ca3af;--border-divider: #f3f4f6;--border-control: #e5e7eb;--panel-border-w: 2px;--panel-radius: 20px;--sidebar-border: #F59E7D;--sidebar-divider: rgba(245, 158, 125, .3);--sidebar-cat-opacity: 1;--metric-text: #334155;--metric-hover-bg: rgba(245, 158, 125, .15);--metric-hover-color: #0f172a;--metric-active-bg: rgba(245, 158, 125, .2);--metric-active-color: #0f172a;--content-border: #30C060;--accent-orange: #F59E7D;--accent-orange-rgb: 245, 158, 125;--accent-green: #30C060;--accent-green-rgb: 48, 192, 96;--header-bg: linear-gradient(90deg, #fff 0%, #fff 50%, #fafff7 70%, #fff9f7 100%);--header-backdrop: none;--header-line-h: 3px;--header-line-gradient: #F59E7D 0%, #F59E7D 35%, #f0b89e 50%, #60c98a 65%, #30C060 100%;--header-line-opacity: .6;--logo-weight: 700;--dot-glow-orange: none;--dot-glow-green: none;--input-bg: #ffffff;--input-color: #334155;--input-border: #e5e7eb;--input-border-w: 1.5px;--editor-bg: #ffffff;--editor-toolbar-bg: #fafafa;--editor-btn-color: #374151;--editor-toolbar-border: #e5e7eb;--editor-btn-hover-bg: #e5e7eb;--editor-btn-active-bg: #d1fae5;--editor-btn-active-color: #059669;--editor-placeholder: #adb5bd;--editor-sep: #e5e7eb;--dialog-bg: #ffffff;--dialog-overlay: rgba(0,0,0,.4);--dialog-border: transparent;--dialog-shadow: 0 8px 32px rgba(0,0,0,.15);--dialog-text: #0f172a;--dialog-desc: #6b7280;--link-color: #3b82f6;--error-bg: #fef2f2;--error-border: #fecaca;--error-color: #dc2626;--btn-cancel-bg: #fff;--btn-cancel-border: #e5e7eb;--btn-cancel-color: #374151;--edit-bar-bg: #f0fdf4;--edit-bar-border: #bbf7d0;--edit-hint-color: #16a34a;--body-glow1: radial-gradient(ellipse 500px 500px at 140px 50%, rgba(245, 158, 125, .07) 0%, transparent 70%);--body-glow2: radial-gradient(ellipse 600px 500px at calc(100% - 180px) 50%, rgba(48, 192, 96, .05) 0%, transparent 70%);--login-btn-color: #6b7280;--login-btn-border: #e5e7eb;--logout-btn-color: #9ca3af;--auth-badge-bg: rgba(48, 192, 96, .1)}[data-theme=dark]{--bg-page: #121314;--bg-panel: #1a1b1e;--bg-panel-sidebar: #1a1b1e;--toggle-color: #ffffff;--toggle-glow: rgba(255,255,255,.4);--text-primary: #e8e6e3;--text-secondary: #a09e9a;--text-tertiary: rgba(255, 255, 255, .35);--text-muted: rgba(255, 255, 255, .3);--border-divider: rgba(255, 255, 255, .06);--border-control: rgba(255, 255, 255, .1);--panel-border-w: 1px;--panel-radius: 12px;--sidebar-border: rgba(245, 158, 125, .25);--sidebar-divider: rgba(245, 158, 125, .12);--sidebar-cat-opacity: .7;--metric-text: #a09e9a;--metric-hover-bg: rgba(245, 158, 125, .08);--metric-hover-color: #e8e6e3;--metric-active-bg: rgba(245, 158, 125, .12);--metric-active-color: #f5f4f2;--content-border: rgba(48, 192, 96, .25);--header-bg: rgba(18, 19, 20, .8);--header-backdrop: blur(12px);--header-line-h: 2px;--header-line-gradient: rgba(245, 158, 125, .5) 0%, rgba(245, 158, 125, .3) 30%, rgba(48, 192, 96, .3) 70%, rgba(48, 192, 96, .5) 100%;--header-line-opacity: 1;--logo-weight: 600;--dot-glow-orange: 0 0 6px rgba(245, 158, 125, .5);--dot-glow-green: 0 0 6px rgba(48, 192, 96, .5);--input-bg: rgba(0, 0, 0, .2);--input-color: #c4c2be;--input-border: rgba(255, 255, 255, .1);--input-border-w: 1px;--editor-bg: rgba(0, 0, 0, .2);--editor-toolbar-bg: rgba(255, 255, 255, .03);--editor-btn-color: rgba(255, 255, 255, .5);--editor-toolbar-border: rgba(255, 255, 255, .06);--editor-btn-hover-bg: rgba(255, 255, 255, .08);--editor-btn-active-bg: rgba(48, 192, 96, .15);--editor-btn-active-color: #30C060;--editor-placeholder: rgba(255, 255, 255, .25);--editor-sep: rgba(255, 255, 255, .08);--dialog-bg: #1e1f22;--dialog-overlay: rgba(0,0,0,.6);--dialog-border: rgba(255,255,255,.06);--dialog-shadow: 0 12px 48px rgba(0,0,0,.5);--dialog-text: #e8e6e3;--dialog-desc: rgba(255,255,255,.35);--link-color: #6b9ef0;--error-bg: rgba(220, 38, 38, .1);--error-border: rgba(220, 38, 38, .2);--error-color: #f87171;--btn-cancel-bg: transparent;--btn-cancel-border: rgba(255, 255, 255, .1);--btn-cancel-color: rgba(255, 255, 255, .5);--edit-bar-bg: rgba(48, 192, 96, .06);--edit-bar-border: rgba(48, 192, 96, .15);--edit-hint-color: #30C060;--body-glow1: radial-gradient(ellipse 550px 550px at 130px 50%, rgba(245, 158, 125, .06) 0%, transparent 70%);--body-glow2: radial-gradient(ellipse 650px 550px at calc(100% - 170px) 50%, rgba(48, 192, 96, .05) 0%, transparent 70%);--login-btn-color: rgba(255, 255, 255, .4);--login-btn-border: rgba(255, 255, 255, .1);--logout-btn-color: rgba(255, 255, 255, .3);--auth-badge-bg: rgba(48, 192, 96, .12)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%;width:100%;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6;color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}code,pre{font-family:JetBrains Mono,SF Mono,Fira Code,monospace}::view-transition-old(root){animation:none}::view-transition-new(root){animation:expand-reveal .9s linear both;z-index:100}@keyframes expand-reveal{0%{clip-path:circle(0% at var(--click-x, 50%) var(--click-y, 50%))}to{clip-path:circle(150% at var(--click-x, 50%) var(--click-y, 50%))}}
