:root{--bg: #fbfbfd;--surface: #ffffff;--surface-2: #f4f4f8;--border: #e3e3e8;--text: #1a1a1f;--muted: #6b6b76;--accent: #4b3ff0;--accent-text: #ffffff;--active-bg: #e8f5ec;--active-text: #1f7a44;--error: #b00020;--confirmed: #1f7a44;--potential: #9a7a12;--validated: #1f7a44;--rejected: #b0431a;--paused: #9a7a12;--stopped: #8a3b3b;--g-discovery: #6d5ce0;--g-gate: #9a7a12;--g-engineering: #b45a1d;--g-operations: #1f7a44;--radius: 12px;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .05)}@media(prefers-color-scheme:dark){:root{--bg: #0f0f14;--surface: #17171e;--surface-2: #1e1e27;--border: #2a2a34;--text: #f2f2f5;--muted: #9a9aa6;--accent: #8b80ff;--accent-text: #0f0f14;--active-bg: #14321f;--active-text: #6fdd9a;--error: #ff6b81;--confirmed: #6fdd9a;--potential: #e0c05a;--validated: #6fdd9a;--rejected: #ff9d76;--paused: #e0c05a;--stopped: #ff9d9d;--g-discovery: #8b80ff;--g-gate: #e0c05a;--g-engineering: #f0985c;--g-operations: #6fdd9a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35)}}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}.shell{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap}.topbar-left{display:flex;align-items:center;gap:.6rem}.brand{font-weight:700;font-size:1.1rem;letter-spacing:-.02em;text-decoration:none}.brand-sub{font-weight:500;color:var(--muted)}.crumb-sep{color:var(--muted)}.crumb{font-weight:600}.identity{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;color:var(--muted);font-size:.9rem}.page{max-width:760px;margin:0 auto;padding:1.75rem 1.5rem 4rem}.page.wide{max-width:1100px}h1{font-size:1.7rem;letter-spacing:-.02em;margin:0 0 .5rem}h2{font-size:1.2rem;margin:2rem 0 1rem}h3{font-size:1rem;margin:1.25rem 0 .5rem}.tagline{color:var(--muted);font-size:1.05rem;max-width:60ch}.lede{max-width:70ch;margin-bottom:1.5rem}.muted{color:var(--muted)}.error{color:var(--error);font-weight:500}.empty{padding:1rem 0}.note{font-size:.88rem}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.actions,.row-actions{display:flex;gap:.5rem;align-items:center}.btn,.btn-ghost{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-weight:600;padding:.5rem .95rem;border-radius:8px;border:1px solid var(--border);cursor:pointer;text-decoration:none;transition:transform .04s ease,background .15s ease}.btn{background:var(--accent);color:var(--accent-text);border-color:transparent}.btn-ghost{background:transparent;color:var(--text)}.btn-small{padding:.3rem .6rem;font-size:.85rem}.btn-icon{padding:.3rem .5rem}.btn:hover,.btn-ghost:hover{transform:translateY(-1px)}.btn[disabled],.btn-ghost[disabled]{opacity:.5;cursor:not-allowed;transform:none}.btn:focus-visible,.btn-ghost:focus-visible,a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,.graph-node:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{padding:2rem 0 1rem}.hero h1{font-size:2.2rem;max-width:18ch}.hero-cta{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.cards{list-style:none;padding:0;margin:1rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow);height:100%;display:flex;flex-direction:column}.card h3{margin:0 0 .4rem}.card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.card-desc{color:var(--muted);font-size:.92rem;flex:1}.card-clickable{padding:0}.card-button{width:100%;height:100%;text-align:left;background:none;border:none;padding:1.1rem;cursor:pointer;font:inherit;color:inherit;border-radius:var(--radius)}.card-button:hover{background:var(--surface-2)}.pill{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--border);color:var(--muted);white-space:nowrap;vertical-align:middle}.pill-conf.pill-confirmed,.pill-validated{color:var(--confirmed);border-color:color-mix(in srgb,var(--confirmed) 40%,transparent);background:color-mix(in srgb,var(--confirmed) 12%,transparent)}.pill-conf.pill-potential,.pill-open{color:var(--potential);border-color:color-mix(in srgb,var(--potential) 45%,transparent);background:color-mix(in srgb,var(--potential) 12%,transparent);border-style:dashed}.pill-rejected{color:var(--rejected);border-color:color-mix(in srgb,var(--rejected) 40%,transparent);background:color-mix(in srgb,var(--rejected) 12%,transparent)}.pill-type,.pill-role{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.pill-role-viewer{color:var(--muted);border-color:var(--border);background:transparent}.pill-archived{opacity:.7}.pill-current{color:var(--accent-text);background:var(--accent);border-color:transparent}.tabs{display:flex;gap:.25rem;padding:0 1.5rem;border-bottom:1px solid var(--border);background:var(--surface);overflow-x:auto}.tab{padding:.7rem .9rem;text-decoration:none;color:var(--muted);font-weight:600;font-size:.92rem;border-bottom:2px solid transparent;white-space:nowrap}.tab:hover{color:var(--text)}.tab-active{color:var(--text);border-bottom-color:var(--accent)}.list{list-style:none;padding:0;margin:.5rem 0}.list-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.linklike{background:none;border:none;padding:0;font:inherit;color:var(--accent);cursor:pointer;text-align:left}.linklike:hover{text-decoration:underline}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.explorer{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1.5rem;align-items:start}@media(max-width:720px){.explorer{grid-template-columns:1fr}}.explorer-list{border-right:1px solid var(--border);padding-right:1rem}@media(max-width:720px){.explorer-list{border-right:none;padding-right:0}}.list-nav{margin:.5rem 0}.list-nav-item{width:100%;display:flex;align-items:center;gap:.5rem;padding:.5rem;border:none;background:none;font:inherit;color:inherit;cursor:pointer;border-radius:8px;text-align:left}.list-nav-item:hover{background:var(--surface-2)}.list-nav-active{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--accent)}.list-nav-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-detail header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.node-detail h2{margin:.25rem 0;width:100%}.detail-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.prose{white-space:pre-wrap;word-break:break-word}.record ul{margin:.25rem 0;padding-left:1.2rem}.record li{word-break:break-word}.blast{background:var(--surface-2);border-radius:var(--radius);padding:.75rem 1rem;margin:1rem 0}.graph-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;overflow-x:auto}.graph-svg{width:100%;height:auto;max-width:100%;display:block}.graph-node{cursor:pointer;transition:opacity .18s ease}.node-card{fill:var(--surface);stroke-width:2;filter:drop-shadow(0 1px 3px rgba(0,0,0,.12));transition:stroke-width .12s ease}.graph-node:hover .node-card{stroke-width:3}.node-selected .node-card{stroke-width:3.5}.node-dimmed{opacity:.22}.node-status-discovery{stroke:var(--g-discovery)}.node-status-gate{stroke:var(--g-gate)}.node-status-engineering{stroke:var(--g-engineering)}.node-status-operations{stroke:var(--g-operations)}.node-status-paused{stroke:var(--paused);stroke-dasharray:5 4}.node-status-stopped{stroke:var(--stopped);stroke-dasharray:3 4}.node-preproduct{fill:color-mix(in srgb,var(--potential) 10%,var(--surface));stroke-dasharray:4 3}.node-label{fill:var(--text);font-size:12px;font-weight:600}.node-sublabel{fill:var(--potential);font-size:9.5px;text-transform:uppercase;letter-spacing:.05em}.edge{stroke-width:2;fill:none}.edge-confirmed{stroke:var(--confirmed)}.edge-potential{stroke:var(--potential);stroke-dasharray:6 4}.edge-group{transition:opacity .18s ease}.edge-dimmed{opacity:.1}.edge-focus .edge{stroke-width:2.6}.edge-verb{fill:var(--accent);font-size:12px;font-weight:700;paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}.island-hull rect{fill:color-mix(in srgb,var(--g-discovery) 5%,transparent);stroke:color-mix(in srgb,var(--g-discovery) 24%,transparent);stroke-width:1.5;stroke-dasharray:2 5}.island-hull text,.shelf-label{fill:var(--muted);font-size:10.5px;font-style:italic}.arrow-head{fill:var(--muted)}.legend{display:inline-flex;gap:.9rem;flex-wrap:wrap;margin-left:.25rem}.legend-item{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem}.node-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.node-dot-product{background:color-mix(in srgb,var(--accent) 22%,var(--surface));border:2px solid var(--accent)}.node-dot-preproduct{background:color-mix(in srgb,var(--potential) 18%,var(--surface));border:2px dashed var(--potential)}.rel-list{margin-top:1.5rem}.rel-list-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.rel-list-head h2{margin:0}.verb{color:var(--accent);font-weight:600}.progress-summary{display:flex;gap:1.5rem;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1.5rem}.progress-stat{color:var(--muted);font-size:.9rem}.progress-big{display:block;font-size:1.9rem;font-weight:700;color:var(--text);line-height:1.1}.status-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.9rem 1.25rem;border-radius:var(--radius);border:1px solid var(--border);margin:1rem 0}.status-active{background:color-mix(in srgb,var(--confirmed) 10%,var(--surface));border-color:color-mix(in srgb,var(--confirmed) 35%,transparent)}.status-paused{background:color-mix(in srgb,var(--paused) 12%,var(--surface));border-color:color-mix(in srgb,var(--paused) 40%,transparent)}.status-stopped{background:color-mix(in srgb,var(--stopped) 12%,var(--surface));border-color:color-mix(in srgb,var(--stopped) 40%,transparent)}.status-label{font-weight:700;text-transform:uppercase;letter-spacing:.04em}.status-pill-paused{color:var(--paused);border-color:color-mix(in srgb,var(--paused) 45%,transparent)}.status-pill-stopped{color:var(--stopped);border-color:color-mix(in srgb,var(--stopped) 45%,transparent)}.status-pill-active{color:var(--confirmed);border-color:color-mix(in srgb,var(--confirmed) 45%,transparent)}.journey-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem .9rem;margin:1.25rem 0}.journey-dimmed{opacity:.6}.journey-arcs{width:100%;height:26px;display:block;overflow:visible}.journey-arc{fill:none;stroke-width:1.5;stroke-dasharray:4 4;opacity:.7}.arc-discovery{stroke:var(--g-discovery)}.arc-evolution{stroke:var(--g-operations)}.journey-steps{list-style:none;display:grid;grid-template-columns:repeat(9,1fr);padding:0;margin:0;position:relative}.journey-steps:before{content:"";position:absolute;top:7px;left:5.5%;right:5.5%;height:2px;background:var(--border)}.journey-step{display:flex;flex-direction:column;align-items:center;gap:.3rem;position:relative}.step-dot{width:16px;height:16px;border-radius:50%;background:var(--surface);border:2px solid var(--border);transition:all .15s ease}.step-discovery{color:var(--g-discovery)}.step-gate{color:var(--g-gate)}.step-engineering{color:var(--g-engineering)}.step-operations{color:var(--g-operations)}.step-current .step-dot{width:20px;height:20px;margin-top:-2px;border-color:currentColor;background:currentColor;box-shadow:0 0 0 5px color-mix(in srgb,currentColor 22%,transparent)}.step-label{font-size:.72rem;color:var(--muted)}.step-current .step-label{color:currentColor;font-weight:700}.journey-groups{display:grid;grid-template-columns:5fr 1fr 1fr 2fr;gap:4px;margin-top:.7rem}.group-span{font-size:.64rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;text-align:center;padding-top:.3rem;border-top:2px solid}.span-discovery{color:var(--g-discovery);border-color:color-mix(in srgb,var(--g-discovery) 50%,transparent)}.span-gate{color:var(--g-gate);border-color:color-mix(in srgb,var(--g-gate) 50%,transparent)}.span-engineering{color:var(--g-engineering);border-color:color-mix(in srgb,var(--g-engineering) 50%,transparent)}.span-operations{color:var(--g-operations);border-color:color-mix(in srgb,var(--g-operations) 50%,transparent)}.journey-detail{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:1rem;align-items:start;margin:1rem 0 1.5rem}@media(max-width:760px){.journey-detail{grid-template-columns:1fr}}.guidance{background:var(--surface);border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius);padding:1rem 1.25rem}.guidance-discovery{border-left-color:var(--g-discovery)}.guidance-gate{border-left-color:var(--g-gate)}.guidance-engineering{border-left-color:var(--g-engineering)}.guidance-operations{border-left-color:var(--g-operations)}.guidance-question{margin:.5rem 0 .4rem;font-size:1.15rem}.stage-tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.15rem .55rem;border-radius:6px;border:1px solid currentColor}.stage-tag-discovery{color:var(--g-discovery)}.stage-tag-gate{color:var(--g-gate)}.stage-tag-engineering{color:var(--g-engineering)}.stage-tag-operations{color:var(--g-operations)}.guidance-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}.ring-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.product-home{display:flex;flex-direction:column;gap:.4rem;margin-top:1rem}.intent-capture textarea,.intent-panel textarea{width:100%;font:inherit;margin-top:.6rem;border:1px solid var(--border);border-radius:8px;padding:.6rem .7rem;background:var(--bg);color:var(--text);resize:vertical}.quick-capture{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.6rem 0}.open-items h2,.recent-decisions h2{margin:1.25rem 0 .5rem}.board{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--g-discovery);border-radius:var(--radius);padding:1rem 1.25rem;margin:.6rem 0}.board h2{margin:0}.board-add{margin:.8rem 0 1rem;display:flex;flex-direction:column;gap:.5rem}.board-modes{display:flex;gap:.4rem}.chip-btn{font:inherit;font-size:.85rem;padding:.3rem .7rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer}.chip-btn.chip-active{border-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent) 10%,var(--bg))}.prompt-chips{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.prompt-chip{font:inherit;font-size:.78rem;font-style:italic;padding:.18rem .65rem;border-radius:999px;border:1px dashed var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:border-color .12s ease,color .12s ease}.prompt-chip:hover{border-color:var(--g-discovery);color:var(--text)}.prompt-chip.prompt-active{border-style:solid;border-color:var(--g-discovery);color:var(--g-discovery);background:color-mix(in srgb,var(--g-discovery) 10%,transparent)}.prompt-more{font-style:normal}.board-input-row{display:flex;gap:.5rem;flex-wrap:wrap}.board-input-row input{flex:1;min-width:180px;font:inherit;border:1px solid var(--border);border-radius:8px;padding:.5rem .7rem;background:var(--bg);color:var(--text)}.board-caption{max-width:220px}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.6rem}.board-card{position:relative;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.6rem .75rem 1.5rem;display:flex;flex-direction:column;gap:.35rem;transform:rotate(-.35deg);transition:transform .12s ease,border-color .12s ease}.board-card:nth-child(2n){transform:rotate(.4deg)}.board-card:hover{transform:rotate(0) translateY(-2px);border-color:var(--muted)}.board-card p{margin:0;font-size:.88rem;overflow-wrap:break-word}.board-card a{font-size:.85rem;font-weight:600;overflow-wrap:anywhere}.card-meta{position:absolute;bottom:.35rem;left:.75rem;right:.75rem;display:flex;gap:.5rem;align-items:baseline;justify-content:space-between;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}.card-stage{color:var(--muted)}.card-via-agent{color:var(--accent, #8b7bf7);white-space:nowrap}.card-remove{position:absolute;top:.15rem;right:.4rem;font:inherit;font-size:.95rem;line-height:1;background:none;border:none;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .1s ease}.board-card:hover .card-remove,.card-remove:focus-visible{opacity:1}.card-remove:hover{color:var(--stopped)}.board-card img{width:100%;border-radius:6px;display:block}.board-card audio{width:100%;height:34px}.btn-recording{background:var(--stopped);border-color:transparent;color:#fff;animation:rec-pulse 1.6s ease-in-out infinite}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.75}}.ring-caption{fill:var(--muted);font-size:10px;font-style:italic}.loop-svg{width:100%;height:auto}.loop-arc{stroke:var(--muted);stroke-width:1.5;opacity:.55;fill:none}.loop-stage{fill:var(--surface-2);stroke:var(--border);stroke-width:1.5}.loop-stage-current{fill:var(--accent);stroke:var(--accent)}.loop-stage-label{fill:var(--text);font-size:10px;font-weight:600}.loop-stage-here{fill:var(--accent-text);font-size:12px}.timeline{list-style:none;padding:0;margin:.5rem 0;border-left:2px solid var(--border)}.timeline-item{padding:.5rem 0 .75rem 1rem;position:relative}.timeline-item:before{content:"";position:absolute;left:-7px;top:.85rem;width:10px;height:10px;border-radius:50%;background:var(--accent)}.timeline-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.timeline-time{font-size:.82rem}.timeline-rationale{margin:.35rem 0 0;color:var(--muted)}.field{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0}.field>span{font-weight:600;font-size:.9rem}.field-inline{flex-direction:row;align-items:center;gap:.5rem}.req{color:var(--muted);font-weight:500}.field input,.field textarea,.field select,.field-inline select{font:inherit;padding:.5rem .6rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);width:100%}.field-inline select{width:auto}.field textarea{resize:vertical}.inline-add{margin:.4rem 0}.modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:flex-start;justify-content:center;padding:5vh 1rem;z-index:50;overflow-y:auto}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-width:520px;padding:1.25rem 1.5rem 1.5rem}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-head h2{margin:0;font-size:1.2rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.25rem;flex-wrap:wrap}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:color-mix(in srgb,var(--text) 8%,transparent);padding:.1em .35em;border-radius:4px}.connect-agent{border:1px solid var(--line);border-radius:10px;padding:.85rem 1rem;background:color-mix(in srgb,var(--panel) 92%,transparent)}.connect-agent-head{display:flex;gap:.75rem;align-items:flex-start}.connect-agent-head h3{margin:0 0 .15rem;font-size:.95rem}.connect-agent-head p{margin:0;font-size:.85rem}.connect-agent-head>button{margin-left:auto;flex:none}.connect-agent-mark{color:var(--accent, #8b7bf7);font-size:1rem;line-height:1.4}.connect-agent-body{margin-top:.85rem;display:flex;flex-direction:column;gap:.6rem}.connect-agent-field{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.connect-agent-field code{font-size:.8rem;padding:.2rem .4rem;border-radius:5px;background:var(--code-bg, rgba(127, 127, 127, .12));word-break:break-all}.connect-agent-config{margin:0;padding:.7rem .85rem;border-radius:8px;background:var(--code-bg, rgba(127, 127, 127, .12));font-size:.78rem;line-height:1.45;overflow-x:auto}.connect-agent-boundary{border-top:1px solid var(--line);padding-top:.6rem}.agent-nudge{display:flex;flex-direction:column;gap:.7rem;margin:.9rem 0}.agent-nudge>p{margin:0;font-size:.88rem;color:var(--muted)}.agent-nudge strong{color:var(--text)}
