@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap");:root{--bg-primary:#000000;--bg-secondary:#080808;--bg-tertiary:#0c0c0c;--bg-card:#0c0c0c;--bg-card-hover:#161616;--bg-glass:#080808;--bg-input:#111111;--border-subtle:#333333;--border-default:#444444;--border-focus:#6366f1;--border-accent:#06b6d4;--text-primary:#ffffff;--text-secondary:#f1f5f9;--text-muted:#cbd5e1;--text-accent:#a5b4fc;--text-gradient:linear-gradient(135deg,#a5b4fc,#d8b4fe);--primary-400:#818cf8;--primary-500:#6366f1;--primary-600:#4f46e5;--primary-gradient:linear-gradient(135deg,#6366f1,#8b5cf6);--primary-gradient-hover:linear-gradient(135deg,#7c7ff7,#9d78f8);--accent-400:#22d3ee;--accent-500:#06b6d4;--accent-gradient:linear-gradient(135deg,#06b6d4,#3b82f6);--success-400:#4ade80;--success-500:#22c55e;--success-bg:rgba(34,197,94,0.1);--success-border:rgba(34,197,94,0.3);--warning-400:#fbbf24;--warning-500:#f59e0b;--warning-bg:rgba(245,158,11,0.1);--warning-border:rgba(245,158,11,0.3);--danger-400:#f87171;--danger-500:#ef4444;--danger-bg:rgba(239,68,68,0.1);--danger-border:rgba(239,68,68,0.3);--info-400:#60a5fa;--info-500:#3b82f6;--info-bg:rgba(59,130,246,0.1);--info-border:rgba(59,130,246,0.3);--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 32px rgba(0,0,0,0.5);--shadow-glow:0 0 20px rgba(99,102,241,0.15);--shadow-glow-accent:0 0 20px rgba(6,182,212,0.15);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:400ms cubic-bezier(0.4,0,0.2,1);--transition-spring:500ms cubic-bezier(0.34,1.56,0.64,1);--sidebar-width:260px;--sidebar-collapsed:72px;--topbar-height:64px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}a{color:var(--primary-400);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-400)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(99,102,241,.3);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:rgba(99,102,241,.5)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes gradientFlow{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes orbFloat1{0%,to{transform:translate(0) scale(1)}25%{transform:translate(50px,-30px) scale(1.1)}50%{transform:translate(-20px,-60px) scale(.9)}75%{transform:translate(-40px,20px) scale(1.05)}}@keyframes orbFloat2{0%,to{transform:translate(0) scale(1)}25%{transform:translate(-40px,40px) scale(.95)}50%{transform:translate(30px,20px) scale(1.1)}75%{transform:translate(50px,-40px) scale(1)}}.glass-card{background:var(--bg-card);border:2px solid var(--border-subtle);border-radius:var(--radius-lg);transition:all var(--transition-base)}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--primary-400);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.glass-card-static{background:var(--bg-card);border:2px solid var(--border-subtle);border-radius:var(--radius-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;line-height:1.5}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-gradient);color:white;box-shadow:var(--shadow-sm),0 0 20px rgba(99,102,241,.2)}.btn-primary:hover:not(:disabled){background:var(--primary-gradient-hover);box-shadow:var(--shadow-md),0 0 30px rgba(99,102,241,.3);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-default)}.btn-secondary:hover:not(:disabled){background:rgba(99,102,241,.1);border-color:var(--primary-400)}.btn-danger{background:var(--danger-bg);color:var(--danger-400);border:1px solid var(--danger-border)}.btn-danger:hover:not(:disabled){background:rgba(239,68,68,.2);border-color:var(--danger-400)}.btn-success{background:var(--success-bg);color:var(--success-400);border:1px solid var(--success-border)}.btn-success:hover:not(:disabled){background:rgba(34,197,94,.2);border-color:var(--success-400)}.btn-ghost{background:transparent;color:var(--text-secondary);padding:var(--space-2) var(--space-3)}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:rgba(255,255,255,.05)}.btn-icon{padding:var(--space-2);width:36px;height:36px;border-radius:var(--radius-md)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);border-radius:var(--radius-lg)}.input{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-input);border:2px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none}.input::placeholder{color:#888888}.input:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px rgba(99,102,241,.3),var(--shadow-glow)}.input:hover:not(:focus){border-color:var(--border-default)}.textarea{resize:vertical;min-height:100px;line-height:1.6}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-2)}.form-group{margin-bottom:var(--space-5)}.char-count{font-size:var(--text-xs);color:var(--text-muted);text-align:right;margin-top:var(--space-1)}.char-count.warning{color:var(--warning-400)}.char-count.danger{color:var(--danger-400)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 10px;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:rgba(99,102,241,.15);color:var(--primary-400);border:1px solid rgba(99,102,241,.3)}.badge-success{background:var(--success-bg);color:var(--success-400);border:1px solid var(--success-border)}.badge-warning{background:var(--warning-bg);color:var(--warning-400);border:1px solid var(--warning-border)}.badge-danger{background:var(--danger-bg);color:var(--danger-400);border:1px solid var(--danger-border)}.badge-info{background:var(--info-bg);color:var(--info-400);border:1px solid var(--info-border)}.badge-neutral{background:rgba(100,116,139,.15);color:var(--text-secondary);border:1px solid rgba(100,116,139,.3)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;background:rgba(15,23,42,.5);border-bottom:1px solid var(--border-subtle)}.table td,.table th{padding:var(--space-3) var(--space-4)}.table td{font-size:var(--text-sm);color:var(--text-secondary);border-bottom:1px solid rgba(99,102,241,.07)}.table tr:hover td{background:rgba(99,102,241,.04)}.table tr:last-child td{border-bottom:none}.progress-bar{width:100%;height:8px;background:rgba(99,102,241,.1);overflow:hidden}.progress-bar,.progress-fill{border-radius:var(--radius-full)}.progress-fill{height:100%;background:var(--primary-gradient);transition:width var(--transition-slow)}.progress-fill.warning{background:linear-gradient(135deg,#f59e0b,#ef4444)}.progress-fill.danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.progress-fill.success{background:linear-gradient(135deg,#22c55e,#06b6d4)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast)}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-8);max-width:500px;width:90%;box-shadow:var(--shadow-lg);animation:scaleIn var(--transition-base)}.modal-title{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--space-4)}.modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(99,102,241,.08) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.spinner{width:20px;height:20px;border:2px solid var(--border-subtle);border-top-color:var(--primary-400);border-radius:50%;animation:spin .6s linear infinite}.spinner-lg{width:40px;height:40px;border-width:3px}.gradient-text{background:var(--text-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-accent{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-container{padding:var(--space-8);max-width:1400px;margin:0 auto;animation:fadeInUp .4s ease-out}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);flex-wrap:wrap;gap:var(--space-4)}.page-title{font-size:var(--text-3xl);font-weight:800;letter-spacing:-.02em}.page-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin-top:var(--space-1)}.grid{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-container{padding:var(--space-4)}}.flex-row{gap:var(--space-3)}.flex-between,.flex-row{display:flex;align-items:center}.flex-between{justify-content:space-between}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center;color:var(--text-muted)}.empty-state svg{width:64px;height:64px;margin-bottom:var(--space-4);opacity:.5}.empty-state h3{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-2)}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border-subtle);padding-bottom:0;margin-bottom:var(--space-6);overflow-x:auto}.tab{padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:none;border:none;border-bottom:2px solid transparent;font-family:var(--font-sans)}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary-400);border-bottom-color:var(--primary-400)}.toast{position:fixed;bottom:var(--space-6);right:var(--space-6);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;animation:slideInRight .3s ease-out;z-index:2000;max-width:400px}.toast-success{background:var(--success-bg);color:var(--success-400);border:1px solid var(--success-border)}.toast-error{background:var(--danger-bg);color:var(--danger-400);border:1px solid var(--danger-border)}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-4);gap:var(--space-4);min-height:500px}.kanban-column{background:rgba(15,23,42,.4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-3);border-bottom:2px solid var(--border-subtle);margin-bottom:var(--space-2)}.kanban-column-title{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.kanban-count{font-size:var(--text-xs);padding:2px 8px;border-radius:var(--radius-full);background:rgba(99,102,241,.1);color:var(--text-muted)}.kanban-card{padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.kanban-card:hover{border-color:var(--border-default);transform:translateY(-1px);box-shadow:var(--shadow-md)}@media (max-width:1024px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.kanban-board{grid-template-columns:1fr}}.chat-container{display:flex;flex-direction:column;height:calc(100vh - var(--topbar-height) - 160px);min-height:400px}.chat-messages{flex:1 1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.chat-bubble{max-width:75%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:1.6;animation:fadeInUp .2s ease-out}.chat-bubble-user{align-self:flex-end;background:var(--primary-gradient);color:white;border-bottom-right-radius:4px}.chat-bubble-system{align-self:flex-start;background:var(--bg-card);border:1px solid var(--border-subtle);border-bottom-left-radius:4px}.chat-input-container{padding:var(--space-4);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space-3);align-items:flex-end}.chat-input{flex:1 1;resize:none;max-height:150px}.code-viewer{display:grid;grid-template-columns:250px 1fr;border:2px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;height:500px}.code-tree{background:var(--bg-tertiary);border-right:2px solid var(--border-subtle);overflow-y:auto;padding:var(--space-2)}.code-tree-item{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-2)}.code-tree-item:hover{background:rgba(255,255,255,.05);color:var(--text-primary)}.code-tree-item.active{background:rgba(99,102,241,.25);color:#ffffff;font-weight:600}.code-content{overflow:auto;background:#050505}.code-content pre{padding:var(--space-4);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.8;color:#ffffff;margin:0}.stat-card{padding:var(--space-6);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;right:0;width:80px;height:80px;border-radius:50%;background:var(--primary-gradient);opacity:.05;transform:translate(20px,-20px)}.stat-value{font-size:var(--text-3xl);font-weight:800;margin-bottom:var(--space-1)}.stat-label{font-size:var(--text-sm);color:var(--text-muted)}.stat-change{font-size:var(--text-xs);margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.stat-change.positive{color:var(--success-400)}.stat-change.negative{color:var(--danger-400)}