.vue-flow{z-index:0;direction:ltr;width:100%;height:100%;position:relative;overflow:hidden}.vue-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__connection-path,.vue-flow__edge-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.vue-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{pointer-events:none;min-width:5px;min-height:5px;position:absolute}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{bottom:0;left:50%;transform:translate(-50%,50%)}.vue-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{z-index:5;margin:15px;position:absolute}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10px}}:root{--vf-node-bg:#fff;--vf-node-text:#222;--vf-connection-path:#b1b1b7;--vf-handle:#555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{text-align:center;width:150px;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-style:solid;border-width:1px;border-color:var(--vf-node-color);border-radius:3px;padding:10px;font-size:12px}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid #555;outline:none}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color:var(--vf-node-color,#0041d0);--vf-handle:var(--vf-node-color,#0041d0);--vf-box-shadow:var(--vf-node-color,#0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color,#0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{border:1px solid var(--vf-node-color,#0041d0);outline:none}.vue-flow__node-default{--vf-handle:var(--vf-node-color,#1a192b);--vf-box-shadow:var(--vf-node-color,#1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color,#1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{border:1px solid var(--vf-node-color,#1a192b);outline:none}.vue-flow__node-output{--vf-handle:var(--vf-node-color,#ff0072);--vf-box-shadow:var(--vf-node-color,#ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color,#ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid var(--vf-node-color,#ff0072);outline:none}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{background:var(--vf-handle);border:1px solid #fff;border-radius:100%;width:6px;height:6px}.vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:hover{background:#f4f4f4}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1115;--bg-elevated:#171a21;--border:#2a2e37;--text:#e6e8eb;--text-muted:#8b909c;--accent:#7c9eff;--accent-strong:#5b7cff;--danger:#ff8787;--status-progress:#e0a545;--status-deploy:#4fb0c6;--status-test:#a78bfa;--status-done:#5fb88a;--radius:10px;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--series-other:#6b7078}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f8;--bg-elevated:#fff;--border:#e1e3e8;--text:#1a1d23;--text-muted:#6b7078;--accent:#3b5bdb;--accent-strong:#2f4bc7;--status-progress:#b5791a;--status-deploy:#1f7a90;--status-test:#7c5cff;--status-done:#2f8f5b;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#4a3aa7;--series-8:#e34948;--series-other:#898781}}*{box-sizing:border-box}#__nuxt,body,html{height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--bg-elevated);align-items:center;gap:2rem;padding:.9rem 1.5rem;display:flex}.topbar .brand{color:var(--text);font-size:1.1rem;font-weight:700}.topbar nav{gap:1.25rem;display:flex}.topbar nav a{color:var(--text-muted)}.topbar nav a.router-link-exact-active{color:var(--text)}.content{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:1.75rem 2.5rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}h1{font-size:1.5rem}h1,h2{margin:0}h2{font-size:1.1rem}button{font:inherit;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);border-radius:var(--radius);cursor:pointer;padding:.45rem .9rem}button:hover{border-color:var(--accent)}button.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}button:disabled{opacity:.6;cursor:not-allowed}input,select,textarea{font:inherit;background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .7rem}.new-note-form{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1.5rem;display:flex}.error{color:var(--danger);width:100%;margin:0}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot[data-status=proposed]{background:var(--text-muted)}.status-dot[data-status=reflection]{background:var(--accent)}.status-dot[data-status=in_development]{background:var(--status-progress)}.status-dot[data-status=deploying]{background:var(--status-deploy)}.status-dot[data-status=to_test]{background:var(--status-test)}.status-dot[data-status=done]{background:var(--status-done)}.stat-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-bottom:1.5rem;display:grid}.stat-tile{background:var(--bg-elevated);border-left:1px solid var(--border);border:1px solid var(--border);border-radius:var(--radius);border-left-width:3px;padding:.9rem 1.1rem}.stat-tile .stat-value{letter-spacing:-.02em;font-size:2.2rem;font-weight:700;line-height:1.15}.stat-tile .stat-label{color:var(--text-muted);font-size:.8rem}.stat-tile[data-tone=progress]{border-left-color:var(--status-progress)}.stat-tile[data-tone=progress] .stat-value{color:var(--status-progress)}.stat-tile[data-tone=warn]{border-left-color:var(--danger)}.stat-tile[data-tone=warn] .stat-value{color:var(--danger)}.project-badge{color:var(--text-muted);align-items:center;gap:.35rem;font-size:.8rem;display:inline-flex}.project-badge:hover{color:var(--text)}.project-badge-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.project-badge-dot.inline{margin-right:.4rem;display:inline-block}.section-divider{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin:2.25rem 0 1rem;padding-top:1.25rem;display:flex}.section-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0;font-size:.8rem}@keyframes dashboard-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.active-work-grid>.active-work-card,.project-group,.stat-tiles>.stat-tile{animation:.35s both dashboard-fade-in}.stat-tiles>.stat-tile:nth-child(2){animation-delay:30ms}.stat-tiles>.stat-tile:nth-child(3){animation-delay:60ms}.stat-tiles>.stat-tile:nth-child(4){animation-delay:90ms}@keyframes skeleton-pulse{0%,to{opacity:.5}50%{opacity:1}}.skeleton-bar{background:var(--border);border-radius:4px;height:.9rem;margin-bottom:.5rem;animation:1.3s ease-in-out infinite skeleton-pulse}.skeleton-bar:last-child{margin-bottom:0}.skeleton-tile .skeleton-bar--value{width:3rem;height:1.8rem;margin-bottom:.6rem}.skeleton-tile .skeleton-bar--label{width:5rem;height:.7rem}.skeleton-card .skeleton-bar--title{width:40%;height:1.1rem;margin-bottom:.9rem}.dashboard-section{margin-bottom:1.75rem}.dashboard-section>h2{margin-bottom:.7rem}.active-work-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.active-work-card{background:var(--bg-elevated);border:1px solid var(--border);border-left:3px solid var(--status-progress);border-radius:var(--radius);padding:.7rem .85rem}.active-work-card .roadmap-title{margin:0 0 .3rem;font-size:.9rem;font-weight:600;line-height:1.35}.active-work-card .active-work-footer{color:var(--text-muted);justify-content:space-between;align-items:center;gap:.5rem;margin-top:.4rem;font-size:.75rem;display:flex}.mini-progress{background:var(--border);border-radius:999px;width:100%;max-width:160px;height:6px;display:flex;overflow:hidden}.mini-progress-segment[data-status=proposed]{background:var(--text-muted)}.mini-progress-segment[data-status=planned]{background:var(--accent)}.mini-progress-segment[data-status=in_progress]{background:var(--status-progress)}.mini-progress-segment[data-status=done]{background:var(--status-done)}.project-group{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.75rem;padding:1rem 1.25rem}.project-group-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.project-links{gap:1rem;display:flex}.note-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.note-list li{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.35rem 0;display:flex}.note-list li:last-child{border-bottom:none}.note-list .tags,.note-list .updated{color:var(--text-muted);font-size:.8rem}.meta{color:var(--text-muted);margin:.2rem 0 0;font-size:.85rem}.saved-hint{color:var(--accent);font-size:.85rem}.editor-grid{grid-template-columns:1fr 1fr;gap:1rem;height:calc(100dvh - 220px);display:grid}.editor-grid textarea{resize:none;width:100%;height:100%;font-family:Cascadia Code,Fira Code,monospace;font-size:.9rem;line-height:1.5}.preview{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;overflow-y:auto}.preview :where(h1,h2,h3){margin-top:0}.wiki-link{color:var(--accent);border-bottom:1px dashed var(--accent)}.arch-wrap,.graph-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);height:calc(100dvh - 200px);overflow:hidden}.arch-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.5rem;padding:.6rem .75rem;display:flex}.vue-flow__node{border-radius:8px;font-size:.85rem}@media (width<=860px){.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.content{padding:1rem}.editor-grid,.stat-tiles{grid-template-columns:1fr}.editor-grid{grid-auto-rows:min(60vh,420px);height:auto}.arch-wrap,.graph-wrap{height:calc(100dvh - 260px)}.note-list li{flex-wrap:wrap}.project-group-header{flex-wrap:wrap;gap:.5rem}}.qs-overlay[data-v-15dde2a6]{z-index:100;background:#00000080;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.qs-panel[data-v-15dde2a6]{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);width:min(560px,90vw);overflow:hidden;box-shadow:0 12px 40px #0006}.qs-input[data-v-15dde2a6]{border:none;border-bottom:1px solid var(--border);border-radius:0;width:100%;padding:.8rem 1rem;font-size:1rem}.qs-input[data-v-15dde2a6]:focus{outline:none}.qs-list[data-v-15dde2a6]{max-height:50vh;margin:0;padding:.35rem;list-style:none;overflow-y:auto}.qs-list li[data-v-15dde2a6]{cursor:pointer;border-radius:6px;justify-content:space-between;gap:.75rem;padding:.5rem .6rem;display:flex}.qs-list li.active[data-v-15dde2a6]{background:var(--accent-strong);color:#fff}.qs-project[data-v-15dde2a6]{color:var(--text-muted);font-size:.8rem}.qs-list li.active .qs-project[data-v-15dde2a6]{color:#fffc}.qs-empty[data-v-15dde2a6]{color:var(--text-muted);cursor:default;padding:.75rem}.toast-stack[data-v-7165d304]{z-index:200;flex-direction:column-reverse;gap:.5rem;max-width:min(360px,100vw - 2rem);display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.toast[data-v-7165d304]{background:var(--bg-elevated);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);align-items:center;gap:.6rem;padding:.65rem .75rem;font-size:.85rem;display:flex;box-shadow:0 8px 24px #00000040}.toast[data-type=error][data-v-7165d304]{border-left-color:var(--danger)}.toast[data-type=success][data-v-7165d304]{border-left-color:var(--status-done)}.toast-message[data-v-7165d304]{flex:1;line-height:1.4}.toast-action[data-v-7165d304]{color:var(--accent);border-color:var(--accent);background:0 0;flex-shrink:0;padding:.25rem .55rem;font-size:.78rem;font-weight:600}.toast-action[data-v-7165d304]:hover{background:var(--accent);color:#fff}.toast-close[data-v-7165d304]{color:var(--text-muted);background:0 0;border:none;flex-shrink:0;padding:.1rem .3rem;font-size:.75rem}.toast-close[data-v-7165d304]:hover{color:var(--text)}.toast-enter-active[data-v-7165d304],.toast-leave-active[data-v-7165d304]{transition:opacity .15s,transform .15s}.toast-enter-from[data-v-7165d304],.toast-leave-to[data-v-7165d304]{opacity:0;transform:translateY(8px)}.menu-toggle[data-v-4ed30d46]{align-items:center;gap:.5rem;margin-left:auto;display:none}.nav-links[data-v-4ed30d46]{flex:1;align-items:center}.menu-icon[data-v-4ed30d46],.menu-icon[data-v-4ed30d46]:after,.menu-icon[data-v-4ed30d46]:before{background:var(--text);width:16px;height:2px;display:block}.menu-icon[data-v-4ed30d46]:after,.menu-icon[data-v-4ed30d46]:before{content:"";position:relative}.menu-icon[data-v-4ed30d46]:before{top:-5px}.menu-icon[data-v-4ed30d46]:after{top:3px}.nav-actions[data-v-4ed30d46]{align-items:center;gap:1rem;margin-left:auto;display:flex}.qs-trigger[data-v-4ed30d46]{white-space:nowrap}.user-email[data-v-4ed30d46]{opacity:.75;font-size:.85rem}.logout[data-v-4ed30d46]{white-space:nowrap}@media (width<=768px){.topbar[data-v-4ed30d46]{flex-wrap:wrap;gap:.75rem}.menu-toggle[data-v-4ed30d46]{display:flex}.nav-links[data-v-4ed30d46]{flex-direction:column;align-items:stretch;gap:.75rem;width:100%;display:none}.nav-links.open[data-v-4ed30d46]{display:flex}.nav-actions[data-v-4ed30d46]{flex-direction:column;align-items:stretch;gap:.6rem;margin-left:0}.user-email[data-v-4ed30d46]{order:-1}}
