.sidebar[data-v-ff9eb483]{position:relative;width:56px;background:var(--bg);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;transition:width var(--duration-base) var(--ease-decelerate);z-index:100}.sidebar--expanded[data-v-ff9eb483],.sidebar[data-v-ff9eb483]:hover,.sidebar[data-v-ff9eb483]:focus-within{width:216px}.sidebar-brand[data-v-ff9eb483]{height:56px;display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden}.brand-mark[data-v-ff9eb483]{width:24px;height:24px;border-radius:6px;background:var(--accent);color:var(--accent-text);font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-name[data-v-ff9eb483]{font-size:var(--text-sm);font-weight:700;color:var(--text);white-space:nowrap}.sidebar-nav[data-v-ff9eb483]{flex:1;display:flex;flex-direction:column;padding:8px 0;gap:1px;overflow-y:auto;overflow-x:hidden}.nav-item[data-v-ff9eb483]{display:flex;align-items:center;gap:10px;height:36px;padding:0 16px;color:var(--text-muted);text-decoration:none;font-size:var(--text-sm);font-weight:500;white-space:nowrap;cursor:pointer;background:transparent;border:none;width:100%;text-align:left;position:relative;font-family:var(--font-sans);transition:color var(--duration-fast) var(--ease-standard),background var(--duration-fast) var(--ease-standard)}.nav-item[data-v-ff9eb483]:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:2px;border-radius:0 2px 2px 0;background:var(--accent);opacity:0;transition:opacity var(--duration-fast) var(--ease-standard)}.nav-item[data-v-ff9eb483]:hover{color:var(--text);background:var(--surface)}.nav-item--active[data-v-ff9eb483]{color:var(--text);background:var(--accent-dim)}.nav-item--active[data-v-ff9eb483]:before{opacity:1}.nav-icon[data-v-ff9eb483]{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.nav-icon[data-v-ff9eb483] svg{width:18px;height:18px}.nav-label[data-v-ff9eb483]{flex:1}.sidebar-footer[data-v-ff9eb483]{padding:8px 0 12px;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;gap:4px}.pin-btn[data-v-ff9eb483]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-faint);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast)}.pin-btn[data-v-ff9eb483]:hover{color:var(--text-muted)}.pin-btn svg[data-v-ff9eb483]{width:12px;height:12px}.label-enter-active[data-v-ff9eb483]{transition:opacity var(--duration-fast) var(--ease-decelerate)}.label-leave-active[data-v-ff9eb483]{transition:opacity 80ms var(--ease-accelerate)}.label-enter-from[data-v-ff9eb483],.label-leave-to[data-v-ff9eb483]{opacity:0}.theme-toggle[data-v-26b416a7]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.theme-toggle[data-v-26b416a7]:hover{color:var(--text);border-color:var(--border-hi)}.theme-toggle svg[data-v-26b416a7]{width:14px;height:14px}.role-badge[data-v-310acac3]{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;background:var(--badge-bg);color:var(--badge-color);border:1px solid var(--badge-border);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topbar[data-v-bb60c694]{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0;position:sticky;top:0;z-index:10}.page-title[data-v-bb60c694]{font-size:var(--text-md);font-weight:700;color:var(--text);margin:0}.topbar-right[data-v-bb60c694]{display:flex;align-items:center;gap:var(--space-3)}.topbar-divider[data-v-bb60c694]{width:1px;height:20px;background:var(--border)}.topbar-avatar[data-v-bb60c694]{width:28px;height:28px;border-radius:50%;background:var(--surface-hi);border:1px solid var(--border-hi);color:var(--text-muted);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:default;font-family:var(--font-sans)}.toast-host[data-v-92838193]{position:fixed;top:var(--space-5, 1.25rem);right:var(--space-5, 1.25rem);z-index:9999;display:flex;flex-direction:column;gap:var(--space-2, .5rem);pointer-events:none}.toast-stack[data-v-92838193]{display:flex;flex-direction:column;gap:var(--space-2, .5rem)}.toast[data-v-92838193]{display:flex;align-items:center;gap:var(--space-2, .5rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);border-radius:var(--radius-lg, .75rem);font-family:var(--font-sans, system-ui, sans-serif);font-size:.875rem;font-weight:500;box-shadow:0 4px 20px #0000002e;pointer-events:auto;cursor:pointer;max-width:380px;word-break:break-word}.toast--success[data-v-92838193]{background:color-mix(in srgb,var(--color-success-500, #22c55e) 12%,white);border:1px solid color-mix(in srgb,var(--color-success-500, #22c55e) 30%,transparent);color:var(--color-success-700, #15803d)}.toast--error[data-v-92838193]{background:color-mix(in srgb,var(--color-danger-500, #ef4444) 12%,white);border:1px solid color-mix(in srgb,var(--color-danger-500, #ef4444) 30%,transparent);color:var(--color-danger-700, #b91c1c)}.toast--warning[data-v-92838193]{background:color-mix(in srgb,var(--color-warning-500, #f59e0b) 12%,white);border:1px solid color-mix(in srgb,var(--color-warning-500, #f59e0b) 30%,transparent);color:var(--color-warning-700, #b45309)}.toast--info[data-v-92838193]{background:color-mix(in srgb,var(--color-info-500, #3b82f6) 12%,white);border:1px solid color-mix(in srgb,var(--color-info-500, #3b82f6) 30%,transparent);color:var(--color-info-700, #1d4ed8)}.toast-icon[data-v-92838193]{width:14px;height:14px;flex-shrink:0}.toast-message[data-v-92838193]{flex:1}.toast-enter-active[data-v-92838193]{transition:opacity .22s ease,transform .22s ease}.toast-leave-active[data-v-92838193]{transition:opacity .18s ease,transform .18s ease}.toast-enter-from[data-v-92838193],.toast-leave-to[data-v-92838193]{opacity:0;transform:translate(24px)}.toast-move[data-v-92838193]{transition:transform .22s ease}.page-enter-active{transition:opacity var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-decelerate)}.page-leave-active{transition:opacity var(--duration-fast) var(--ease-accelerate),transform var(--duration-fast) var(--ease-accelerate)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-4px)}.app-shell[data-v-2c6242ef]{display:flex;height:100vh;overflow:hidden;background:var(--bg)}.main-area[data-v-2c6242ef]{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;background:var(--bg)}.page-content[data-v-2c6242ef]{flex:1;padding:var(--space-6) var(--space-8)}:root{--bg: #09090A;--surface: #131313;--surface-hi: #1A1A1A;--accent: #00DC82;--accent-dim: rgba(0, 220, 130, .1);--accent-text: #001A0D;--text: #E8E8E2;--text-muted: #5A5A52;--text-faint: #363630;--border: rgba(255, 255, 255, .06);--border-hi: rgba(255, 255, 255, .1);--error: #F04868;--warning: #F0A030;--success: #00DC82;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 8px 24px rgba(0,0,0,.5);--shadow-ac: 0 0 0 1px var(--accent-dim);--font-sans: "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .6875rem;--text-sm: .75rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--duration-fast: .12s;--duration-base: .2s;--duration-slow: .3s;--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1)}[data-theme=light]{--bg: #F5FAF7;--surface: #FFFFFF;--surface-hi: #F0F7F3;--accent: #009950;--accent-dim: rgba(0, 153, 80, .08);--accent-text: #FFFFFF;--text: #0A1A12;--text-muted: #5A7066;--text-faint: #A8B8B2;--border: rgba(0, 0, 0, .06);--border-hi: rgba(0, 0, 0, .1);--error: #CC1A38;--warning: #B86000;--success: #009950;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.12)}:root{--color-surface: var(--surface);--color-surface-elevated: var(--surface);--color-surface-overlay: var(--surface-hi);--color-surface-subtle: var(--surface-hi);--color-border: var(--border);--color-border-strong: var(--border-hi);--color-text-strong: var(--text);--color-text-base: var(--text);--color-text-muted: var(--text-muted);--color-text-subtle: var(--text-faint);--color-text-inverse: var(--accent-text);--color-text-brand: var(--accent);--color-primary: var(--accent);--color-primary-hover: color-mix(in srgb, var(--accent) 85%, white);--color-primary-active: color-mix(in srgb, var(--accent) 80%, black);--color-focus-ring: var(--accent);--color-success-500: var(--success);--color-warning-500: var(--warning);--color-danger-500: var(--error);--color-danger-700: var(--error);--color-danger-800: var(--error);--color-brand-100: color-mix(in srgb, var(--accent) 12%, transparent);--color-brand-500: var(--accent);--color-brand-600: var(--accent);--color-brand-700: var(--accent);--color-neutral-100: var(--surface-hi);--color-neutral-400: var(--text-faint);--color-neutral-600: var(--text-muted);--color-neutral-700: var(--text-muted);--color-neutral-900: var(--text);--color-success-50: color-mix(in srgb, var(--success) 10%, transparent);--color-success-200: color-mix(in srgb, var(--success) 25%, transparent);--color-success-600: var(--success);--color-success-700: var(--success);--color-warning-50: color-mix(in srgb, var(--warning) 10%, transparent);--color-warning-600: var(--warning);--color-warning-700: var(--warning);--color-danger-50: color-mix(in srgb, var(--error) 10%, transparent);--color-danger-600: var(--error);--color-success: var(--success);--color-danger: var(--error)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}code,pre,kbd,samp{font-family:var(--font-mono)}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.2}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-primary{background:var(--accent);color:var(--accent-text, #fff);border-color:var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface-hi)}.btn-danger{background:var(--color-danger-700, #b91c1c);color:#fff;border-color:var(--color-danger-700, #b91c1c)}.btn-danger:hover:not(:disabled){background:var(--color-danger-800, #991b1b)}.btn-warning{background:#d97706;color:#fff;border-color:#b45309}.btn-warning:hover:not(:disabled){background:#b45309}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);transition:background .12s,color .12s;padding:0}.icon-btn:hover{background:var(--surface-hi);color:var(--text)}.icon-btn--danger:hover{background:var(--color-danger-50);color:var(--color-danger-700)}.icon-btn svg{width:14px;height:14px}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:500}.badge--success{background:var(--color-success-50);color:var(--color-success-700)}.badge--neutral{background:var(--surface-hi);color:var(--text-muted)}.badge--warning,.badge--warn{background:var(--color-warning-50);color:var(--color-warning-700)}.badge--danger{background:var(--color-danger-50);color:var(--color-danger-700)}.badge--info{background:color-mix(in srgb,#3b82f6 12%,transparent);color:#1d4ed8}
