:root{--primary: #4f46e5;--primary-light: #6366f1;--primary-lighter: #818cf8;--primary-50: #eef2ff;--primary-100: #e0e7ff;--primary-900: #1e1b4b;--accent: #f59e0b;--accent-light: #fbbf24;--success: #10b981;--error: #ef4444;--surface: #ffffff;--bg: #f8f9fc;--text: #1e1b4b;--text-secondary: #6b7280;--text-muted: #9ca3af;--border: #e5e7eb;--border-light: #f3f4f6;--shadow-xs: 0 1px 2px rgba(0,0,0,.04);--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.07);--shadow-lg: 0 8px 30px rgba(0,0,0,.1);--shadow-xl: 0 20px 60px rgba(0,0,0,.12);--shadow-primary: 0 4px 14px rgba(79, 70, 229, .25);--shadow-card-hover: 0 12px 28px rgba(79, 70, 229, .1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,PingFang SC,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text);background:var(--bg);line-height:1.6}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}::selection{background:var(--primary-100);color:var(--primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #4f46e566}50%{box-shadow:0 0 0 14px #4f46e500}}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes message-in-left{0%{opacity:0;transform:translate(-12px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes message-in-right{0%{opacity:0;transform:translate(12px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}.animate-fade-in{animation:fadeIn .4s ease-out both}.animate-slide-up{animation:slideUp .5s ease-out both}.animate-slide-down{animation:slideDown .4s ease-out both}.animate-scale-in{animation:scaleIn .35s ease-out both}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:60ms}.stagger-children>*:nth-child(3){animation-delay:.12s}.stagger-children>*:nth-child(4){animation-delay:.18s}.stagger-children>*:nth-child(5){animation-delay:.24s}.stagger-children>*:nth-child(6){animation-delay:.3s}.card-hover{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}@media(hover:hover){.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)!important}}.card-hover:active{transform:scale(.98)}.gradient-text{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-lighter) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.4)}.typing-dots{display:inline-flex;gap:5px;align-items:center;padding:4px 0}.typing-dots span{width:7px;height:7px;border-radius:50%;background:var(--primary-lighter);animation:typing-bounce 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.msg-ai{animation:message-in-left .35s ease-out both}.msg-user{animation:message-in-right .35s ease-out both}.page-enter{animation:slideUp .45s ease-out both}.ant-card{transition:transform .3s ease,box-shadow .3s ease}.ant-btn{transition:all .25s ease}.ant-btn-primary:not(:disabled):active{transform:scale(.97)}.sidebar-logo{position:relative;overflow:hidden}.sidebar-logo:after{content:"";position:absolute;bottom:0;left:16px;right:16px;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.mobile-nav-item{transition:all .2s ease;position:relative}.mobile-nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:20px;height:3px;border-radius:0 0 3px 3px;background:var(--primary)}.pattern-dots{background-image:radial-gradient(circle,rgba(255,255,255,.08) 1px,transparent 1px);background-size:24px 24px}.shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes float-shape-1{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-20px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}@keyframes float-shape-2{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(-25px,30px) rotate(-120deg)}66%{transform:translate(20px,-15px) rotate(-240deg)}}.float-shape{position:absolute;border-radius:50%;opacity:.07;pointer-events:none}.float-shape-1{animation:float-shape-1 20s ease-in-out infinite}.float-shape-2{animation:float-shape-2 25s ease-in-out infinite}.markdown-body{font-size:14px;line-height:1.7;color:var(--text);word-break:break-word}.markdown-body>*:first-child{margin-top:0}.markdown-body>*:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{font-weight:700;margin:16px 0 8px;line-height:1.4}.markdown-body h1{font-size:1.3em}.markdown-body h2{font-size:1.15em}.markdown-body h3{font-size:1.05em}.markdown-body p{margin:6px 0}.markdown-body ul,.markdown-body ol{padding-left:20px;margin:6px 0}.markdown-body li{margin:3px 0}.markdown-body li>p{margin:2px 0}.markdown-body strong{font-weight:600}.markdown-body code{background:var(--primary-50);color:var(--primary);padding:1px 5px;border-radius:4px;font-size:.9em;font-family:SF Mono,Fira Code,monospace}.markdown-body pre{background:#1e1b4b;color:#e2e8f0;padding:14px 16px;border-radius:10px;overflow-x:auto;margin:10px 0;font-size:13px;line-height:1.5}.markdown-body pre code{background:none;color:inherit;padding:0;border-radius:0;font-size:inherit}.markdown-body blockquote{border-left:3px solid var(--primary-lighter);padding:4px 12px;margin:8px 0;color:var(--text-secondary);background:var(--primary-50);border-radius:0 8px 8px 0}.markdown-body a{color:var(--primary);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}.markdown-body th,.markdown-body td{border:1px solid var(--border);padding:6px 10px;text-align:left}.markdown-body th{background:var(--bg);font-weight:600}.markdown-body hr{border:none;border-top:1px solid var(--border);margin:12px 0}.msg-bubble-ai .markdown-body{color:var(--text)}.msg-bubble-user .markdown-body{color:#fff}.msg-bubble-user .markdown-body code{background:#ffffff26;color:#fff}.msg-bubble-user .markdown-body pre{background:#0003;color:#fff}.msg-bubble-user .markdown-body blockquote{border-left-color:#ffffff80;background:#ffffff1a;color:#ffffffd9}.msg-bubble-user .markdown-body a{color:#c7d2fe}
