:root{--primary: #C2410C;--primary-light: #EA580C;--success: #22C55E;--warning: #F59E0B;--danger: #EF4444;--radius: 12px;--radius-sm: 8px}.app-root:not(.dark),body:not(.dark){--bg: #FFFDF5;--surface: #FFFFFF;--border: #E8E0D0;--text: #2C2416;--text-secondary: #8B7355;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 24px rgba(0,0,0,.1);--hover-bg: #FEF9E7;--code-bg: #F5F0E0;--lp-page-bg: radial-gradient(1200px 700px at 18% -10%, #fbf3e7 0%, #f7f3ea 55%);--lp-bar-bg: rgba(255,255,255,.75);--lp-text: #2C2416;--lp-muted: #8B7355;--lp-border: #E8E0D0;--lp-node-bg: #FFFFFF;--lp-chip-bg: #F5F0E0;--lp-mfill: #5B4A38;--lp-stage-bg: linear-gradient(90deg, #f3efe6, #faf7f0);--lp-pop-bg: #FFFFFF;--lp-pop-border: #E8E0D0;--lp-pop-text: #5B4A38;--lp-err: #DC2626;--lp-lock: #B8A890;--lp-done: #22C55E;--lp-cur: #C2410C;--lp-dep: #D97706;--lp-accent: #D97706;--lp-note-b: #E0883B;--lp-btn-text: #FFFFFF;--lp-chip-click: #C2410C;color:var(--text);background:var(--bg)}.app-root.dark,body.dark{--bg: #1C1714;--surface: #26201A;--border: #3A322B;--text: #F5EDE3;--text-secondary: #B8A890;--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);--hover-bg: #2E2820;--code-bg: #211C17;--lp-page-bg: radial-gradient(1200px 700px at 18% -10%, #2a1f15 0%, #14110d 55%);--lp-bar-bg: rgba(28,23,20,.7);--lp-text: #ece3d6;--lp-muted: #b09c83;--lp-border: #3a322b;--lp-node-bg: #221d18;--lp-chip-bg: #2a1f15;--lp-mfill: #C2854F;--lp-stage-bg: linear-gradient(90deg, #2a1f15, #1a1410);--lp-pop-bg: #221c16;--lp-pop-border: #3a322b;--lp-pop-text: #c9b89e;--lp-err: #f0a8a8;--lp-lock: #6b5d4a;--lp-done: #34d399;--lp-cur: #fb923c;--lp-dep: #d9a441;--lp-accent: #fbbf24;--lp-note-b: #e0883b;--lp-btn-text: #1A1612;--lp-chip-click: #f59e0b;color:var(--text);background:var(--bg)}.app-root.dark ::-webkit-scrollbar{width:6px}.app-root.dark ::-webkit-scrollbar-track{background:var(--bg)}.app-root.dark ::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.n-card{transition:background .3s,box-shadow .3s}.skeleton-wrapper[data-v-6ab5f085]{width:100%;height:100%;min-height:300px;background:#fff;border-radius:8px;overflow:hidden;animation:skeleton-fade-in-6ab5f085 .3s ease-out}.skeleton-progress-bar[data-v-6ab5f085]{width:100%;height:3px;background:#e8e8e8;overflow:hidden;position:relative}.skeleton-progress-fill[data-v-6ab5f085]{height:100%;width:30%;background:linear-gradient(90deg,#18a058,#36ad6a,#18a058);background-size:200% 100%;animation:skeleton-progress-6ab5f085 1.5s ease-in-out infinite;border-radius:2px}@keyframes skeleton-progress-6ab5f085{0%{transform:translate(-100%)}50%{transform:translate(200%)}to{transform:translate(-100%)}}.skeleton-content[data-v-6ab5f085]{padding:24px}.skeleton-title[data-v-6ab5f085]{width:40%;height:24px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer-6ab5f085 1.5s infinite;border-radius:4px;margin-bottom:20px}.skeleton-lines[data-v-6ab5f085]{margin-bottom:24px}.skeleton-line[data-v-6ab5f085]{height:14px;margin-bottom:10px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-shimmer-6ab5f085 1.5s infinite;border-radius:4px}.skeleton-line-1[data-v-6ab5f085]{width:100%}.skeleton-line-2[data-v-6ab5f085]{width:85%}.skeleton-line-3[data-v-6ab5f085]{width:60%}.skeleton-cards[data-v-6ab5f085]{display:flex;gap:16px;flex-wrap:wrap}.skeleton-card[data-v-6ab5f085]{flex:1;min-width:200px;height:120px;background:linear-gradient(90deg,#f5f5f5 25%,#e8e8e8,#f5f5f5 75%);background-size:200% 100%;animation:skeleton-shimmer-6ab5f085 1.5s infinite;border-radius:8px}@keyframes skeleton-shimmer-6ab5f085{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes skeleton-fade-in-6ab5f085{0%{opacity:0}to{opacity:1}}@media (max-width: 640px){.skeleton-content[data-v-6ab5f085]{padding:16px}.skeleton-cards[data-v-6ab5f085]{flex-direction:column}.skeleton-card[data-v-6ab5f085]{min-width:auto}}.login-page[data-v-be7c19fe]{height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff7ed,#ffedd5,#fed7aa)}.login-card[data-v-be7c19fe]{width:400px;padding:40px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.login-header[data-v-be7c19fe]{text-align:center;margin-bottom:32px}.ds-icon[data-v-be7c19fe]{width:64px;height:64px}.login-header h1[data-v-be7c19fe]{font-size:32px;margin:12px 0 4px;background:linear-gradient(135deg,#f59e0b,#c2410c,#f59e0b);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:2.5px;font-weight:900;animation:shimmer-be7c19fe 4s ease-in-out infinite alternate;text-shadow:0 1px 2px rgba(124,92,255,.3),0 2px 4px rgba(0,212,255,.2)}@keyframes shimmer-be7c19fe{0%{background-position:0% 50%}to{background-position:100% 50%}}.login-header p[data-v-be7c19fe]{color:var(--text-secondary);font-size:14px}.login-page[data-v-f3a9afb2]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff7ed,#ffedd5,#fed7aa);padding:24px}.login-card[data-v-f3a9afb2]{padding:40px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.login-header[data-v-f3a9afb2]{text-align:center;margin-bottom:32px}.ds-icon[data-v-f3a9afb2]{width:64px;height:64px}.login-header h1[data-v-f3a9afb2]{font-size:32px;margin:12px 0 4px;background:linear-gradient(135deg,#f59e0b,#c2410c,#f59e0b);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:2.5px;font-weight:900;animation:shimmer-f3a9afb2 4s ease-in-out infinite alternate;text-shadow:0 1px 2px rgba(124,92,255,.3),0 2px 4px rgba(0,212,255,.2)}@keyframes shimmer-f3a9afb2{0%{background-position:0% 50%}to{background-position:100% 50%}}.login-header p[data-v-f3a9afb2]{color:var(--text-secondary);font-size:14px}.password-strength[data-v-f3a9afb2]{display:flex;align-items:center;gap:8px;margin-top:-20px;margin-bottom:16px;padding-left:4px}.password-strength[data-v-f3a9afb2] .n-progress{flex:1}.strength-label[data-v-f3a9afb2]{font-size:12px;font-weight:600;min-width:20px}.login-page[data-v-001d2174]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff7ed,#ffedd5,#fed7aa);padding:24px}.login-card[data-v-001d2174]{width:420px;padding:40px;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.login-header[data-v-001d2174]{text-align:center;margin-bottom:32px}.login-header .logo-icon[data-v-001d2174]{font-size:48px}.login-header h1[data-v-001d2174]{font-size:24px;color:var(--primary);margin:8px 0 4px}.login-header p[data-v-001d2174]{color:var(--text-secondary);font-size:14px}.password-strength[data-v-001d2174]{display:flex;align-items:center;gap:8px;margin-top:-20px;margin-bottom:16px;padding-left:4px}.password-strength[data-v-001d2174] .n-progress{flex:1}.strength-label[data-v-001d2174]{font-size:12px;font-weight:600;min-width:20px}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%;width:100%}body{font-family:Inter,Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.markdown-body{line-height:1.8;word-wrap:break-word}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:16px 0 8px;color:inherit}.markdown-body code{background:#6366f11f;padding:2px 6px;border-radius:4px;font-size:.9em;font-family:JetBrains Mono,Fira Code,monospace}.markdown-body pre{background:#1e293b;color:#e2e8f0;padding:16px;border-radius:8px;overflow-x:auto;margin:12px 0}.markdown-body pre code{background:none;padding:0;color:inherit}@media (max-width: 768px){body{font-size:14px}.markdown-body pre{padding:12px;font-size:.85em}}@media (max-width: 480px){body{font-size:13px}.markdown-body pre{padding:8px}}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform .3s ease,opacity .3s ease}.slide-enter-from{transform:translateY(10px);opacity:0}.slide-leave-to{transform:translateY(-10px);opacity:0}
