:root{--bg-primary: #0d0d0d;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-card: #1e1e1e;--bg-input: #1a1a1a;--bg-hover: rgba(255, 255, 255, .04);--bg-active: rgba(124, 110, 255, .1);--bg-overlay: rgba(0, 0, 0, .6);--text-primary: #e8e8e8;--text-secondary: #a0a0a5;--text-tertiary: #666;--text-inverse: #fff;--accent: #7c6eff;--accent-hover: #6a5ce6;--accent-light: rgba(124, 110, 255, .12);--accent-gradient: linear-gradient(135deg, #316dff, #7c6eff);--danger: #ff4444;--success: #52c41a;--warning: #fa8c16;--border: #262626;--border-hover: #3a3a3a;--border-focus: var(--accent);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--sidebar-width: 280px;--sidebar-collapsed: 64px;--header-height: 56px;--input-max-height: 200px;--transition-fast: .12s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-sidebar: 100;--z-header: 200;--z-modal: 1000;--z-toast: 1100;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-xs: 11px;--font-sm: 12px;--font-md: 13px;--font-base: 14px;--font-lg: 16px;--font-xl: 18px;--font-2xl: 24px;--bg: var(--bg-primary);--text: var(--text-primary);--text-sub: var(--text-secondary);--text-dim: var(--text-tertiary);--radius: var(--radius-lg)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%;width:100%;overflow:hidden;font-family:var(--font-family);font-size:var(--font-base);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}::selection{background:#7c6eff4d;color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes dotPulse{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}.anim-fade-in{animation:fadeIn var(--transition-normal) both}.anim-fade-in-up{animation:fadeInUp var(--transition-slow) both}.anim-scale-in{animation:scaleIn var(--transition-slow) both}
