.running-indicator{color:var(--evolve-purple-3);white-space:nowrap;background:#9b6bf424;border-radius:999px;align-items:center;gap:6px;margin-left:6px;padding:3px 10px;font-size:10px;font-weight:600;animation:1.6s ease-in-out infinite running-indicator-breath;display:inline-flex}.running-indicator-dot{background:var(--evolve-purple-3);border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite running-indicator-dot-pulse}@keyframes running-indicator-breath{0%,to{opacity:.55}50%{opacity:1}}@keyframes running-indicator-dot-pulse{0%,to{opacity:.7;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.running-indicator,.running-indicator-dot{animation:none}}.react-flow{direction:ltr}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab;position:absolute}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:-webkit-grab;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background:#1a192b;border:1px solid #fff;border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-top{top:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{top:50%;right:-4px;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{background:#ffffff80;margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{color:#222;text-align:center;background-color:#fff;border:1px solid #1a192b;border-radius:3px;width:150px;padding:10px;font-size:12px}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-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}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;width:4px;height:4px;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.legacy-taxonomy-badge{font-size:11px;font-weight:500;font-family:var(--font-sans);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border:1px solid var(--warn-border,#b8791b59);background:var(--warn-bg,var(--warn-soft,#b8791b1a));color:var(--warn-text,var(--warn,#b8791b));border-radius:999px;align-items:center;gap:4px;padding:2px 8px;line-height:1.4;display:inline-flex}.repo-count-chip{font-size:11px;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:1px solid var(--border);color:var(--text-dim);background:#ffffff0a;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;line-height:1.4;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.repo-count-chip:hover{border-color:var(--border-strong);color:var(--text)}.repo-count-chip:focus-visible{outline:2px solid var(--evolve-purple-2);outline-offset:2px}.repo-count-chip__icon{color:currentColor;opacity:.85;align-items:center;display:inline-flex}.repo-count-chip__label{white-space:nowrap}.repo-count-chip--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.repo-count-chip--warn:hover{border-color:var(--warn);color:var(--warn)}.repo-count-chip--info{color:var(--evolve-purple-3);background:#9b6bf41a;border-color:#9b6bf44d}.repo-count-chip--info:hover{border-color:var(--evolve-purple-2);color:var(--evolve-purple-3)}.rex-modal.dialog{flex-direction:column;width:640px;max-width:calc(100vw - 32px);padding:0;display:flex;overflow:hidden}.rex-modal__scroll{max-height:calc(88vh - 80px);overflow-y:auto}.rex-modal__section{border-top:1px solid var(--border);padding:16px 24px}.rex-modal__section:first-child{border-top:none}.rex-modal__header{padding:20px 24px 16px}.rex-modal__title{letter-spacing:-.01em;color:var(--text);margin:0;font-size:18px;font-weight:600}.rex-modal__subtitle{color:var(--text-dim);margin:6px 0 0;font-size:13px}.rex-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rex-metrics--expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.rex-metric{background:var(--midnight-2);border:1px solid var(--border);border-radius:var(--r-sm);text-align:center;padding:10px 12px}.rex-metric__value{color:var(--text);font-size:20px;font-weight:600;line-height:1.2}.rex-metric__label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:11px}.rex-metrics__toggle{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;margin-top:10px;padding:4px 8px;font-size:12px;font-weight:500}.rex-metrics__toggle:hover:not(:disabled){color:var(--text);background:var(--midnight-2)}.rex-metrics__toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.rex-preserve{border:none;margin:0;padding:0}.rex-preserve__legend{color:var(--text);margin-bottom:8px;padding:0;font-size:13px;font-weight:600}.rex-preserve__row{color:var(--text);cursor:pointer;align-items:flex-start;gap:8px;padding:6px 0;font-size:13px;display:flex}.rex-preserve__row input[type=checkbox]{width:auto;accent-color:var(--evolve-purple-2,var(--purple-3));margin-top:3px}.rex-preserve__row input[type=checkbox]:focus-visible{box-shadow:var(--focus-ring);border-radius:3px;outline:none}.rex-label{color:var(--text);font-size:13px;display:block}.rex-label__caption{color:var(--text-dim);margin-bottom:6px;font-size:12px;display:block}.rex-label input[type=text]:focus-visible{box-shadow:var(--focus-ring);outline:none}.rex-warn{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-text);border-radius:var(--r-sm);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.rex-warn__icon{flex:none;font-size:16px;line-height:1.2}.rex-warn__body{flex:auto}.rex-error{background:var(--err-soft);border:1px solid var(--err);color:var(--err);border-radius:var(--r-sm);margin:0;padding:10px 12px;font-size:13px}.rex-modal__actions{border-top:1px solid var(--border);background:var(--midnight-1);justify-content:flex-end;gap:8px;padding:14px 24px;display:flex}.rex-modal__actions button:focus-visible{box-shadow:var(--focus-ring);outline:none}.rex-loading{flex-direction:column;gap:10px;display:flex}.rex-loading__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rex-current{color:var(--text-dim);margin:0;font-size:13px}.rex-current strong{color:var(--text)}.backend-chip{font-size:11px;font-weight:500;font-family:var(--font-sans);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;background:#ffffff0a;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;line-height:1.4;display:inline-flex}.backend-chip--graphify{background:var(--ok-soft,#2f9e5b1a);color:var(--ok,#2f9e5b);border-color:#2f9e5b59}.backend-chip--fallback{background:var(--warn-bg,var(--warn-soft,#b8791b1a));border-color:var(--warn-border,#b8791b59);color:var(--warn-text,var(--warn,#b8791b))}.lpt{background:#ffffff05;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;gap:14px;margin-top:18px;padding:16px;display:flex}.lpt-top{flex-direction:column;gap:8px;display:flex}.lpt-top-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.lpt-top-main{align-items:center;gap:8px;font-size:15px;display:flex}.lpt-top-stage{color:var(--evolve-purple-3,#d0a7ff);font-weight:600}.lpt-top-verb{color:var(--text-dim,#ffffff8c);font-size:13px}.lpt-top-meta{color:var(--text-dim);align-items:center;gap:12px;font-size:12px;display:flex}.lpt-cancel-btn{color:#fecaca;cursor:pointer;background:#f8717114;border:1px solid #f8717159;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:500;transition:background .15s,border-color .15s}.lpt-cancel-btn:hover:not(:disabled){background:#f871712e;border-color:#f871718c}.lpt-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.lpt-pulse-dot{background:var(--evolve-purple-2,#9b6bf4);border-radius:999px;width:8px;height:8px;animation:1.6s ease-in-out infinite lpt-pulse;display:inline-block}@keyframes lpt-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.lpt-bar{background:#ffffff0f;border-radius:999px;height:10px;position:relative;overflow:hidden}.lpt-bar-fill{background:linear-gradient(90deg, var(--evolve-purple,#7030a0), var(--evolve-purple-2,#9b6bf4));border-radius:999px;height:100%;transition:width .6s;box-shadow:0 0 8px #9b6bf459}.lpt-bar-label{color:#ffffffbf;text-shadow:0 0 3px #00000080;font-size:10px;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.lpt-gantt{grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.lpt-gantt-cell{height:36px;color:var(--text-dim);cursor:pointer;text-align:left;background:#ffffff0d;border:1px solid #0000;border-radius:4px;align-items:center;padding:0 6px;font-size:10px;font-weight:500;display:flex;position:relative;overflow:hidden}.lpt-gantt-cell:hover{border-color:#ffffff26}.lpt-gantt-fill{background:#9b6bf426;transition:width .6s;position:absolute;inset:0 auto 0 0}.lpt-gantt-lbl{z-index:1;white-space:nowrap;text-overflow:ellipsis;position:relative;overflow:hidden}.lpt-gantt-cell--pending{color:#ffffff59}.lpt-gantt-cell--running{color:var(--evolve-purple-3,#d0a7ff);background:#7030a040;border-color:#9b6bf480;animation:1.8s ease-in-out infinite lpt-cell-pulse}.lpt-gantt-cell--running .lpt-gantt-fill{background:#9b6bf459}@keyframes lpt-cell-pulse{0%,to{box-shadow:0 0 #9b6bf459}50%{box-shadow:0 0 0 3px #9b6bf41f}}.lpt-gantt-cell--complete{color:#a7f3d0;background:#4ade801f;border-color:#4ade804d}.lpt-gantt-cell--complete .lpt-gantt-fill{background:#4ade802e;width:100%}.lpt-gantt-cell--skipped{color:#ffffff73;background:#ffffff0a;border-style:dashed;border-color:#ffffff26}.lpt-gantt-cell--failed{color:#fecaca;background:#f8717126;border-color:#f8717173}.lpt-gantt-cell--cancelled{color:#fff6;background:#ffffff0f}.lpt-cost{color:var(--text-dim);align-items:baseline;gap:8px;font-size:13px;display:flex}.lpt-cost-price{color:#ffffffe6;font-size:15px;font-weight:600}.lpt-cost-tokens{color:#ffffffa6}.lpt-cost-sep{opacity:.4}.lpt-cost-models{color:var(--evolve-purple-3,#d0a7ff);font-family:var(--font-mono,ui-monospace, monospace);font-size:12px}.lpt-chips{flex-wrap:wrap;gap:6px;display:flex}.lpt-chip{color:var(--text-dim);cursor:default;background:#ffffff0d;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;display:inline-flex}.lpt-chip strong{color:#ffffffe6;font-variant-numeric:tabular-nums;font-weight:600}.lpt-chip-dim{opacity:.55}.lpt-chip-warn{color:#fde68a;cursor:pointer;background:#fbbf241f;border-color:#fbbf2466}button.lpt-chip{cursor:pointer}button.lpt-chip:hover{background:#ffffff14}.lpt-drawer-chips{flex-wrap:wrap;gap:8px;display:flex}.lpt-recent{border-top:1px dashed #ffffff14;padding-top:10px}.lpt-recent-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin-bottom:4px;font-size:11px}.lpt-recent-list{flex-direction:column;gap:2px;max-height:160px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.lpt-recent-item{font-family:var(--font-mono,ui-monospace, monospace);color:#ffffffb3;white-space:nowrap;text-overflow:ellipsis;border-radius:3px;padding:2px 6px;font-size:11px;overflow:hidden}.lpt-recent-item:first-child{color:var(--evolve-purple-3,#d0a7ff)}.lpt-spark{color:var(--text-dim);align-items:center;gap:8px;font-size:11px;display:flex}.lpt-spark svg{display:block}.lpt-drawer-backdrop{z-index:1500;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lpt-drawer{background:var(--midnight-1,#1a1626);border:1px solid #ffffff1a;border-radius:10px;min-width:380px;max-width:720px;max-height:80vh;padding:18px;overflow-y:auto;box-shadow:0 12px 32px #0000008c}.lpt-drawer-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.lpt-drawer-header h3{margin:0;font-size:15px}.lpt-drawer-body{color:var(--text,#ffffffd9);font-size:13px}.lpt-drawer-kv{grid-template-columns:max-content 1fr;gap:4px 12px;margin-bottom:12px;display:grid}.lpt-drawer-kv>div{display:contents}.lpt-drawer-kv span{color:var(--text-dim);font-size:11px}.lpt-drawer-kv strong{font-weight:500}.lpt-drawer-kv .lpt-err{color:#fecaca}.lpt-drawer-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin:8px 0 4px;font-size:11px}.lpt-drawer-json{font-family:var(--font-mono,ui-monospace, monospace);color:#ffffffbf;background:#00000059;border-radius:6px;max-height:260px;padding:8px;font-size:11px;overflow:auto}.lpt-drawer-list{flex-direction:column;gap:4px;margin:0;padding-left:20px;list-style:outside;display:flex}.lpt-timeline{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.lpt-timeline-row{border-left:2px solid #ffffff1a;gap:10px;padding:3px 6px;font-size:12px;display:flex}.lpt-timeline-row--stage_begin{border-left-color:var(--evolve-purple-2,#9b6bf4)}.lpt-timeline-row--stage_end{border-left-color:#4ade8080}.lpt-timeline-row--milestone{color:var(--text-dim);border-left-color:#fbbf2480}.lpt-timeline-time{font-family:var(--font-mono,ui-monospace, monospace);color:var(--text-dim);min-width:78px}.lpt-delta{border-top:1px dashed #ffffff1a;flex-direction:column;gap:6px;padding-top:12px;display:flex}.lpt-delta-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-size:11px}.lpt-delta-chips{flex-wrap:wrap;gap:6px;display:flex}.lpt-delta-pos strong,.lpt-delta-chip.lpt-delta-pos{color:#a7f3d0;border-color:#4ade8059}.lpt-delta-neg strong,.lpt-delta-chip.lpt-delta-neg{color:#fecaca;border-color:#f8717159}.lpt-anomaly{color:#fde68a;background:#fbbf241f;border:1px solid #fbbf2466;border-radius:6px;padding:8px 12px;font-size:12px}.lpt-stagecost{flex-direction:column;gap:10px;display:flex}.lpt-stagecost-row{grid-template-columns:150px 1fr 64px;align-items:center;gap:10px;display:grid}.lpt-stagecost-label{color:var(--text-mute,#9aa0ad);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.lpt-stagecost-track{background:#ffffff12;border-radius:4px;height:8px;overflow:hidden}.lpt-stagecost-fill{background:var(--evolve-purple-2,#7030a0);border-radius:4px;min-width:2px;height:100%}.lpt-stagecost-value{color:var(--text,#f3f0ff);text-align:right;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.lpt-stagecost-foot{color:var(--text-mute,#9aa0ad);margin-top:6px;font-size:11px;line-height:1.5}.cache-stats-panel{border:1px solid var(--border,#333);font-family:var(--font-sans);background:#2f9e5b0a;border-radius:8px;margin-top:12px;padding:12px 14px}.cache-stats-panel__header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.cache-stats-panel__title{color:var(--text,#d0d0d0);font-size:13px;font-weight:600}.cache-stats-panel__subtitle{color:var(--text-dim);font-size:11px}.cache-stats-panel__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cache-stats-panel__metric{flex-direction:column;gap:2px;display:flex}.cache-stats-panel__metric-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.cache-stats-panel__metric-value{color:var(--text,#d0d0d0);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.cache-stats-panel__metric-detail{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11px}.cache-stats-panel__metric-value--saved{color:var(--ok,#2f9e5b)}.cache-stats-panel__empty{color:var(--text-dim);font-size:12px;font-style:italic}.repo-extraction-strip{border:1px solid var(--border);border-radius:var(--r-md);background:var(--midnight-1,#ffffff05);margin-bottom:14px;padding:12px 14px}.repo-extraction-strip__header{align-items:center;gap:8px;margin-bottom:10px;display:flex}.repo-extraction-strip__toggle{cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.repo-extraction-strip__chevron{color:var(--text-mute);width:10px;font-size:11px}.repo-extraction-strip__title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:500}.repo-extraction-strip__count{color:var(--text-mute);font-size:11px}.repo-extraction-strip__spacer{flex:1}.repo-extraction-strip__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.repo-extraction-strip__row{border-radius:var(--r-sm);border:1px solid var(--border);background:#ffffff05;align-items:center;gap:12px;padding:8px 10px;font-size:12px;display:flex}.repo-extraction-strip__row--new{background:var(--warn-bg);border-color:var(--warn-border)}.repo-extraction-strip__status{text-align:center;flex:none;min-width:140px}.repo-extraction-strip__meta{flex-wrap:wrap;flex:1;align-items:baseline;gap:10px;min-width:0;display:flex}.repo-extraction-strip__label{color:var(--text);font-weight:500;font-family:var(--font-mono)}.repo-extraction-strip__source{color:var(--text-dim);font-family:var(--font-mono);overflow-wrap:anywhere;word-break:break-word;min-width:0;font-size:11px}.repo-extraction-strip__added{color:var(--warn-text);font-size:11px}.repo-extraction-strip__cta{flex:none;padding:6px 12px;font-size:12px}.extraction-settings-dialog{width:100%;max-width:480px}.extraction-settings-body{flex-direction:column;gap:16px;padding:16px;display:flex}.extraction-settings-loading,.extraction-settings-error{text-align:center;color:var(--text-dim);padding:24px}.extraction-settings-error{color:var(--danger,#ef4444)}.extraction-depth-fieldset{border:none;margin:0;padding:0}.extraction-depth-fieldset legend{color:var(--text-primary,#e0e0e0);margin-bottom:8px;font-size:13px;font-weight:600}.extraction-depth-options{flex-direction:column;gap:6px;display:flex}.extraction-depth-option{border-radius:var(--r-md,8px);border:1px solid var(--border,#ffffff14);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.extraction-depth-option:hover{border-color:var(--border-strong,#ffffff29);background:var(--midnight-2,#ffffff08)}.extraction-depth-option.selected{border-color:var(--accent,#3b82f6);background:var(--accent-faint,#3b82f614)}.extraction-depth-option input[type=radio]{accent-color:var(--accent,#3b82f6);margin-top:2px}.extraction-depth-option-content{flex-direction:column;gap:2px;display:flex}.extraction-depth-option-label{color:var(--text-primary,#e0e0e0);font-size:13px;font-weight:500}.extraction-depth-option-desc{color:var(--text-dim,#888);font-size:12px;line-height:1.4}.extraction-depth-warning{border-radius:var(--r-md,8px);background:var(--warning-bg,#f59e0b1a);border:1px solid var(--warning-border,#f59e0b4d);color:var(--text-primary,#e0e0e0);padding:10px 12px;font-size:12px;line-height:1.5}.extraction-depth-warning a{color:var(--accent,#3b82f6);text-decoration:underline}.extraction-graphify-section{border-top:1px solid var(--border,#ffffff14);padding-top:8px}.extraction-graphify-toggle{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.extraction-graphify-toggle input[type=checkbox]{accent-color:var(--accent,#3b82f6)}.extraction-graphify-label{color:var(--text-primary,#e0e0e0)}.extraction-graphify-hint{color:var(--text-dim,#888);margin:4px 0 0 24px;font-size:11px;line-height:1.4}.extraction-settings-note{color:var(--text-dim,#888);margin:0;font-size:11px;line-height:1.4}.extraction-ignore-fieldset{border:1px solid var(--border,#333);border-radius:6px;margin:0;padding:12px}.extraction-ignore-fieldset legend{color:var(--text-primary,#e0e0e0);padding:0 6px;font-size:12px;font-weight:600}.extraction-ignore-intro{color:var(--text-dim,#888);margin:0 0 10px;font-size:11px;line-height:1.4}.extraction-ignore-toggle{color:var(--text-primary,#e0e0e0);cursor:pointer;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.extraction-ignore-field{margin:10px 0 0;display:block}.extraction-ignore-label{color:var(--text-primary,#e0e0e0);margin-bottom:4px;font-size:12px;display:block}.extraction-ignore-textarea{box-sizing:border-box;width:100%;font-family:var(--font-mono,monospace);background:var(--bg-input,#1a1a1a);color:var(--text-primary,#e0e0e0);border:1px solid var(--border,#333);resize:vertical;border-radius:4px;padding:6px 8px;font-size:12px}.extraction-ignore-preview{color:var(--text-dim,#888);margin-top:10px;font-size:11px}.extraction-ignore-preview summary{cursor:pointer;-webkit-user-select:none;user-select:none}.extraction-ignore-chips{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.extraction-ignore-chip{font-family:var(--font-mono,monospace);background:var(--bg-chip,#262626);color:var(--text-secondary,#bbb);border:1px solid var(--border,#333);border-radius:3px;padding:1px 6px;font-size:11px}.rf-panel{margin:16px 0}.rf-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;padding-bottom:14px;display:flex}.rf-title{margin:0 0 4px;font-size:16px}.rf-sub,.rf-hint{color:var(--text-dim);margin:0;font-size:13px}.rf-section{margin-top:18px}.rf-section-title{align-items:baseline;gap:8px;margin:0 0 4px;font-size:14px;display:flex}.rf-count{color:var(--text-mute);font-size:12px;font-weight:400}.rf-hint{margin-bottom:10px}.rf-empty{color:var(--text-mute);padding:8px 0;font-size:13px;font-style:italic}.rf-file-list{border:1px solid var(--border);border-radius:var(--r-sm,6px);background:#ffffff05;flex-direction:column;gap:2px;max-height:340px;margin:0;padding:6px;list-style:none;display:flex;overflow-y:auto}.rf-toggle{cursor:pointer;border-radius:var(--r-sm,6px);grid-template-columns:4fr 1fr;align-items:center;gap:10px;padding:4px 8px;display:grid}.rf-file-main{flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0;display:flex}.rf-toggle:hover{background:#7030a00f}.rf-file-path{min-width:0;font-family:var(--mono,monospace);color:var(--text);overflow-wrap:anywhere;word-break:break-word;flex:auto;font-size:13px}.rf-file-bytes{color:var(--text-mute);white-space:nowrap;font-size:12px}.rf-toggle input[type=checkbox]{place-self:center start}.rf-table{margin-top:8px}.rf-table td{vertical-align:middle}.rf-table tr.rf-excluded td{opacity:.45}.rf-input{background:var(--input-bg,#ffffff0a);border:1px solid var(--border);border-radius:var(--r-sm,6px);width:100%;color:var(--text);padding:4px 6px;font-size:13px}.rf-input.rf-path,.rf-path{font-family:var(--mono,monospace)}.rf-table select,.rf-add-row select{background:var(--input-bg,#ffffff0a);border:1px solid var(--border);border-radius:var(--r-sm,6px);color:var(--text);padding:4px 6px;font-size:13px}.rf-del{margin-left:6px}.rf-add-row{align-items:center;gap:8px;margin-top:10px;display:flex}.rf-add-row .rf-input.rf-path{flex:2}.rf-add-row .rf-input{flex:1}.rf-footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:20px;padding-top:14px;display:flex}.proposal-status-pill-wrap{display:inline-flex;position:relative}.proposal-status-pill{letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--border-strong);color:var(--text-dim);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.proposal-status-pill--interactive{cursor:pointer;font-family:inherit;transition:filter .12s,box-shadow .12s}.proposal-status-pill--interactive:hover:not(:disabled){filter:brightness(1.08)}.proposal-status-pill--interactive:focus-visible{outline:none;box-shadow:0 0 0 3px #9b6bf440}.proposal-status-pill--interactive:disabled{cursor:not-allowed;opacity:.7}.proposal-status-pill__caret{opacity:.75;font-size:10px;line-height:1}.proposal-status-pill--draft{border-color:var(--border-strong);color:var(--text-dim);background:#94a3b81f}.proposal-status-pill--internal_review{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.proposal-status-pill--sent{color:var(--info,var(--evolve-purple-3));background:#2b6cb024;border-color:#2b6cb066}.proposal-status-pill--signed{color:var(--ok);background:#34d0a21f;border-color:#34d0a266}.proposal-status-pill__menu{z-index:50;background:var(--midnight-1,var(--bg-panel));border:1px solid var(--border-strong);border-radius:8px;flex-direction:column;gap:2px;min-width:180px;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 24px -8px #0006}.proposal-status-pill__menu-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-family:inherit;font-size:12px;display:block}.proposal-status-pill__menu-item:hover{background:#9b6bf41f}.proposal-status-pill__menu-item--back{color:var(--text-dim)}.proposal-status-pill__menu-sep{background:var(--border);height:1px;margin:4px 2px}.proposal-page{flex-direction:column;gap:24px;display:flex}.proposal-panel{border:1px solid var(--border);background:#ffffff05;border-radius:10px;padding:16px}.proposal-panel-head{align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.proposal-panel-head h3,.proposal-panel-head h4{margin:0}.proposal-panel-head .sub{color:var(--text-dim);font-size:12px}.proposal-panel-head .spacer{flex:1}.proposal-table-wrap{overflow-x:auto}.proposal-table{border-collapse:collapse;width:100%}.proposal-table th,.proposal-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 10px}.proposal-table th{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:500}.proposal-table tbody tr{cursor:pointer;transition:background .12s}.proposal-table tbody tr:hover{background:#ffffff08}.proposal-table tbody tr.is-selected{background:#9b6bf414}.proposal-form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=700px){.proposal-form-grid{grid-template-columns:1fr}}.proposal-form-grid label{color:var(--text-dim);flex-direction:column;gap:4px;font-size:12px;display:flex}.proposal-radio-row{gap:16px;padding-top:4px;display:flex}.proposal-radio{color:var(--text);cursor:pointer;align-items:center;font-size:13px;flex-direction:row!important;gap:6px!important;display:inline-flex!important}.proposal-radio input[type=radio]{width:auto}.proposal-subsection{border-top:1px dashed var(--border);margin-top:20px;padding-top:16px}.proposal-dash{color:var(--text-mute);cursor:help}.proposal-warn-banner{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-text);border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:13px;display:flex}.proposal-warn-banner ul{margin:0;padding-left:18px}.proposal-warn-icon{font-size:16px;line-height:1}.proposal-error-banner{background:var(--err-soft);color:var(--err);border:1px solid #f8717166;border-radius:6px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:13px;display:flex}.proposal-loading{color:var(--text-dim);align-items:center;gap:12px;padding:14px 16px;font-size:13px;display:flex}.proposal-spinner{border:2px solid var(--border-strong);border-top-color:var(--evolve-purple-2,var(--purple-3));border-radius:50%;width:14px;height:14px;animation:.8s linear infinite proposal-spin;display:inline-block}@keyframes proposal-spin{to{transform:rotate(360deg)}}.proposal-preview{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.proposal-preview-actions{justify-content:flex-end;gap:8px;margin-bottom:12px;display:flex}.proposal-preview-body{border:1px solid var(--border);background:#ffffff05;border-radius:8px;max-height:640px;padding:20px 24px;overflow-y:auto}.proposal-preview-body img{max-width:100%;height:auto}.proposal-preview-footer{color:var(--text-mute);text-align:right;margin-top:10px;font-size:11px}.proposal-dialog-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}@media print{html,body{color:#000!important;background:#fff!important}.top-bar,.project-rail,.tabs,.dialog-backdrop,.drawer-backdrop,.no-print,.page-header,[data-testid=proposal-list-panel],[data-testid=proposal-detail-panel]{display:none!important}.proposal-generate-panel,[data-testid=proposal-generate-panel],.proposal-panel{background:0 0!important;border:none!important;margin:0!important;padding:0!important}.proposal-preview{border-top:none!important;margin:0!important;padding:0!important}.proposal-preview-body{color:#000!important;background:0 0!important;border:none!important;max-height:none!important;padding:0!important;overflow:visible!important}.proposal-preview-body,.md-view{font-size:11pt;line-height:1.55;color:#000!important}.proposal-preview-body h1,.md-view h1{font-size:18pt}.proposal-preview-body h2,.md-view h2{page-break-before:always;margin-top:0;font-size:14pt}.proposal-preview-body h2:first-child,.md-view h2:first-child{page-break-before:auto}.proposal-preview-body h3,.md-view h3{font-size:12pt}.proposal-preview-body img,.md-view img{page-break-inside:avoid;max-width:100%!important;height:auto!important}.proposal-preview-body table,.md-view table{border-collapse:collapse;width:100%}.proposal-preview-body th,.proposal-preview-body td,.md-view th,.md-view td{border:1px solid #000;padding:4px 6px;color:#000!important}a{text-decoration:underline;color:#000!important}}:root{--purple-1:#f4ecfa;--purple-2:#d9c1ea;--purple-3:#a86ed0;--purple-4:#7030a0;--purple-5:#4a1e70;--ink-1:#0f1420;--ink-2:#2b3145;--ink-3:#4a5069;--ink-4:#6f7690;--ink-5:#9aa0b8;--line:#e6e8ef;--line-soft:#f0f2f7;--bg-app:#f7f8fb;--bg-panel:#fff;--bg-hover:#f2effa;--bg-active:#ece0f7;--ok:#34d0a2;--ok-soft:#e6f4ec;--warn:#f2b64a;--warn-soft:#fbf1de;--err:#f87171;--err-soft:#f871711a;--info:#2b6cb0;--info-soft:#e1ecf7;--warn-bg:#f2b64a1a;--warn-border:#f2b64a66;--warn-text:#f2b64a;--radius:8px;--radius-lg:12px;--shadow-1:0 1px 2px #0f14200a, 0 1px 3px #0f14200f;--shadow-2:0 4px 12px #0f142014;--shadow-3:0 20px 40px #0f142033;--focus-ring:0 0 0 2px var(--bg-app), 0 0 0 4px var(--purple-3);--row-pad-y:12px;--row-pad-x:16px;--row-pad-y-sm:8px;--row-pad-x-sm:12px;--evolve-purple:#7030a0;--evolve-purple-2:#9b6bf4;--evolve-purple-3:#b091ff;--evolve-pink:#f05aae;--evolve-pink-2:#ff7bc4;--midnight-0:#070812;--midnight-1:#0f1122;--midnight-2:#1b1836;--midnight-3:#24213f;--text:#f3f0ff;--text-dim:#a9a4c9;--text-mute:#6f6a8c;--border:#ffffff14;--border-strong:#ffffff29;--origin-original-bg:#7030a038;--origin-original-fg:#b091ff;--origin-original-bd:#9b6bf473;--origin-modified-bg:#f2b64a24;--origin-modified-fg:#f2b64a;--origin-modified-bd:#f2b64a66;--origin-added-bg:#10b98124;--origin-added-fg:#34d0a2;--origin-added-bd:#10b98166;--origin-deleted-bg:#94a3b81f;--origin-deleted-fg:#cbd5e1;--origin-deleted-bd:#94a3b859;--accent:var(--evolve-purple-2);--accent-strong:var(--evolve-purple);--danger-bg:#c62828;--danger-bg-hover:#b71c1c;--danger-fg:#fff;--r-sm:8px;--r-md:12px;--r-lg:16px;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--glow-purple:0 8px 24px -8px #7030a08c, 0 2px 8px -2px #9b6bf459;--glow-purple-strong:0 12px 32px -8px #7030a0bf, 0 4px 14px -2px #9b6bf48c}:root[data-theme=light]{--midnight-0:#f6f7ff;--midnight-1:#fff;--midnight-2:#efeaff;--midnight-3:#dfd7f5;--text:#16112b;--text-dim:#4b426d;--text-mute:#7d76a0;--border:#0f112214;--border-strong:#0f112229;--warn-bg:#fbf1de;--warn-border:#b8791b59;--warn-text:#7a4a0a;--danger-bg:#c62828;--danger-bg-hover:#a51d1d;--danger-fg:#fff}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--midnight-0);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01" on, "ss02" on;font-size:16px;line-height:1.5}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(1200px 700px at 12% -10%, #7030a061, transparent 60%), radial-gradient(900px 600px at 92% 8%, #f05aae24, transparent 55%), radial-gradient(1400px 900px at 60% 110%, #1b1836e6, transparent 60%), linear-gradient(180deg, var(--midnight-0) 0%, #05060f 100%);position:fixed;inset:0}a{color:var(--evolve-purple-3);text-decoration:none}a:hover{color:#d6c6ff;text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.01em;margin:0 0 8px;font-weight:600}button{color:var(--text);border:1px solid var(--border);cursor:pointer;letter-spacing:-.005em;background:#ffffff0a;border-radius:10px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,box-shadow .16s,transform 50ms}button:hover:not(:disabled){border-color:var(--border-strong);background:#ffffff14}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:linear-gradient(135deg, var(--evolve-purple) 0%, var(--evolve-purple-2) 100%);color:#fff;box-shadow:var(--glow-purple);border:1px solid #ffffff2e;font-weight:600}button.primary:hover:not(:disabled){box-shadow:var(--glow-purple-strong);background:linear-gradient(135deg,#7f39b6 0%,#a97cff 100%);border-color:#ffffff47}button.danger{color:var(--err);background:0 0;border-color:#f8717166}button.danger:hover:not(:disabled){border-color:var(--err);background:#f8717114}.btn-danger{background:var(--danger-bg);border:1px solid var(--danger-bg);color:var(--danger-fg);font-weight:600}.btn-danger:hover:not(:disabled){background:var(--danger-bg-hover);border-color:var(--danger-bg-hover);color:var(--danger-fg)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-danger:focus-visible{box-shadow:var(--focus-ring);outline:none}button.ghost{background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:#ffffff0d}input,textarea,select{color:var(--text);border:1px solid var(--border);background:#ffffff08;border-radius:10px;width:100%;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .12s,box-shadow .12s,background .12s}textarea{resize:vertical;min-height:60px;font-family:var(--font-mono);font-size:12px}input:focus,textarea:focus,select:focus{border-color:var(--evolve-purple-2);background:#ffffff0d;outline:none;box-shadow:0 0 0 3px #9b6bf433}input::placeholder,textarea::placeholder{color:var(--text-mute)}.app{flex-direction:column;height:100%;display:flex}.topbar{-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);z-index:10;background:#0f1122bf;align-items:center;gap:20px;padding:14px 24px;display:flex;position:sticky;top:0}.topbar .brand{color:var(--text);align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex;text-decoration:none!important}.topbar .brand .logo{border-radius:8px;flex-shrink:0;width:32px;height:32px;display:block;box-shadow:0 4px 14px -4px #7030a099}.topbar .brand .wordmark{letter-spacing:-.01em;align-items:baseline;gap:8px;display:flex}.topbar .brand .wordmark .v{font-weight:700}.topbar .brand .wordmark .dot{color:var(--evolve-purple-3);margin:0 2px}.topbar .brand .wordmark .sub{color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:400}.topbar .spacer{flex:1}.topbar .status{color:var(--text-dim);border:1px solid var(--border);white-space:nowrap;background:#ffffff08;border-radius:999px;padding:6px 10px;font-size:12px}.topbar .status.err{color:#fecaca;background:#f8717114;border-color:#f8717166}.topbar nav a{color:var(--text-dim);border-radius:8px;padding:6px 10px;font-size:13px;font-weight:500;transition:color .12s,background .12s}.topbar nav a:hover{color:var(--text);background:#ffffff0a;text-decoration:none}.topbar nav a.active{color:var(--evolve-purple-3);background:#9b6bf41f}.gh-pill{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#ffffff08;border-radius:999px;align-items:center;gap:8px;padding:5px 10px 5px 6px;font-size:12px;transition:border-color .12s,background .12s;display:inline-flex}.gh-pill:hover{border-color:var(--border-strong);background:#ffffff0f}.gh-pill.disconnected{padding:6px 12px}.gh-pill .avatar{background:var(--midnight-2);border-radius:999px;width:22px;height:22px;display:block}.gh-pill .login{font-weight:500}.gh-menu{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-md);z-index:20;min-width:220px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 20px 40px -20px #000c}.gh-menu .item{cursor:pointer;color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.gh-menu .item:hover{background:#ffffff0f}.gh-menu .item.danger{color:var(--err)}.gh-menu .header{border-bottom:1px solid var(--border);color:var(--text-dim);margin-bottom:4px;padding:8px 10px;font-size:12px}.container{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:28px 32px;overflow:auto}.card{border:1px solid var(--border);border-radius:var(--r-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#1b183699 0%,#0f112299 100%);margin-bottom:14px;padding:20px}.card h3{margin-bottom:8px}.table{border-collapse:collapse;width:100%;font-size:13px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:12px 14px}.table th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;background:#ffffff05;font-size:11px;font-weight:500}.table tr:hover td{background:#9b6bf40f}.table tr{cursor:pointer}.table tr:last-child td{border-bottom:none}.badge{letter-spacing:.01em;border-radius:999px;margin-right:4px;padding:3px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-block}.badge.deleted{background:var(--origin-deleted-bg);color:var(--origin-deleted-fg);border:1px solid var(--origin-deleted-bd);text-decoration:line-through}.badge.domain{color:var(--evolve-purple-3);background:#9b6bf41a;border:1px solid #9b6bf44d}.rules-layout{grid-template-columns:280px 1fr;gap:20px;height:100%;display:grid}.sidebar{border:1px solid var(--border);border-radius:var(--r-md);background:linear-gradient(#1b183680 0%,#0f112280 100%);max-height:calc(100vh - 200px);padding:16px;position:sticky;top:88px;overflow-y:auto}.sidebar h4{text-transform:uppercase;color:var(--text-dim);letter-spacing:.1em;margin-top:16px;margin-bottom:8px;font-size:10px;font-weight:600}.sidebar .row{cursor:pointer;color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;padding:6px 8px;font-size:13px;transition:background .1s;display:flex}.sidebar .row:hover{background:#ffffff0a}.sidebar .row.active{color:var(--evolve-purple-3);background:#9b6bf424}.sidebar .count{color:var(--text-mute);font-variant-numeric:tabular-nums;font-size:11px}.sidebar .checkbox{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.sidebar .checkbox:hover{background:#ffffff08}.sidebar .checkbox input{width:auto;accent-color:var(--evolve-purple-2);margin:0}.rule-card{border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;background:linear-gradient(#1b18368c 0%,#0f11228c 100%);margin-bottom:12px;padding:16px 18px;transition:border-color .15s,box-shadow .2s,transform 50ms}.rule-card:hover{border-color:#9b6bf480;box-shadow:0 6px 22px -12px #9b6bf473}.rule-card:active{transform:translateY(1px)}.rule-card .header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.rule-card .rule-id{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.02em;font-size:11px;font-weight:500}.rule-card .title{letter-spacing:-.005em;flex:1;font-size:14px;font-weight:600}.rule-card .field{grid-template-columns:90px 1fr;gap:10px;margin-top:6px;font-size:13px;display:grid}.rule-card .field label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;padding-top:2px;font-size:11px}.rule-card .field .value{color:var(--text);white-space:pre-wrap;word-break:break-word}.rule-card .locs{color:var(--text-mute);font-size:11px;font-family:var(--font-mono);margin-top:10px}.rule-card .locs .loc{margin-right:10px;display:inline-block}.rule-card .confidence{color:var(--text-dim);align-items:center;gap:8px;margin-top:8px;font-size:11px;display:flex}.confidence-bar{background:#ffffff0f;border-radius:2px;flex:1;max-width:140px;height:4px;overflow:hidden}.confidence-bar .fill{background:linear-gradient(to right, var(--err), var(--warn), var(--ok));height:100%}.drawer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#03040ca6;animation:.15s fadeIn;position:fixed;inset:0}.drawer{background:var(--midnight-0);border-left:1px solid var(--border-strong);z-index:51;flex-direction:column;width:760px;max-width:100vw;animation:.2s slideIn;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-30px 0 60px -30px #000000b3}.drawer .drawer-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:2;background:#0f1122d9;align-items:center;gap:10px;padding:16px 22px;display:flex;position:sticky;top:0}.drawer .drawer-header .close{margin-left:auto}.drawer .drawer-body{flex:1;padding:18px 22px}.drawer .drawer-footer{border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f1122d9;gap:8px;padding:14px 22px;display:flex;position:sticky;bottom:0}.drawer .tabs{border-bottom:1px solid var(--border);background:#0f11228c;gap:4px;padding:0 18px;display:flex}.drawer .tab{cursor:pointer;color:var(--text-dim);border-bottom:2px solid #0000;padding:12px 14px;font-size:13px;font-weight:500;transition:color .12s,border-color .12s}.drawer .tab:hover{color:var(--text)}.drawer .tab.active{color:var(--text);border-bottom-color:var(--evolve-purple-2)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes purplePulse{0%,to{box-shadow:0 0 #9b6bf473}50%{box-shadow:0 0 0 8px #9b6bf400}}.field-group{margin-bottom:14px}.field-group label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:11px;font-weight:500;display:block}.progress-panel{border-radius:var(--r-md);font-family:var(--font-mono);background:linear-gradient(#1b1836b3 0%,#0f1122b3 100%);border:1px solid #9b6bf44d;margin-bottom:16px;padding:18px 20px;font-size:12px;position:relative;overflow:hidden}.progress-panel.running:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(120deg,#9b6bf400 30%,#9b6bf48c 50%,#9b6bf400 70%);padding:1px;animation:2.4s linear infinite sweep;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes sweep{0%{background-position:200% 0}to{background-position:-100% 0}}.progress-panel .row{grid-template-columns:160px 1fr;gap:10px;padding:5px 0;display:grid}.progress-panel .row .label{color:var(--text-dim)}.progress-panel .bar{background:#ffffff0f;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.progress-panel .bar .fill{background:linear-gradient(90deg, var(--evolve-purple), var(--evolve-purple-2));height:100%;transition:width .3s;box-shadow:0 0 10px #9b6bf480}.progress-panel .stage{color:var(--evolve-purple-3);background:#9b6bf426;border:1px solid #9b6bf459;border-radius:999px;padding:3px 10px;font-weight:600;display:inline-block}.progress-panel .stage.error{color:var(--err);background:#f871711f;border-color:#f8717166}.progress-panel .stage.done{color:var(--ok);background:#34d0a21f;border-color:#34d0a266}.progress-panel .log{border:1px solid var(--border);max-height:240px;color:var(--text-dim);background:#03040c99;border-radius:8px;margin-top:14px;padding:10px 12px;font-size:11px;line-height:1.55;overflow-y:auto}.progress-panel .pulse-dot{background:var(--evolve-purple-2);border-radius:999px;width:8px;height:8px;margin-right:8px;animation:1.6s ease-in-out infinite purplePulse;display:inline-block}.empty{text-align:center;color:var(--text-dim);border:1px dashed var(--border);border-radius:var(--r-lg);background:#0f112259;padding:80px 24px}.empty h2{color:var(--text);letter-spacing:-.015em;margin-bottom:12px;font-size:24px}.empty p{max-width:520px;margin-bottom:24px;margin-left:auto;margin-right:auto;line-height:1.6}.toolbar{align-items:center;gap:12px;margin-bottom:20px;display:flex}.toolbar input[type=search]{max-width:320px}.toolbar .spacer,.spacer{flex:1}.page-header{align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header h2{letter-spacing:-.02em;margin:0 0 4px;font-size:24px}.page-header .sub{color:var(--text-dim);font-size:13px}.page-header .spacer{flex:1}.source-panel{border:1px solid var(--border);border-radius:var(--r-sm);margin-bottom:12px;overflow:hidden}.source-panel .header{font-family:var(--font-mono);color:var(--text-dim);border-bottom:1px solid var(--border);background:#ffffff08;padding:10px 14px;font-size:11px}.error-inline{color:#fecaca;border-radius:var(--r-sm);background:#f8717114;border:1px solid #f8717166;margin-bottom:14px;padding:12px 16px;font-size:13px}.dialog-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;background:#03040cb3;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.dialog{background:var(--midnight-1);border:1px solid var(--border-strong);border-radius:var(--r-lg);min-width:520px;max-width:92vw;max-height:88vh;padding:28px;overflow-y:auto;box-shadow:0 30px 60px -30px #000c,inset 0 0 0 1px #9b6bf41f}.dialog h3{letter-spacing:-.01em;margin-bottom:20px;font-size:18px}.tab-strip{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex}.tab-strip .tab{cursor:pointer;color:var(--text-dim);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 14px;font-size:13px;font-weight:500;transition:color .12s,border-color .12s}.tab-strip .tab:hover:not(:disabled){color:var(--text);background:0 0}.tab-strip .tab.active{color:var(--text);border-bottom-color:var(--evolve-purple-2)}.tab-strip .tab:disabled{opacity:.55;cursor:not-allowed}.repo-picker{border:1px solid var(--border);border-radius:var(--r-md);background:#03040c59;max-height:320px;overflow-y:auto}.repo-picker .item{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:1fr auto;gap:10px;padding:10px 14px;transition:background .1s;display:grid}.repo-picker .item:last-child{border-bottom:none}.repo-picker .item:hover{background:#9b6bf414}.repo-picker .item.selected{border-left:2px solid var(--evolve-purple-2);background:#9b6bf429}.repo-picker .name{font-size:13px;font-weight:600}.repo-picker .desc{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:460px;margin-top:2px;font-size:12px;overflow:hidden}.repo-picker .meta{text-align:right;color:var(--text-mute);white-space:nowrap;font-size:11px}.repo-picker .lang-dot{background:var(--evolve-purple-2);vertical-align:middle;border-radius:999px;width:8px;height:8px;margin-right:4px;display:inline-block}.assumptions{flex-direction:column;gap:6px;display:flex}.assumption-row{gap:6px;display:flex}.assumption-row input{flex:1}.kbd{border:1px solid var(--border-strong);font-family:var(--font-mono);color:var(--text-dim);background:#ffffff0a;border-radius:6px;padding:2px 7px;font-size:11px;display:inline-block}.sync-strip{border-radius:var(--r-sm);color:var(--text-dim);background:#9b6bf414;border:1px solid #9b6bf440;align-items:center;gap:12px;margin-bottom:14px;padding:10px 14px;font-size:12px;display:flex}.sync-strip .repo{color:var(--evolve-purple-3);font-family:var(--font-mono);font-weight:500}.sync-strip .commit{font-family:var(--font-mono);color:var(--text)}.sync-strip .spacer{flex:1}.Toastify__toast,.react-hot-toast>div{font-family:var(--font-sans)!important}.diff-container{font-size:12px}.diff-container pre{font-family:var(--font-mono)!important}.tab-bar{border-bottom:1px solid var(--border);gap:4px;margin:16px 0 20px;display:flex}.tab-bar .tab{color:var(--text-dim);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 16px;font-size:14px;font-weight:500}.tab-bar .tab:hover{color:var(--text)}.tab-bar .tab.active{color:var(--evolve-purple-3);border-bottom-color:var(--evolve-purple-2)}.tech-stack-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.tech-stack-header .sub{color:var(--text-dim);font-size:12px}.tech-stack-header .btn-link{color:var(--evolve-purple-3);border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;font-size:13px;text-decoration:none}.tech-stack-header .btn-link:hover{border-color:var(--border-strong);background:#7030a01f}.tech-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px;display:grid}.stat-value{color:var(--text);font-size:28px;font-weight:600;line-height:1.1}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;margin-top:6px;font-size:12px}.stat-warn .stat-value{color:var(--warn)}.stat-err .stat-value{color:var(--err)}.stat-ok .stat-value{color:var(--ok)}.stat-risk{background:#f871710f;border-color:#f871714d}.risk-list{color:var(--text-dim);margin:6px 0 0;padding:0;list-style:none}.risk-list li{padding:3px 0;font-size:13px}.tech-section{margin-bottom:28px}.tech-section h4{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;font-size:12px}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;display:grid}.tech-card{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 14px}.tech-card-name{color:var(--text);font-weight:600}.tech-card-ver{color:var(--evolve-purple-3);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.tech-card-sub{color:var(--text-mute);margin-top:6px;font-size:12px}.tech-card-sub code{color:var(--text-dim)}.fw-group{margin-bottom:18px}.fw-group-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px}.pill{color:var(--text-dim);border:1px solid var(--border);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.pill-ok{color:var(--ok);background:#34d0a21f;border-color:#34d0a259}.pill-warn{color:var(--warn);background:#f2b64a24;border-color:#f2b64a66}.pill-err{color:var(--err);background:#f8717124;border-color:#f8717166}.dep-filters{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.dep-filters input[type=search]{flex:none;min-width:220px}.eco-chips{flex-wrap:wrap;gap:6px;display:flex}.chip{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;font-size:12px;font-family:var(--font-sans);background:0 0;border-radius:999px;padding:4px 10px}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip-active{border-color:var(--evolve-purple-2);color:var(--evolve-purple-3);background:#7030a040}.dep-table-wrap{border:1px solid var(--border);border-radius:var(--r-md);background:var(--midnight-1);overflow:hidden}.dep-table{border-collapse:collapse;width:100%;font-size:13px}.dep-table thead th{text-align:left;background:var(--midnight-2);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border);padding:10px 12px;font-size:11px;font-weight:500}.dep-table tbody td{border-bottom:1px solid var(--border);color:var(--text-dim);padding:8px 12px}.dep-table tbody tr{cursor:pointer}.dep-table tbody tr:hover td{color:var(--text);background:#9b6bf40f}.dep-table tbody tr:last-child td{border-bottom:none}.dep-table td.mono{color:var(--text);font-family:JetBrains Mono,ui-monospace,monospace}.drawer-backdrop{z-index:999;background:#0000008c;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--midnight-0);border-left:1px solid var(--border);width:min(560px,100%);height:100%;padding:24px;overflow-y:auto;box-shadow:-10px 0 50px #7030a040}.drawer-head{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.drawer-head .sub{color:var(--text-mute);font-size:12px}.drawer-body{color:var(--text-dim);font-size:14px}.drawer-body .kv{border-bottom:1px dashed var(--border);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.drawer-body .kv span{color:var(--text-mute)}.drawer-body .kv code{color:var(--text)}.drawer-body .callout{border-radius:var(--r-sm);margin:12px 0;padding:10px 12px;font-size:13px}.callout-warn{color:var(--warn);background:#f2b64a1a;border:1px solid #f2b64a59}.advisory{border-radius:var(--r-sm);background:var(--midnight-1);border:1px solid var(--border);margin-bottom:8px;padding:10px}.advisory a{color:var(--evolve-purple-3);text-decoration:none}.advisory a:hover{text-decoration:underline}.progress-log{color:var(--text-dim);border-radius:var(--r-sm);border:1px solid var(--border);background:#0003;max-height:140px;margin-top:8px;padding:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;overflow-y:auto}.outline{flex-direction:column;gap:24px;display:flex}.cat-section{background:var(--midnight-1);border:1px solid var(--border);border-radius:12px;padding:16px 20px}.cat-section .cat-header{align-items:center;gap:10px;margin-bottom:4px;display:flex}.cat-section .cat-header h3{color:var(--evolve-purple-3);letter-spacing:.2px}.feat-section{border-left:2px solid var(--border);border-radius:6px;margin:16px 0 8px;padding:12px;transition:background .12s,border-color .12s}.feat-section.drag-over{border-left-color:var(--evolve-purple-2);background:#9b6bf414}.feat-section .feat-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.feat-section .feat-header h4{color:var(--text);margin:0;font-size:14px;font-weight:600}.cat-section .count,.feat-section .count{color:var(--text-mute);margin-left:4px;font-size:11px}.dialog{background:var(--midnight-1);border:1px solid var(--border-strong);z-index:101;border-radius:14px;flex-direction:column;max-width:90vw;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 20px 50px #00000080}.dialog .drawer-header,.dialog .drawer-footer{padding:12px 16px}.dialog .drawer-footer{border-top:1px solid var(--border);align-items:center;gap:8px;display:flex}.dialog .drawer-header,.dialog .drawer-footer{flex:none}.extraction-settings-body{flex:auto;min-height:0;overflow-y:auto}.badge.original{background:var(--origin-original-bg);color:var(--origin-original-fg);border:1px solid var(--origin-original-bd)}.badge.user_modified{background:var(--origin-modified-bg);color:var(--origin-modified-fg);border:1px solid var(--origin-modified-bd)}.badge.user_added{background:var(--origin-added-bg);color:var(--origin-added-fg);border:1px solid var(--origin-added-bd)}.engagement-page .page-head{align-items:flex-end;gap:12px;margin-bottom:4px;display:flex}.engagement-page .page-head .crumb{color:var(--text-dim);font-size:12px;text-decoration:none}.engagement-page .page-head .crumb:hover{color:var(--text)}.engagement-page .folder-config{align-items:center;gap:8px;display:flex}.engagement-page .folder-config code{background:var(--surface-2,#ffffff0a);border:1px solid var(--border);border-radius:4px;padding:4px 8px}.engagement-page .warn-box{border:1px solid var(--evolve-pink);color:var(--text);background:#f05aae14;border-radius:6px;padding:10px 14px;font-size:13px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:12px;display:grid}.stat-card{background:var(--surface-2,#ffffff08);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.stat-card .stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px}.stat-card .stat-value{color:var(--text);font-size:22px;font-weight:600}.stage-progress{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.stage-chip{border:1px solid var(--border);border-radius:8px;min-width:160px;padding:10px 14px}.stage-chip.done{border-color:var(--evolve-purple-2);background:#9b6bf414}.stage-chip.pending{opacity:.65}.stage-chip .stage-n{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.stage-chip .stage-label{margin-top:2px;font-size:14px;font-weight:600}.stage-chip .stage-progress-text{color:var(--text-dim);margin-top:4px;font-size:12px}.parts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:8px;display:grid}.part-card{background:var(--surface-2,#ffffff08);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:14px;display:flex}.part-card .part-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.part-card .badges{gap:4px;display:flex}.part-card .badge{color:var(--evolve-purple-3);background:#9b6bf426;border-radius:3px;padding:2px 6px;font-size:11px}.part-card .progress-bar{background:#ffffff0d;border-radius:3px;height:6px;overflow:hidden}.part-card .progress-fill{background:linear-gradient(90deg, var(--evolve-purple) 0%, var(--evolve-purple-2) 100%);height:100%;transition:width .2s}.part-card .progress-text{color:var(--text-dim);font-size:12px}.part-card .part-actions{gap:6px;margin-top:4px;display:flex}.artifact-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:13px}.artifact-table th,.artifact-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}.artifact-table th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:500}.empty-state{text-align:center;color:var(--text-dim);border:1px dashed var(--border);border-radius:8px;margin-top:12px;padding:40px 20px}.empty-state h3{color:var(--text);margin-top:0}.empty-state code{background:#ffffff0d;border-radius:3px;padding:2px 6px;font-size:12px}.workflow-hint{border-left:3px solid var(--evolve-purple-2);color:var(--text-dim);background:#9b6bf40f;border-radius:4px;padding:12px 16px;font-size:13px}.workflow-hint code{background:#ffffff0d;border-radius:3px;padding:1px 5px;font-size:12px}.controls-row{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.controls-row label{color:var(--text-dim);flex-direction:column;gap:4px;font-size:12px;display:flex}.controls-row input,.controls-row select{border:1px solid var(--border);background:var(--surface,transparent);color:var(--text);border-radius:4px;min-width:120px;padding:6px 10px}.md-view{color:var(--text);background:var(--surface-2,#ffffff05);border:1px solid var(--border);border-radius:8px;margin-top:12px;padding:20px;line-height:1.6}.md-view h1,.md-view h2,.md-view h3,.md-view h4{color:var(--text);margin-top:24px;margin-bottom:12px}.md-view h1:first-child{margin-top:0}.md-view h1{border-bottom:1px solid var(--border);padding-bottom:8px}.md-view code{background:#ffffff0f;border-radius:3px;padding:1px 5px;font-size:.9em}.md-view pre{background:#00000040;border-radius:6px;padding:12px;overflow-x:auto}.md-view pre code{background:0 0;padding:0}.md-view blockquote{border-left:3px solid var(--evolve-purple-2);color:var(--text-dim);margin:12px 0;padding:4px 12px}.md-view table{border-collapse:collapse;width:100%;margin:12px 0}.md-view th,.md-view td{border:1px solid var(--border);text-align:left;padding:6px 10px}.md-view th{background:#ffffff08}.md-view a{color:var(--evolve-purple-3)}.md-view ul,.md-view ol{padding-left:24px}.md-view input[type=checkbox]{margin-right:6px}.artifact-viewer .page-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.publish-panel{background:var(--surface-2,#ffffff08);border:1px solid var(--border);border-radius:8px;margin-top:8px;padding:16px}.publish-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:12px;display:grid}.publish-actions{gap:8px;display:flex}.publish-token-reveal{border-left:3px solid var(--evolve-purple-2);background:#9b6bf414;border-radius:4px;margin-top:12px;padding:12px}.publish-token-reveal pre{word-break:break-all;white-space:pre-wrap;background:#0000004d;border-radius:4px;margin:8px 0;padding:8px;font-size:12px;overflow-x:auto}.decisions-tab{margin-top:16px}.decisions-layout{grid-template-columns:minmax(320px,40%) 1fr;align-items:start;gap:24px;display:grid}@media (width<=1100px){.decisions-layout{grid-template-columns:1fr}}.adr-list-column .adr-table{width:100%}.adr-table .adr-row.active{background:#9b6bf41a}.adr-table .adr-row.superseded td{color:var(--text-dim)}.adr-table .adr-row:hover:not(.active){background:#9b6bf40a}.adr-viewer{background:var(--surface-alt,#ffffff05);border:1px solid #ffffff0f;border-radius:8px;padding:20px}.adr-viewer-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.adr-viewer-id{letter-spacing:.5px;color:var(--text-dim);text-transform:uppercase;font-size:11px}.adr-crosslinks{border-left:3px solid var(--evolve-purple-2,#9b6bf4);background:#9b6bf40f;border-radius:4px;margin-top:8px;padding:10px 12px;font-size:13px}.adr-crosslinks a{color:var(--evolve-purple-2,#9b6bf4)}.badge.adr-status{letter-spacing:.3px;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500}.open-questions-tab{margin-top:16px}.oq-summary-strip{flex-wrap:wrap;gap:12px;display:flex}.oq-summary-strip .stat-card{min-width:140px}.status-chip{border:1px solid var(--border);color:var(--text);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;background:#ffffff08;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.status-chip.link,a.status-chip{cursor:pointer}.status-chip.link:hover,a.status-chip:hover{border-color:var(--border-strong);background:#ffffff0f;text-decoration:none}.status-chip .dot{background:var(--text-mute);border-radius:999px;width:8px;height:8px;display:inline-block}.status-chip code{opacity:.75;font-size:10px;font-family:var(--font-mono);background:#0003;border-radius:3px;padding:1px 5px}.status-chip .avatar{background:var(--midnight-2);border-radius:999px;width:18px;height:18px;display:block}.status-chip.state-ok{color:var(--ok);background:#34d0a21a;border-color:#34d0a259}.status-chip.state-ok .dot{background:var(--ok)}.status-chip.state-info{color:var(--evolve-purple-3);background:#9b6bf41a;border-color:#9b6bf459}.status-chip.state-info .dot{background:var(--evolve-purple-2)}.status-chip.state-warn{color:var(--warn);background:#f2b64a1a;border-color:#f2b64a66}.status-chip.state-warn .dot{background:var(--warn)}.status-chip.state-err{color:#fecaca;background:#f871711a;border-color:#f8717173}.status-chip.state-err .dot{background:var(--err)}.status-chip.state-mute{color:var(--text-dim)}.status-chip.state-mute .dot{background:var(--text-mute)}.settings-page .helper-text{color:#cdc7e6;font-size:12px;line-height:1.5}:root[data-theme=light] .settings-page .helper-text{color:#3a325a}.settings-nav{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);scrollbar-width:none;background:#0f1122bf;border-radius:999px;gap:4px;margin:0 0 20px;padding:6px;display:flex;position:sticky;top:74px;overflow-x:auto}.settings-nav::-webkit-scrollbar{display:none}.settings-nav a{color:var(--text-dim);white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:inline-block}.settings-nav a:hover{color:var(--text);background:#ffffff0f;text-decoration:none}.settings-nav a.active{color:var(--evolve-purple-3);background:#9b6bf429}.info-icon{border:1px solid var(--border-strong);width:16px;height:16px;color:var(--text-dim);cursor:help;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:700;font-family:var(--font-sans);background:#ffffff0a;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.info-icon:hover{color:var(--text);border-color:var(--evolve-purple-2)}.sticky-save-bar{z-index:6;border-radius:var(--r-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--glow-purple);background:#0f1122eb;border:1px solid #9b6bf466;align-items:center;gap:12px;margin-top:20px;padding:10px 14px;display:flex;position:sticky;bottom:12px}.sticky-save-bar .count{color:var(--text-dim);font-size:12px}.repos-section{border-radius:var(--r-sm);border:1px solid var(--border,#333);background:var(--bg-card,#0f112280);margin-bottom:14px;padding:12px 14px}.repos-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.repos-table-wrap{overflow-x:auto}.repos-table{border-collapse:collapse;width:100%;font-size:13px}.repos-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-mute);border-bottom:1px solid var(--border,#333);padding:6px 8px;font-size:11px;font-weight:600}.repos-table tbody td{vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:8px}.repos-table tbody tr:last-child td{border-bottom:none}.repos-table tbody tr:hover td{background:#9b6bf40f}.form-field{margin-bottom:12px}.form-field label{color:var(--text-dim);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.form-field input,.form-field select{border-radius:var(--r-sm);border:1px solid var(--border,#333);background:var(--bg,#0f1122);width:100%;color:var(--text);padding:8px 10px;font-family:inherit;font-size:13px}.form-field input:focus,.form-field select:focus{border-color:var(--evolve-purple-3,#a78bfa);outline:none;box-shadow:0 0 0 2px #9b6bf433}.form-field select{appearance:auto}.pipeline-workflow{border-radius:var(--r-md);border:1px solid var(--border);background:linear-gradient(#1b183680 0%,#0f112280 100%);margin-bottom:16px;padding:16px 18px;position:relative;overflow:hidden}.pw-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.pw-header-left{align-items:center;gap:12px;display:flex}.pw-header-right{align-items:center;gap:8px;display:flex}.pw-perm-note{color:var(--text-mute,#8a8a8a);white-space:nowrap;font-size:12px}.pw-header-status{font-size:13px;font-weight:500}.pw-status-running{color:var(--evolve-purple-3);align-items:center;gap:8px;display:flex}.pw-status-done{color:var(--ok)}.pw-status-failed{color:var(--err)}.pw-status-idle{color:var(--text-mute)}.pw-elapsed{color:var(--text-dim);font-size:12px;font-family:var(--font-mono);border:1px solid var(--border);background:#ffffff0a;border-radius:999px;padding:2px 8px}.pw-running-label{color:var(--evolve-purple-3);font-size:13px;font-weight:500}.pw-pulse-dot{background:var(--evolve-purple-2);border-radius:999px;flex-shrink:0;width:8px;height:8px;animation:1.6s ease-in-out infinite purplePulse;display:inline-block}.pw-overall-bar{background:#ffffff0f;border-radius:999px;height:4px;margin-bottom:14px;overflow:hidden}.pw-overall-fill{background:linear-gradient(90deg, var(--evolve-purple), var(--evolve-purple-2));border-radius:999px;height:100%;transition:width .5s;box-shadow:0 0 8px #9b6bf466}.pw-error-banner{color:#fecaca;border-radius:var(--r-sm);background:#f8717114;border:1px solid #f8717166;margin-bottom:12px;padding:8px 14px;font-size:13px}.pw-stages{flex-wrap:wrap;align-items:center;gap:10px 0;display:flex}.pw-arrow{color:var(--text-mute);-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 6px;font-size:14px}.pw-arrow-done{color:var(--ok);opacity:.6}.pw-arrow-active{color:var(--evolve-purple-3)}.pw-arrow-idle{color:var(--text-mute);opacity:.4}.pw-stage{border-radius:var(--r-md);border:1.5px solid var(--border);box-sizing:border-box;background:#ffffff05;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;width:130px;min-width:130px;max-width:130px;min-height:118px;padding:10px 14px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex;position:relative}.pw-stage-not_started{opacity:.5}.pw-stage-in_progress{background:#9b6bf414;border-color:#9b6bf480;animation:2.5s ease-in-out infinite pw-glow;box-shadow:0 0 16px -4px #9b6bf44d}.pw-stage-complete{opacity:.85;background:#34d0a20f;border-color:#34d0a24d}.pw-stage-complete:hover{opacity:1;border-color:#34d0a280;box-shadow:0 4px 12px -4px #34d0a233}.pw-stage-failed:hover{border-color:#f87171b3}.pw-stage-skipped{border-style:dashed;border-color:var(--border);opacity:.5}.pw-stage-blocked{opacity:.6;background:#dc26260a;border-style:dashed;border-color:#dc262666}.pw-stage-blocked .pw-stage-name{color:var(--err);opacity:.6}.pw-stage-blocked-label{color:var(--err);opacity:.7;text-align:center;margin-top:2px;font-size:9px}.pw-dot-blocked{color:var(--err);opacity:.6;background:#dc262626}.pw-stage-failed{background:#f8717114;border-color:#f8717180;animation:2s ease-in-out infinite pw-fail-pulse}@keyframes pw-fail-pulse{0%,to{box-shadow:0 0 8px -2px #f871714d}50%{box-shadow:0 0 16px -2px #f8717180}}.pw-arrow-failed{color:var(--err);opacity:.4}.pw-warning-dot{background:#f59e0b;border-radius:999px;flex-shrink:0;width:6px;height:6px;margin-left:2px;display:inline-block}.pw-failure-banner{border-radius:var(--r-sm);background:#dc26260f;border:1px solid #dc262659;margin-bottom:12px;padding:12px 16px}.pw-failure-banner-content{align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.pw-failure-icon{color:var(--err);flex-shrink:0;font-size:18px;line-height:1}.pw-failure-text{color:var(--text);font-size:13px;line-height:1.4}.pw-failure-text strong{color:var(--err)}.pw-failure-detail{color:var(--text-dim);font-size:12px;font-family:var(--font-mono);word-break:break-word;margin-top:4px}.pw-failure-blocked-note{color:var(--text-mute);margin-top:4px;font-size:11px}.pw-failure-actions{flex-wrap:wrap;gap:8px;display:flex}.pw-failure-actions button{padding:4px 12px;font-size:12px}.pw-drawer-blocked-notice{border-radius:var(--r-sm);color:var(--text-dim);background:#dc26260f;border:1px solid #dc262633;margin-bottom:12px;padding:10px 14px;font-size:13px}@keyframes pw-glow{0%,to{box-shadow:0 0 16px -4px #9b6bf44d}50%{box-shadow:0 0 24px -2px #9b6bf480}}.pw-stage-icon{font-size:18px;line-height:1}.pw-stage-name{text-align:center;color:var(--text);font-size:11px;font-weight:600;line-height:1.2}.pw-stage-status-row{align-items:center;gap:4px;display:flex}.pw-status-dot{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:inline-flex}.pw-dot-not_started{color:var(--text-mute);background:#ffffff14}.pw-dot-in_progress{color:var(--evolve-purple-3);background:#9b6bf440}.pw-dot-complete{color:var(--ok);background:#34d0a233}.pw-dot-failed{color:var(--err);background:#f8717133}.pw-dot-skipped{color:var(--text-mute);background:#ffffff0f}.pw-mini-pulse{background:var(--evolve-purple-2);border-radius:999px;width:6px;height:6px;animation:1.6s ease-in-out infinite purplePulse;display:inline-block}.pw-status-label{color:var(--text-dim);white-space:nowrap;font-size:10px}.pw-stage-detail{color:var(--text-mute);text-align:center;font-size:10px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.pw-retry-icon{color:var(--text-mute);cursor:pointer;opacity:0;font-size:12px;transition:opacity .15s;position:absolute;top:4px;right:6px}.pw-stage:hover .pw-retry-icon{opacity:1}.pw-parallel-lane{align-items:center;gap:12px;margin-top:12px;display:flex}.pw-parallel-label{align-items:center;gap:6px;display:flex}.pw-parallel-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--text-mute);white-space:nowrap;background:#7030a01f;border:1px solid #7030a033;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.pw-stages-parallel{flex:none}@media (width<=768px){.pw-stages{justify-content:center}.pw-stage{width:108px;min-width:108px;max-width:108px;min-height:108px;padding:8px 10px}.pw-stage-name{font-size:10px}.pw-arrow{padding:0 3px;font-size:12px}}.pwl-shell{grid-template-columns:var(--rail-width,260px) 1fr;align-items:stretch;gap:0;min-height:100%;transition:grid-template-columns .18s;display:grid}.pwl-main{min-width:0;padding:20px 24px 80px}.pwl-content{min-width:0}.pwl-rail{border-right:1px solid var(--border);background:linear-gradient(#1b18368c 0%,#0f112259 100%);align-self:stretch;max-height:100vh;padding:16px 12px 32px;transition:padding .18s;position:sticky;top:0;overflow:hidden auto}.pwl-rail.collapsed{padding:16px 4px 32px}.pwl-rail.collapsed .pwl-rail-back{text-align:center;width:100%;margin-bottom:8px;padding:6px 0;font-size:14px}.pwl-rail.collapsed .pwl-rail-stage{justify-content:center;margin:6px 0 4px;display:flex}.pwl-rail.collapsed .pwl-rail-stage-head{cursor:default;justify-content:center;gap:0;padding:6px 0}.pwl-rail.collapsed .pwl-rail-stage-head:hover{background:0 0}.pwl-rail-collapse-btn{border:1px solid var(--border);background:var(--midnight-1,#0f1122d9);width:24px;height:24px;color:var(--text-dim);cursor:pointer;z-index:2;border-radius:50%;place-items:center;padding:0;transition:color .12s,border-color .12s;display:grid;position:absolute;top:8px;right:4px}.pwl-rail-collapse-btn:hover{color:var(--evolve-purple-3);border-color:var(--evolve-purple-3)}.pwl-rail-collapse-btn .chev{font-size:14px;line-height:1;display:inline-block}.pwl-rail.collapsed .pwl-rail-collapse-btn{right:50%;transform:translate(50%)}.pwl-rail-back{color:var(--text-dim);border-radius:4px;margin-bottom:12px;padding:6px 8px;font-size:12px;font-weight:500;text-decoration:none;display:inline-block}.pwl-rail-back:hover{background:var(--border);color:var(--evolve-purple-3)}.pwl-rail-project-head{border-bottom:1px solid var(--border);margin-bottom:8px;padding:8px 10px 14px}.pwl-rail-client{color:var(--text-mute);letter-spacing:.02em;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:500}.pwl-rail-name{color:var(--evolve-purple-3);word-break:break-word;font-size:15px;font-weight:700}.pwl-rail-meta{color:var(--text-mute);align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.pwl-rail-item{color:var(--text-dim);cursor:pointer;border-radius:6px;align-items:center;margin:1px 0;padding:7px 12px;font-size:14px;text-decoration:none;display:flex}.pwl-rail-item:hover{background:var(--border);color:var(--evolve-purple-3)}.pwl-rail-item.active{color:var(--evolve-purple-3);background:#9b6bf426;font-weight:600}.pwl-rail-item.small{padding:6px 12px;font-size:13px}.pwl-rail-stage{margin:8px 0 4px}.pwl-rail-stage-head{letter-spacing:.08em;text-transform:uppercase;color:var(--text-mute);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:8px 10px 6px;font-size:11px;font-weight:700;display:flex}.pwl-rail-stage-head:hover{color:var(--evolve-purple-3)}.pwl-rail-stage-head .chev{color:var(--text-mute);width:8px;font-size:9px;transition:transform .15s;display:inline-block}.pwl-rail-stage-head.collapsed .chev{transform:rotate(-90deg)}.pwl-rail-stage-head .stage-num{width:18px;height:18px;color:var(--evolve-purple-3);background:#9b6bf433;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.pwl-rail-stage-head.active .stage-num{background:var(--evolve-purple);color:#fff}.pwl-rail-stage-head .stage-name{flex:1}.pwl-rail-stage-body{padding-left:22px}.pwl-rail-divider{background:var(--border);height:1px;margin:14px 8px}.pwl-crumb{color:var(--text-mute);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;font-size:12px;display:flex}.pwl-crumb a{color:var(--text-dim);cursor:pointer;border-radius:3px;padding:2px 4px;text-decoration:none}.pwl-crumb a:hover{color:var(--evolve-purple-3);background:var(--border)}.pwl-crumb .sep{color:#fff;opacity:1}.pwl-crumb .current{color:var(--evolve-purple-3);font-weight:500}.container:has(.pwl-shell){max-width:none;padding:0}@media (width<=900px){.pwl-shell{grid-template-columns:1fr}.pwl-rail{border-right:none;border-bottom:1px solid var(--border);max-height:none;position:static}}.ov-page{flex-direction:column;gap:20px;display:flex}.ov-stage-strip{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-lg);flex-wrap:wrap;align-items:center;gap:8px;padding:14px 18px;display:flex}.ov-stage{border-radius:6px;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.ov-stage__num{background:var(--midnight-3);width:22px;height:22px;color:var(--text-mute);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.ov-stage__lbl{color:var(--text-dim);font-weight:500}.ov-stage--done .ov-stage__num{color:var(--ok);background:#34d0a229}.ov-stage--done .ov-stage__lbl{color:var(--ok);font-weight:600}.ov-stage--active{background:#7030a024}.ov-stage--active .ov-stage__num{background:var(--evolve-purple);color:#fff}.ov-stage--active .ov-stage__lbl{color:var(--evolve-purple-3);font-weight:700}.ov-stage-strip__arrow{color:var(--text-mute);font-size:12px}.ov-stage-strip__hint{color:var(--text-dim);font-size:12px}.ov-stage-strip__hint strong{color:var(--evolve-purple-3)}.ov-stage-strip__hint-sub{color:var(--text-mute)}.ov-metrics{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.ov-metric{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 16px}.ov-metric__label{color:var(--text-mute);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.ov-metric__value{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:700}.ov-metric__unit{color:var(--text-mute);margin-left:4px;font-size:13px;font-weight:500}.ov-metric__trend{color:var(--text-dim);margin-top:4px;font-size:12px;font-weight:500}.ov-metric__trend--positive{color:var(--ok)}.ov-metric__trend--muted{color:var(--text-mute)}@media (width<=900px){.ov-metrics{grid-template-columns:repeat(2,1fr)}}.ov-spend{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-md);max-width:320px;margin-top:12px;padding:14px 16px}.ov-spend__head{justify-content:space-between;align-items:center;display:flex}.ov-spend__label{color:var(--text-mute);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600;text-decoration:none}.ov-spend__label:hover{color:var(--text);text-decoration:underline}.ov-spend__value{letter-spacing:-.01em;color:var(--text);font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:700}.ov-spend__sub{color:var(--text-mute);margin-top:2px;font-size:11px}.ov-spend__chart{width:100%;height:auto;margin-top:10px;display:block;overflow:visible}.ov-spend__empty{color:var(--text-mute);margin-top:12px;font-size:12px;font-style:italic}.ov-panel{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px 22px}.ov-panel__header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.ov-panel__header h3{color:var(--text);margin:0;font-size:15px;font-weight:700}.ov-panel__link{color:var(--evolve-purple-3);font-size:12px;font-weight:500;text-decoration:none}.ov-panel__link:hover{text-decoration:underline}.ov-pipeline{grid-template-columns:repeat(8,1fr);gap:8px;display:grid}.ov-pipeline__step{background:var(--midnight-3);text-align:center;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;min-height:96px;padding:12px 10px;display:flex}.ov-pipeline__step--done{background:#34d0a21f;border-color:#34d0a24d}.ov-pipeline__step--active{border:2px solid var(--evolve-purple);background:#7030a029;box-shadow:0 0 0 4px #7030a029}.ov-pipeline__step--pending{background:var(--midnight-3);opacity:.62}.ov-pipeline__n{color:var(--text-mute);letter-spacing:.06em;font-size:10px;font-weight:800}.ov-pipeline__step--done .ov-pipeline__n{color:var(--ok)}.ov-pipeline__step--active .ov-pipeline__n{color:var(--evolve-purple-3)}.ov-pipeline__name{color:var(--text);margin-top:6px;font-size:12px;font-weight:600}.ov-pipeline__status{color:var(--text-mute);margin-top:4px;font-size:10px}.ov-pipeline__step--done .ov-pipeline__status{color:var(--ok)}.ov-pipeline__step--active .ov-pipeline__status{color:var(--evolve-purple-3);font-weight:600}.ov-pipeline-parallel{align-items:center;gap:8px;margin-top:8px;display:flex}.ov-pipeline-parallel__badge{text-transform:uppercase;letter-spacing:.05em;color:var(--text-mute);white-space:nowrap;background:#7030a01f;border:1px solid #7030a033;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}@media (width<=900px){.ov-pipeline{grid-template-columns:repeat(4,1fr)}}.ov-nextaction{align-items:center;gap:16px;padding:8px 0;display:flex}.ov-nextaction__body{flex:1;min-width:0}.ov-nextaction__title{color:var(--text);font-size:14px;font-weight:600}.ov-nextaction__desc{color:var(--text-dim);margin-top:4px;font-size:12px;line-height:1.5}.ov-btn{border:1px solid var(--border-strong);background:var(--midnight-2);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.ov-btn:hover{background:var(--midnight-3)}.ov-btn--primary{background:var(--evolve-purple);border-color:var(--evolve-purple);color:#fff}.ov-btn--primary:hover{background:var(--evolve-purple-2);border-color:var(--evolve-purple-2)}.ov-skeleton{background:linear-gradient(90deg, var(--midnight-1) 0%, var(--midnight-2) 50%, var(--midnight-1) 100%);border-radius:var(--r-md);background-size:200% 100%;animation:1.6s ease-in-out infinite ov-shimmer}.ov-skeleton-strip{min-height:52px}.ov-skeleton--stage{border-radius:6px;width:120px;height:28px}.ov-skeleton--metric{min-height:84px;padding:14px 16px}.ov-skeleton--panel{min-height:180px}.ov-skeleton--panel-sm,.ov-skeleton--step{min-height:96px}.ov-skeleton__row{background:var(--midnight-3);border-radius:4px;height:10px;margin-bottom:6px}.ov-skeleton__row--xs{width:40%}.ov-skeleton__row--sm{width:60%}.ov-skeleton__row--md{width:80%;height:14px}.ov-skeleton__row--lg{width:50%;height:22px}@keyframes ov-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ev-domains .ev-subtitle{color:var(--text-dim);margin-top:4px;font-size:13px}.ev-domains .ev-header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.ev-btn{border:1px solid var(--border);background:var(--midnight-1);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.ev-btn:hover:not(:disabled){background:var(--midnight-2);border-color:var(--border-strong)}.ev-btn:disabled{opacity:.55;cursor:not-allowed}.ev-btn--primary{background:var(--evolve-purple);color:#fff;border-color:var(--evolve-purple)}.ev-btn--primary:hover:not(:disabled){background:var(--evolve-purple-2);border-color:var(--evolve-purple-2)}.ev-btn--ghost{background:0 0}.ev-domain-panel{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-lg);margin-top:16px;overflow:hidden}.ev-panel-toolbar{border-bottom:1px solid var(--border);background:var(--midnight-2);align-items:center;gap:8px;padding:12px 16px;display:flex}.ev-search{border:1px solid var(--border);background:var(--midnight-0);color:var(--text);border-radius:6px;flex:0 320px;padding:6px 10px;font-size:13px}.ev-search::placeholder{color:var(--text-mute)}.ev-filter-btn{border:1px solid var(--border);background:var(--midnight-0);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500}.ev-filter-btn:hover{background:var(--midnight-2)}.ev-showing{color:var(--text-mute);font-size:12px}.ev-domain-block:not(:first-child) .ev-domain-row{border-top:1px solid var(--border)}.ev-domain-row{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:11px 18px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.ev-domain-row:hover{background:var(--midnight-2)}.ev-domain-row .ev-chev{color:var(--text-mute);width:12px;font-size:11px;transition:transform .15s;display:inline-block}.ev-domain-row.expanded .ev-chev{transform:rotate(90deg)}.ev-domain-name{color:var(--text);font-size:14px}.ev-domain-count{color:var(--evolve-purple-3);letter-spacing:.02em;background:#9b6bf42e;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600}.ev-domain-hours{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:500}.ev-domain-hours strong{color:var(--text);margin-right:2px;font-weight:700}.ev-story-list{background:#ffffff05}.ev-story-row{border-top:1px solid var(--border);grid-template-columns:90px 1fr 56px 56px 60px;align-items:center;gap:14px;padding:8px 18px 8px 46px;font-size:13px;display:grid}.ev-story-row:hover{background:var(--midnight-2)}.ev-verb{letter-spacing:.06em;text-align:center;border-radius:3px;min-width:62px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.ev-verb--create{color:var(--ok);background:#34d0a226}.ev-verb--update{color:var(--evolve-purple-3);background:#9b6bf42e}.ev-verb--delete{color:var(--err);background:#f8717126}.ev-verb--read{color:var(--text-dim);background:#ffffff0f}.ev-story-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.ev-story-name{color:var(--text)}.ev-story-desc{color:var(--text-mute);margin-left:6px;font-weight:400}.ev-size{text-align:center;color:var(--text-dim);background:#ffffff0f;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.ev-size--s{color:var(--ok);background:#34d0a22e}.ev-size--m{color:var(--warn);background:#f2b64a2e}.ev-size--l{color:var(--err);background:#f871712e}.ev-size--xl{color:var(--evolve-purple-3);background:#9b6bf42e}.ev-size--none{opacity:.6}.ev-story-hrs{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-dim);font-weight:500}.ev-story-empty,.ev-domain-empty{color:var(--text-mute);text-align:center;padding:24px 18px;font-size:13px}.ev-empty{text-align:center;border:1px dashed var(--border);border-radius:var(--r-lg);background:var(--midnight-1);padding:48px 24px}.ev-empty__title{color:var(--text);margin:0 0 8px}.ev-empty__body{color:var(--text-dim);margin:0 0 20px}.ev-stat-strip{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.ev-stat-card{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--r-lg);text-align:center;flex:140px;padding:14px 16px;transition:border-color .15s}.ev-stat-card--warn{background:linear-gradient(180deg, var(--midnight-1) 0%, #f2b64a0d 100%);border-color:#f2b64a8c}.ev-stat-card__value{color:var(--text);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1.1}.ev-stat-card--warn .ev-stat-card__value{color:var(--warn)}.ev-stat-card__label{color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:11px;font-weight:600}.ev-chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.ev-chip{letter-spacing:.03em;border:1px solid var(--border);background:var(--midnight-0);color:var(--text-dim);cursor:pointer;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.ev-chip:hover{background:var(--midnight-2);color:var(--text)}.ev-chip--active{border-color:var(--evolve-purple-2);color:var(--evolve-purple-3);background:#9b6bf42e}.ev-section-header{border-top:1px solid var(--border);background:var(--midnight-1);align-items:center;gap:10px;padding:12px 18px 8px;display:flex}.ev-section-header:first-of-type{border-top:none}.ev-section-header__title{color:var(--text);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.ev-section-header__count{color:var(--evolve-purple-3);font-variant-numeric:tabular-nums;background:#9b6bf42e;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.ev-section-header__count--warn{color:var(--warn);background:#f2b64a2e}.ev-story-row.ev-rule-row{grid-template-columns:130px 1fr 52px;align-items:flex-start;padding-top:10px;padding-bottom:10px}.ev-story-row.ev-rule-row .ev-story-title{white-space:normal;text-overflow:unset;line-height:1.45;display:block;overflow:visible}.ev-story-row.ev-rule-row .ev-story-desc{color:var(--text-dim);margin-top:2px;margin-left:0;display:block}.ev-story-row.ev-rule-row .ev-story-desc strong{color:var(--text-mute);font-weight:600}.ev-rule-id{color:var(--text-mute);background:0 0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ev-rule-conf{font-variant-numeric:tabular-nums;color:var(--text-dim);align-self:center;font-weight:600}.ev-rule-kind-group{display:contents}.ev-rule-kind{letter-spacing:.06em;text-transform:none;min-width:118px;font-size:10px}.ev-rule-kind--validation{color:var(--ok);background:#34d0a226}.ev-rule-kind--authorization{color:var(--err);background:#f8717126}.ev-rule-kind--business-logic{color:var(--evolve-purple-3);background:#9b6bf42e}.ev-rule-kind--data-integrity{color:#5cb8ff;background:#50b4ff26}.ev-rule-kind--workflow{color:var(--warn);background:#f2b64a2e}.ev-rule-kind--other{color:var(--text-dim);background:#ffffff0f}.ev-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:600;display:inline-block}.ev-badge--inferred{color:var(--warn);background:#f2b64a26;border:1px solid #f2b64a59}.ev-badge--orphan{color:var(--err);background:#f871711f;border:1px solid #f8717159}.ev-domain-route{color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:500;overflow:hidden}.ev-domain-route code{background:0 0;padding:0;font-size:11px}.ev-domain-empty--ok{color:var(--text-dim)}body.density-compact{--row-pad-y:8px;--row-pad-x:12px;--row-pad-y-sm:5px;--row-pad-x-sm:8px}body.density-compact .table th,body.density-compact .table td{padding:8px 10px}body.density-compact .rule-card{padding:12px 14px}body.density-compact .card{padding:14px}body.density-compact .rail-item,body.density-compact .stage-header{padding-top:4px;padding-bottom:4px}body.density-compact .drawer>*{padding-top:10px;padding-bottom:10px}.density-toggle{border:1px solid var(--border);background:0 0;border-radius:6px;align-items:center;gap:2px;padding:2px;display:inline-flex}.density-toggle button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500}.density-toggle button:hover{color:var(--text)}.density-toggle button.active{background:var(--evolve-purple);color:#fff}:where(button,a,input,select,textarea,[role=button],[tabindex]):focus-visible{outline:2px solid var(--purple-3);outline-offset:2px;border-radius:4px}:where(button,a,input,select,textarea,[role=button],[tabindex]):focus:not(:focus-visible){outline:none}.empty-state-v2{text-align:center;color:var(--text-dim);border:1px dashed var(--border);border-radius:var(--radius-lg,12px);background:#0f112259;padding:64px 24px}.empty-state-v2--inline{padding:28px 20px}.empty-state-v2__title{color:var(--text);letter-spacing:-.01em;margin:0 0 8px;font-size:18px;font-weight:600}.empty-state-v2__body{max-width:480px;color:var(--text-dim);margin:0 auto 20px;font-size:14px;line-height:1.55}.empty-state-v2--inline .empty-state-v2__body{margin-bottom:12px;font-size:13px}.empty-state-v2__actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.signal-dot{vertical-align:baseline;border-radius:999px;width:8px;height:8px;margin-right:6px;display:inline-block}.signal-dot--ok{background:var(--ok)}.signal-dot--warn{background:var(--warn)}.signal-dot--err{background:var(--err)}.signal-dot--info{background:var(--info)}.docs-page{grid-template-columns:300px 1fr;align-items:start;gap:24px;display:grid}.docs-page__sidebar{max-height:calc(100vh - 120px);position:sticky;top:84px;overflow:auto}.docs-page__search{border:1px solid var(--border);background:var(--midnight-1);width:100%;color:var(--text);border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px}.docs-page__list{margin:0;padding:0;list-style:none}.docs-page__list li{margin:0}.docs-page__list button{text-align:left;width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;margin-bottom:2px;padding:8px 12px;font-size:13px;display:block}.docs-page__list button:hover{background:var(--midnight-2);color:var(--text)}.docs-page__list button.active{background:var(--midnight-2);color:var(--text);border-color:var(--border);font-weight:600}.docs-page__list .docs-page__meta{color:var(--text-mute);margin-top:2px;font-size:11px;font-weight:400;display:block}.docs-page__viewer{background:var(--midnight-1);border:1px solid var(--border);border-radius:var(--radius-lg,12px);min-height:60vh;padding:32px 40px}.docs-page__viewer h1{margin-top:0}.docs-page__viewer h1,.docs-page__viewer h2,.docs-page__viewer h3{color:var(--text)}.docs-page__viewer p,.docs-page__viewer li{color:var(--text);line-height:1.65}.docs-page__viewer code{background:#ffffff0f;border-radius:4px;padding:1px 6px;font-size:.92em}.docs-page__viewer pre{border:1px solid var(--border);background:#00000059;border-radius:8px;padding:14px 16px;overflow:auto}.docs-page__viewer pre code{background:0 0;padding:0}.docs-page__viewer table{border-collapse:collapse;width:100%;margin:12px 0}.docs-page__viewer th,.docs-page__viewer td{border:1px solid var(--border);text-align:left;padding:6px 10px}@media (width<=820px){.docs-page{grid-template-columns:1fr}.docs-page__sidebar{max-height:none;position:static}}.pd-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 16px;display:flex}.pd-toolbar__search{border:1px solid var(--line,#e6e8ef);border-radius:var(--radius,8px);background:var(--bg-panel,#fff);min-width:200px;color:var(--ink-1,#0f1420);flex:0 320px;padding:8px 12px;font-size:14px}.pd-toolbar__search:focus{box-shadow:var(--focus-ring);border-color:var(--purple-3);outline:none}.pd-toolbar__spacer{flex:auto}.pd-toolbar__err{border-radius:var(--radius,8px);background:var(--err-soft,#fbe5e0);color:var(--err,#b3311a);margin:4px 0 12px;padding:8px 12px;font-size:13px}.pd-toolbar__note{border-radius:var(--radius,8px);background:var(--ok-soft,#e6f4ec);color:var(--ok,#2f9e5b);margin:4px 0 12px;padding:8px 12px;font-size:13px}.pd-add{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.pd-add__name,.pd-add__desc{border:1px solid var(--line,#e6e8ef);border-radius:var(--radius,8px);background:var(--bg-panel,#fff);color:var(--ink-1,#0f1420);padding:8px 10px;font-size:14px}.pd-add__name{min-width:160px}.pd-add__desc{min-width:240px}.pd-add__name:focus,.pd-add__desc:focus{box-shadow:var(--focus-ring);border-color:var(--purple-3);outline:none}.pd-btn{border-radius:var(--radius,8px);border:1px solid var(--line,#e6e8ef);background:var(--bg-panel,#fff);color:var(--ink-1,#0f1420);cursor:pointer;align-items:center;padding:8px 14px;font-size:13px;font-weight:500;transition:background-color .12s,border-color .12s;display:inline-flex}.pd-btn:hover:not(:disabled){background:var(--bg-hover,#f2effa)}.pd-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.pd-btn:disabled{opacity:.55;cursor:not-allowed}.pd-btn--primary{background:var(--purple-4,#7030a0);border-color:var(--purple-4,#7030a0);color:#fff}.pd-btn--primary:hover:not(:disabled){background:var(--purple-5,#4a1e70);border-color:var(--purple-5,#4a1e70)}.pd-btn--ghost{color:var(--ink-3,#4a5069);background:0 0}.pd-list{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=1100px){.pd-list{grid-template-columns:1fr 1fr}}.pd-card{background:var(--bg-panel,#fff);border:1px solid var(--line,#e6e8ef);border-radius:var(--radius-lg,12px);box-shadow:var(--shadow-1);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.pd-card--loading{min-height:100px}.pd-card__header{justify-content:space-between;align-items:center;gap:10px;display:flex}.pd-card__name{color:var(--ink-1,#0f1420);font-size:16px;font-weight:700;line-height:1.2}.pd-card__badge{text-transform:uppercase;letter-spacing:.4px;background:var(--line-soft,#f0f2f7);color:var(--ink-4,#6f7690);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.pd-card__badge[data-source=user]{background:var(--purple-1,#f4ecfa);color:var(--purple-5,#4a1e70)}.pd-card__badge[data-source=llm]{background:var(--info-soft,#e1ecf7);color:var(--info,#2b6cb0)}.pd-card__badge[data-source=none]{background:var(--warn-soft,#fbf1de);color:var(--warn,#b8791b)}.pd-card__desc{cursor:text;border-radius:6px;min-height:20px;margin:-4px -6px;padding:4px 6px;font-size:14px;line-height:1.55;transition:background-color .12s}.pd-card__desc:hover{background:var(--bg-hover,#f2effa)}.pd-card__desc:focus-visible{box-shadow:var(--focus-ring);outline:none}.pd-card__desc--llm{color:var(--ink-3,#4a5069)}.pd-card__desc--user{color:var(--ink-1,#0f1420);font-weight:500}.pd-card__desc--pending{color:var(--ink-5,#9aa0b8);font-style:italic}.pd-card__pending-text{color:var(--ink-4,#6f7690)}.pd-card__actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pd-card__err{color:var(--err,#b3311a);font-size:12px}.pd-card__edit{flex-direction:column;gap:8px;display:flex}.pd-card__textarea{border:1px solid var(--line,#e6e8ef);border-radius:var(--radius,8px);background:var(--bg-panel,#fff);width:100%;min-height:72px;color:var(--ink-1,#0f1420);font:inherit;resize:vertical;padding:10px 12px;font-size:14px;line-height:1.5}.pd-card__textarea:focus{box-shadow:var(--focus-ring);border-color:var(--purple-3);outline:none}.pd-card__edit-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pd-card__hint{color:var(--ink-5,#9aa0b8);margin-right:auto;font-size:12px}.page-header__subtitle{color:var(--ink-4,#6f7690);margin-top:4px;font-size:13px}.em-wrap{margin-top:32px}.em-section-header{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.em-section-title{color:var(--ink-1,#0f1420);font-size:18px;font-weight:600}.em-section-subtitle{color:var(--ink-4,#6f7690);margin-top:2px;font-size:13px}.em-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.em-toolbar__search{min-width:220px}.em-canvas{border:1px solid var(--line,#e6e8ef);border-radius:var(--radius,8px);background:var(--bg-panel,#fff);width:100%;position:relative;overflow:hidden}.em-canvas--loading{background:var(--bg-app,#f7f8fb)}.em-resize-handle{cursor:ns-resize;background:linear-gradient(to bottom, transparent 0%, transparent 50%, var(--line,#e6e8ef) 50%, var(--line,#e6e8ef) 100%);z-index:6;height:8px;position:absolute;bottom:0;left:0;right:0}.em-resize-handle:hover{background:linear-gradient(to bottom, transparent 0%, transparent 50%, var(--purple-3,#a86ed0) 50%, var(--purple-3,#a86ed0) 100%)}.em-node{border:1px solid var(--purple-3,#a86ed0);background:var(--bg-panel,#fff);border-radius:6px;width:200px;font-size:12px;transition:opacity .12s,box-shadow .12s,border-color .12s;overflow:hidden;box-shadow:0 1px 3px #0000000f}.em-node--selected{border-color:var(--purple-5,#4a1e70);box-shadow:0 0 0 2px var(--purple-2,#d9c1ea)}.em-node--match{border-color:var(--purple-5,#4a1e70)}.em-node--neighbor{border-color:var(--purple-3,#a86ed0)}.em-node--dim{opacity:.18}.em-node__header{background:var(--purple-4,#7030a0);color:#fff;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;padding:6px 10px;font-size:12px;font-weight:600;overflow:hidden}.em-node__fields{margin:0;padding:4px 0;list-style:none}.em-node__field{color:var(--ink-2,#2b3145);justify-content:space-between;gap:8px;padding:2px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.4;display:flex}.em-node__field-name{color:var(--ink-2,#2b3145);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.em-node__field-name--pk{color:var(--purple-5,#4a1e70);font-weight:600}.em-node__field-type{color:var(--ink-5,#9aa0b8);text-overflow:ellipsis;white-space:nowrap;max-width:90px;font-size:10px;overflow:hidden}.em-node__no-fields{color:var(--ink-5,#9aa0b8);padding:6px 10px;font-size:11px;font-style:italic}.em-node__handle{background:var(--purple-3,#a86ed0)!important;border:none!important;width:6px!important;height:6px!important}.em-context-menu{z-index:20;background:var(--bg-panel,#fff);border:1px solid var(--line,#e6e8ef);border-radius:var(--radius,8px);flex-direction:column;min-width:160px;padding:4px;display:flex;position:fixed;box-shadow:0 4px 12px #0000001f}.em-context-menu__item{text-align:left;font:inherit;color:var(--ink-1,#0f1420);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:13px}.em-context-menu__item:hover{background:var(--bg-hover,#f2effa)}.em-edge-tooltip{z-index:15;background:var(--ink-1,#0f1420);color:#fff;pointer-events:none;white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:11px;position:fixed;box-shadow:0 2px 6px #0003}.em-skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;padding:24px;display:grid}.em-skeleton-box{background:var(--bg-panel,#fff);border:1px solid var(--line,#e6e8ef);border-radius:6px;padding:12px}.pd-toolbar__select{border:1px solid var(--line,#e6e8ef);height:32px;color:var(--text,#1c1738);background:#fff;border-radius:4px;padding:0 8px;font-size:13px}.art-list{flex-direction:column;gap:10px;display:flex}.art-row{align-items:flex-start;gap:16px;padding:12px 14px;display:flex}.art-row[data-kind=user]{border-left:3px solid var(--purple-3,#a385c4)}.art-row[data-kind=system]{border-left:3px solid var(--purple-2,#d9c1ea)}.art-row__main{flex:auto;min-width:0}.art-row__title-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.art-row__title{color:var(--text,#1c1738);font-weight:600;text-decoration:none}.art-row__title:hover{text-decoration:underline}.art-row__badge{background:var(--purple-1,#f2effa);color:var(--purple-5,#4a1e70);text-transform:uppercase;letter-spacing:.02em;border-radius:3px;padding:1px 6px;font-size:11px}.art-row__badge[data-kind=user]{color:#2f4f78;background:#eef4fb}.art-row__pin{font-size:12px}.art-row__desc{color:var(--text-dim,#5a5570);margin-top:4px;font-size:13px}.art-row__meta{color:var(--text-dim,#7a7590);flex-wrap:wrap;gap:10px;margin-top:6px;font-size:12px;display:flex}.art-row__tags{gap:6px;display:inline-flex}.art-row__tag{color:var(--purple-5,#4a1e70);font-size:11px}.art-row__actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.art-row__delete{color:#a03040}.art-markdown{max-width:860px;padding:4px 12px 24px;line-height:1.55}.art-markdown h1,.art-markdown h2,.art-markdown h3{margin-top:1.2em;margin-bottom:.4em}.art-markdown code{background:var(--bg-soft,#f5f3fa);border-radius:3px;padding:1px 4px;font-size:.9em}.art-markdown pre code{padding:10px 12px;display:block;overflow-x:auto}.art-markdown ul{padding-left:22px}.ev-card{border:1px solid var(--border,#333);background:var(--card-bg,#ffffff05);border-radius:12px;margin-bottom:16px;padding:20px;scroll-margin-top:90px}.ev-card>h3:first-child,.ev-card>h4:first-child{margin-top:0}.ev-card h3{margin:0 0 4px}.ev-card h4{margin:20px 0 8px}.ev-card p{margin:4px 0 0}.ev-check{align-items:center;gap:8px;margin:12px 0;display:flex}.ev-check input{width:15px;height:15px;accent-color:var(--evolve-purple-3,#7030a0);flex:none;margin:0}.ev-check label{cursor:pointer}.ev-metric{border:1px solid var(--border,#333);background:var(--card-bg,#ffffff05);border-radius:10px;min-width:120px;padding:12px 16px}.ev-metric__value{font-size:22px;font-weight:700;line-height:1.15}.ev-metric__label{color:var(--text-dim,#999);font-size:11px}.pulse-dot{animation:1.6s ease-out infinite pulse-dot-kf}@keyframes pulse-dot-kf{0%{box-shadow:0 0 #a06fd099}70%{box-shadow:0 0 0 7px #a06fd000}to{box-shadow:0 0 #a06fd000}}.cg-list{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.cg-list li{line-height:1.5}.cg-snippet{background:var(--code-bg,#0000004d);border:1px solid var(--border,#333);white-space:pre;border-radius:8px;margin:0;padding:12px;font-size:12px;overflow-x:auto}
