.markdown{line-height:1.75}.markdown h1,.markdown h2,.markdown h3{font-family:var(--font-heading);margin:1.4em 0 .5em}.markdown p{margin:.75em 0}.markdown pre{background:var(--color-surface);padding:1rem;border-radius:8px;overflow-x:auto}.markdown code{background:var(--color-surface);padding:.15rem .4rem;border-radius:4px;font-size:.9em}.markdown pre code{background:none;padding:0}.markdown table{border-collapse:collapse}.markdown th,.markdown td{border:1px solid var(--color-surface);padding:.4rem .7rem}.markdown a{color:var(--color-primary)}.markdown img{max-width:100%;border-radius:8px}.markdown blockquote{border-left:3px solid var(--color-primary);margin:.8em 0;padding:.2em 1em;color:var(--color-text-secondary)}.chat-panel{display:flex;flex-direction:column;height:100%;border:1px solid var(--color-surface);border-radius:10px;overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.8rem}.chat-msg.user{align-self:flex-end}.bubble{padding:.6rem .9rem;border-radius:12px;white-space:pre-wrap;max-width:85%}.chat-msg.user .bubble{background:var(--color-primary);color:#fff}.chat-msg.assistant .bubble{background:var(--color-surface)}.tools{margin-top:.3rem;font-size:.8rem}.tool-call{border:1px solid var(--color-surface);border-radius:6px;padding:.3rem .6rem;margin-top:.3rem}.tool-call summary{cursor:pointer;color:var(--color-text-secondary)}.tool-call pre{white-space:pre-wrap;word-break:break-all;max-height:180px;overflow-y:auto;color:var(--color-text-secondary)}.chat-input{display:flex;gap:.5rem;padding:.7rem;border-top:1px solid var(--color-surface)}.chat-input textarea{flex:1;background:var(--color-background);color:var(--color-text);border:1px solid var(--color-surface);border-radius:8px;padding:.5rem .7rem;font:inherit;resize:vertical}.chat-input button{background:var(--color-primary);border:0;color:#fff;padding:0 1.2rem;border-radius:8px;cursor:pointer}.chat-input button:disabled{opacity:.5}.cursor{animation:blink 1s infinite}@keyframes blink{50%{opacity:0}}*{box-sizing:border-box}body{margin:0;background:var(--color-background, #0f172a);color:var(--color-text, #f1f5f9);font-family:var(--font-body, system-ui, sans-serif);font-size:var(--font-size-base, 16px)}a{color:var(--color-primary, #3b82f6);text-decoration:none}.docs-header{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface, #1e293b);padding:.9rem 1.6rem}.docs-header .brand a{font-weight:800;color:var(--color-text);font-family:var(--font-heading)}.topnav a{margin-left:1.2rem;color:var(--color-text-secondary, #94a3b8)}.topnav a:hover{color:var(--color-text)}.docs-body{display:grid;grid-template-columns:var(--sidebar-width, 260px) 1fr;min-height:calc(100vh - 56px)}.docs-sidebar{background:var(--color-surface, #1e293b);padding:1.4rem 1rem;overflow-y:auto}.docs-content{max-width:900px;padding:2rem 2.5rem}@media(max-width:800px){.docs-body{grid-template-columns:1fr}.docs-sidebar{padding:1rem}}.docs-nav h3{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary, #94a3b8);margin:1.1rem 0 .4rem}.nav-link{display:block;padding:.35rem .7rem;border-radius:6px;color:var(--color-text-secondary, #94a3b8);font-size:.92rem}.nav-link:hover{background:var(--color-background, #0f172a);color:var(--color-text)}.nav-link.active{color:var(--color-text);background:var(--color-background, #0f172a);border-left:3px solid var(--color-primary)}h1[data-v-710f18e7]{font-family:var(--font-heading)}.lead[data-v-710f18e7]{color:var(--color-text-secondary)}.project-grid[data-v-710f18e7]{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1.5rem}.project-card[data-v-710f18e7]{display:flex;gap:.9rem;background:var(--color-surface);padding:1.1rem;border-radius:10px;color:var(--color-text);align-items:flex-start;transition:transform .1s}.project-card[data-v-710f18e7]:hover{transform:translateY(-2px)}.project-card h2[data-v-710f18e7]{margin:0 0 .3rem;font-size:1.05rem;font-family:var(--font-heading)}.project-card p[data-v-710f18e7]{margin:0;font-size:.85rem;color:var(--color-text-secondary)}.icon[data-v-710f18e7]{font-size:1.6rem}h1[data-v-791e408c]{font-family:var(--font-heading)}.desc[data-v-791e408c],.due[data-v-791e408c]{color:var(--color-text-secondary);font-size:.9rem}.sections[data-v-791e408c]{display:flex;gap:.4rem;margin:1.4rem 0;flex-wrap:wrap}.sections button[data-v-791e408c]{background:var(--color-surface);color:var(--color-text-secondary);border:0;padding:.45rem 1rem;border-radius:8px;cursor:pointer;text-transform:capitalize}.sections button.active[data-v-791e408c]{background:var(--color-primary);color:#fff}.sub[data-v-791e408c]{margin-top:2.2rem}.pm[data-v-791e408c]{border-collapse:collapse;margin-top:.5rem}.pm td[data-v-791e408c]{padding:.4rem .8rem .4rem 0;font-size:.92rem}.badge[data-v-791e408c]{font-size:.72rem;text-transform:uppercase;border-radius:6px;padding:.15rem .55rem}.badge.todo[data-v-791e408c]{background:var(--color-surface);color:var(--color-text-secondary)}.badge.in_progress[data-v-791e408c]{background:var(--color-primary);color:#fff}.badge.done[data-v-791e408c],.badge.planned.done[data-v-791e408c]{background:#16a34a;color:#fff}.badge.planned[data-v-791e408c]{background:var(--color-surface);color:var(--color-text-secondary)}.empty[data-v-791e408c]{color:var(--color-text-secondary);padding:2rem 0}
