*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--c-primary: #6C5CE7;--c-primary-hover: #5A4BD1;--c-primary-subtle: #F0EDFF;--c-primary-ghost: rgba(108,92,231,.08);--c-bg: #FAFAF8;--c-surface: #FFFFFF;--c-surface-sunken: #F5F4F1;--c-border: #E8E5DF;--c-border-subtle: #F0EDE8;--c-text: #1A1A1A;--c-text-secondary: #6B6B6B;--c-text-tertiary: #9B9B9B;--c-danger: #E5484D;--c-danger-hover: #CE3C41;--c-danger-subtle: #FFF0F0;--c-success: #30A46C;--c-success-subtle: #EDFCF2;--c-warning: #E5A000;--c-warning-subtle: #FFF8E1;--c-info: #3B82F6;--c-info-subtle: #EFF6FF;--c-user-bubble: #6C5CE7;--c-ai-bubble: #FAFAF8;--c-figma: #8B5CF6;--c-figma-subtle: #F5F3FF;--c-figma-border: #C4B5FD;--c-diff-add: #EDFCF2;--c-diff-del: #FFF0F0;--c-code-bg: #1e1e2e;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--radius: 8px;--radius-sm: 6px;--radius-lg: 14px;--radius-xl: 20px;--shadow-xs: 0 1px 2px rgba(28,25,23,.04);--shadow-sm: 0 1px 3px rgba(28,25,23,.06), 0 1px 2px rgba(28,25,23,.04);--shadow-md: 0 4px 12px rgba(28,25,23,.08), 0 1px 3px rgba(28,25,23,.04);--shadow-lg: 0 8px 24px rgba(28,25,23,.1), 0 2px 6px rgba(28,25,23,.04);--shadow-xl: 0 16px 48px rgba(28,25,23,.14), 0 4px 12px rgba(28,25,23,.06);--shadow-glow: 0 0 0 3px rgba(108,92,231,.15);--shadow: var(--shadow-sm);--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-normal: .2s}html,body,#root{height:100%}body{font-family:var(--font);color:var(--c-text);background:var(--c-bg);line-height:1.6;font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:8px 16px;font-size:14px;font-weight:500;transition:background var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast)}button:disabled{opacity:.5;cursor:not-allowed}button:active:not(:disabled){transform:scale(.97)}button:focus-visible{outline:none;box-shadow:var(--shadow-glow)}.btn-primary{background:var(--c-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--c-primary-hover)}.btn-danger{background:var(--c-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--c-danger-hover)}.btn-outline{background:transparent;border:1px solid var(--c-border);color:var(--c-text)}.btn-outline:hover:not(:disabled){background:var(--c-primary-ghost);border-color:var(--c-primary);color:var(--c-primary)}.btn-ghost{background:transparent;border:none;color:var(--c-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--c-primary-ghost);color:var(--c-primary)}input,textarea,select{font-family:inherit;font-size:14px;border:1px solid var(--c-border);border-radius:var(--radius);padding:8px 12px;outline:none;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);background:var(--c-surface);color:var(--c-text)}input:focus,textarea:focus,select:focus{border-color:var(--c-primary);box-shadow:var(--shadow-glow)}a{color:var(--c-primary);text-decoration:none}.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{padding:10px 16px;border-radius:var(--radius);font-size:14px;color:#fff;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toast-slide-up .25s var(--ease-out);pointer-events:auto;max-width:360px}.toast-success{background:var(--c-success)}.toast-error{background:var(--c-danger)}.toast-info{background:#2a2a2a}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.skeleton-card{background:var(--c-surface);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.skeleton-line{background:linear-gradient(90deg,var(--c-border) 25%,var(--c-border-subtle) 50%,var(--c-border) 75%);background-size:200% 100%;border-radius:4px;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.status-dot-pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.spinner{width:28px;height:28px;border:3px solid var(--c-border);border-top-color:var(--c-primary);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:16px;height:16px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.card-interactive{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);transition:box-shadow var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-sm)}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-panel{animation:modal-scale-in .2s var(--ease-out)}@keyframes figma-glow{0%,to{box-shadow:0 0 #8b5cf600}50%{box-shadow:0 0 8px 3px #8b5cf64d}}.figma-btn-glow{animation:figma-glow 2.5s ease-in-out infinite}@keyframes figma-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.figma-onboard-card{animation:figma-fade-in .4s var(--ease-out)}.markdown-body{line-height:1.6;color:inherit}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-weight:600;margin:1em 0 .4em;line-height:1.3}.markdown-body h1{font-size:1.25em}.markdown-body h2{font-size:1.1em}.markdown-body h3{font-size:1em}.markdown-body p{margin:.5em 0}.markdown-body ul,.markdown-body ol{padding-left:1.5em;margin:.5em 0}.markdown-body li{margin:.2em 0}.markdown-body li>p{margin:0}.markdown-body pre{background:var(--c-code-bg);color:#cdd6f4;border-radius:8px;padding:12px 14px;overflow-x:auto;margin:.6em 0;font-size:13px;line-height:1.5}.markdown-body code:not(pre code){background:#0000000f;padding:1px 5px;border-radius:4px;font-size:.88em;font-family:var(--font-mono)}.markdown-body table{border-collapse:collapse;width:100%;margin:.5em 0;font-size:13px}.markdown-body th,.markdown-body td{border:1px solid var(--c-border);padding:6px 10px;text-align:left}.markdown-body th{background:var(--c-surface-sunken);font-weight:600}.markdown-body blockquote{border-left:3px solid var(--c-border);margin:.5em 0;padding:4px 12px;color:var(--c-text-secondary)}.markdown-body hr{border:none;border-top:1px solid var(--c-border);margin:.8em 0}.markdown-body a{color:var(--c-primary);text-decoration:none}.markdown-body a:hover{text-decoration:underline}
