:root{--paper:#f2f4f6;--surface:#fff;--surface-2:#f7f9fa;--ink:#15202b;--muted:#586574;--faint:#8a96a3;--line:#d3dae1;--wire:#9aa7b4;--step:#1f55c4;--step-bg:#eef3fd;--decide:#a96300;--decide-bg:#fff5e6;--loop:#0a7a6d;--loop-bg:#e8f6f3;--make:#3a7419;--make-bg:#edf6e6;--link:#c2366b;--danger:#b42318;--danger-bg:#fdecea;--ring:#1f55c459;--shadow:0 1px 2px #15202b0f, 0 2px 8px #15202b0d;--sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--cond:"IBM Plex Sans Condensed", "IBM Plex Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0e1318;--surface:#161d25;--surface-2:#1b232c;--ink:#e4e9ef;--muted:#9aa6b3;--faint:#6d7986;--line:#29333e;--wire:#4b5866;--step:#79a2ff;--step-bg:#17223a;--decide:#f2a93b;--decide-bg:#2a2012;--loop:#43c7b4;--loop-bg:#112823;--make:#86cb62;--make-bg:#172715;--link:#f27aa8;--danger:#ff7b6e;--danger-bg:#3a1714;--ring:#79a2ff66;--shadow:0 1px 2px #0000004d}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0e1318;--surface:#161d25;--surface-2:#1b232c;--ink:#e4e9ef;--muted:#9aa6b3;--faint:#6d7986;--line:#29333e;--wire:#4b5866;--step:#79a2ff;--step-bg:#17223a;--decide:#f2a93b;--decide-bg:#2a2012;--loop:#43c7b4;--loop-bg:#112823;--make:#86cb62;--make-bg:#172715;--link:#f27aa8;--danger:#ff7b6e;--danger-bg:#3a1714;--ring:#79a2ff66;--shadow:0 1px 2px #0000004d}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--paper);color:var(--ink);font:14px/1.5 var(--sans)}.wrap{flex-direction:column;gap:14px;max-width:1600px;margin:0 auto;padding-block:14px 40px;padding-inline:20px;display:flex}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--step);outline-offset:2px}.mono{font-family:var(--mono)}.bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.brand{align-items:center;gap:10px;min-width:0;margin-right:auto;display:flex}.brand svg{flex:none}.brand h1{font:700 20px/1.1 var(--cond);letter-spacing:.01em;margin:0}.brand p{color:var(--muted);margin:0;font-size:12.5px}.btn{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{border-color:var(--wire)}.btn.primary{background:var(--step);border-color:var(--step);color:var(--surface)}.btn.sm{padding:4px 9px;font-size:12.5px}.btn.ghost{box-shadow:none;background:0 0}.btn[disabled]{opacity:.45;cursor:default}.btn .dotmark{background:var(--decide);border-radius:50%;width:7px;height:7px}.toggle{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.drop{border:1.5px dashed var(--wire);background:var(--surface-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.drop.over{border-color:var(--step);background:var(--step-bg)}.drop .hint{min-width:200px;color:var(--muted);flex:1;font-size:12.5px}.drop .hint strong{color:var(--ink);font-weight:600}.status{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:4px 10px;font-size:12.5px;display:inline-flex}.status .dot{background:var(--faint);border-radius:50%;width:8px;height:8px}.status.claude .dot{background:var(--loop)}.status.quick .dot{background:var(--decide)}.status.example .dot{background:var(--step)}.status.busy{border-color:var(--pink);background:var(--pink-bg);color:var(--ink)}.status.busy .dot{border:2px solid var(--pink-border);border-top-color:var(--pink);background:0 0;border-radius:50%;flex:none;width:11px;height:11px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.status.busy .dot,.typing i,.ai-banner-spinner,.sugg-spinner{animation:none!important}}.btn-spinner{vertical-align:middle;border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:11px;height:11px;margin-right:5px;animation:.75s linear infinite spin;display:inline-block}.btn.ghost .btn-spinner,.btn:not(.primary) .btn-spinner{border-color:var(--line);border-top-color:var(--ink)}.ai-banner{z-index:40;background:var(--surface);border:1.5px solid var(--pink);border-radius:10px;align-items:center;gap:12px;margin:6px 10px 10px;padding:9px 16px;animation:.2s ease-out bannerFadeIn;display:flex;position:sticky;top:6px;box-shadow:0 4px 18px #ff33662e}@keyframes bannerFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ai-banner-spinner{border:2.5px solid var(--pink-bg);border-top-color:var(--pink);border-radius:50%;flex:none;width:16px;height:16px;animation:.75s linear infinite spin}.ai-banner-content{flex-direction:column;flex:1;min-width:0;font-size:12.5px;line-height:1.35;display:flex}.ai-banner-content strong{color:var(--ink);font-weight:600}.ai-banner-content span{color:var(--muted);font-size:11.5px}.sugg-analyzing-box{background:var(--surface-2);border:1.5px dashed var(--pink-border);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:16px 0;padding:44px 20px;display:flex}.sugg-spinner{border:3px solid var(--pink-bg);border-top-color:var(--pink);border-radius:50%;width:34px;height:34px;margin-bottom:14px;animation:.75s linear infinite spin}.sugg-analyzing-box h4{color:var(--ink);margin:0 0 6px;font-size:15px;font-weight:600}.sugg-analyzing-box p{color:var(--muted);max-width:440px;margin:0 0 16px;font-size:13px}.sugg-empty-box{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:16px 0;padding:48px 24px;display:flex}.sugg-empty-icon{background:var(--surface);border:1px solid var(--line);width:46px;height:46px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.sugg-empty-box h4{color:var(--ink);margin:0 0 8px;font-size:15px;font-weight:600}.sugg-empty-box p{color:var(--muted);max-width:480px;margin:0 0 6px;font-size:13px;line-height:1.5}.sugg-empty-box .sugg-sub-note{color:var(--faint);margin-bottom:18px;font-size:12px}.err{color:var(--danger);font-size:13px}.summary{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 24px;display:grid}.summary h2{font:700 24px/1.15 var(--cond);text-wrap:balance;word-break:break-word;margin:0}.summary .desc{color:var(--muted);max-width:80ch;margin:4px 0 0}.trigger{align-items:baseline;gap:8px;max-width:95ch;margin-top:6px;font-size:13px;display:flex}.eyebrow{font:600 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.stats{flex-wrap:wrap;gap:6px;display:flex}.stat{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:78px;padding:6px 12px}.stat b{font:600 20px/1.1 var(--cond);font-variant-numeric:tabular-nums;display:block}.stat span{color:var(--muted);font-size:11.5px}.stat.s b{color:var(--step)}.stat.d b{color:var(--decide)}.stat.l b{color:var(--loop)}.stat.m b{color:var(--make)}.stat.g b{color:var(--danger)}@media (max-width:760px){.summary{grid-template-columns:1fr}}.main{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:14px;display:grid}@media (max-width:1060px){.main{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:2px;padding:6px 8px;display:flex}.tab{color:var(--muted);background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:500;display:inline-flex}.tab[aria-selected=true]{background:var(--surface-2);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.badge{font:500 10.5px/1 var(--mono);background:var(--danger-bg);color:var(--danger);border-radius:5px;padding:2px 5px}.badge.n{background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;display:flex}.toolbar .sep{background:var(--line);width:1px;height:20px}.toolbar .grow{flex:1}.zoom{align-items:center;gap:2px;display:inline-flex}.ib{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:4px;min-width:28px;height:28px;padding:0 7px;font-size:12.5px;font-weight:600;line-height:1;display:inline-flex}.ib:hover{border-color:var(--wire)}.ib[aria-pressed=true]{border-color:var(--step);color:var(--step);background:var(--step-bg)}.zval{font:500 12px var(--mono);text-align:center;width:44px;color:var(--muted);font-variant-numeric:tabular-nums}select.jump{border:1px solid var(--line);background:var(--surface);height:28px;color:var(--ink);border-radius:6px;max-width:280px;padding:0 6px;font-size:12.5px}.hintline{color:var(--faint);font-size:12px}.viewport{touch-action:none;cursor:grab;background:radial-gradient(circle, var(--line) 1px, transparent 1.2px) 0 0/18px 18px, var(--surface-2);border-radius:0 0 12px 12px;height:clamp(460px,100vh - 230px,1400px);position:relative;overflow:hidden}.viewport.grabbing{cursor:grabbing}.vp-inner{transform-origin:0 0;width:max-content;position:absolute;top:0;left:0}.vp-inner.anim{transition:transform .28s}@media (prefers-reduced-motion:reduce){.vp-inner.anim{transition:none}}.diagram-inner{padding:24px 28px 40px}.flow{flex-direction:column;align-items:center;display:flex}.wire{background:var(--wire);flex:none;width:2px;min-height:22px;position:relative}.wire.arrow:after{content:"";border:5px solid #0000;border-top:6px solid var(--wire);border-bottom:0;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.wire.grow{flex:auto}.term{border:1.5px solid var(--ink);background:var(--surface);text-align:center;border-radius:999px;max-width:340px;padding:7px 16px;font-size:12.5px}.term .eyebrow{margin-bottom:3px;display:block}.term.end{background:var(--ink);color:var(--surface)}.term.end .eyebrow{color:var(--surface);opacity:.7}.node{background:var(--surface);border:1.5px solid var(--line);text-align:left;width:272px;box-shadow:var(--shadow);cursor:pointer;border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex;position:relative}.node:hover{border-color:var(--wire)}.node.sel,.loophead.sel,.parhead.sel{box-shadow:0 0 0 4px var(--ring);border-color:var(--step)}.node.flag:after{content:"!";background:var(--danger);width:18px;height:18px;color:var(--surface);font:700 12px/18px var(--sans);text-align:center;border-radius:50%;position:absolute;top:-8px;right:-8px}.node .top{align-items:center;gap:8px;display:flex}.num{font:500 11px var(--mono);color:var(--muted);background:var(--surface-2);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:5px;padding:1px 6px}.kind{font:600 10.5px var(--sans);letter-spacing:.07em;text-transform:uppercase}.fold{border:1px solid var(--line);background:var(--surface);font:600 11px/1 var(--sans);color:var(--muted);border-radius:5px;margin-left:auto;padding:3px 6px}.fold:hover{color:var(--ink);border-color:var(--wire)}.node h4{font:600 14.5px/1.3 var(--sans);text-wrap:balance;margin:0}.node p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.node.step{border-left:4px solid var(--step)}.node.step .kind{color:var(--step)}.node.decision{background:var(--decide-bg);border-color:color-mix(in srgb, var(--decide) 45%, var(--line))}.node.decision .kind{color:var(--decide)}.diamond{background:var(--decide);border-radius:2px;flex:none;width:12px;height:12px;transform:rotate(45deg)}.node.stop{border-left:4px solid var(--ink)}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{font:500 11px/1.3 var(--mono);overflow-wrap:anywhere;border-radius:5px;align-items:center;gap:4px;max-width:100%;padding:2px 6px;display:inline-flex}.chip.make{background:var(--make-bg);color:var(--make);border:1px solid color-mix(in srgb, var(--make) 30%, transparent)}.chip.use{background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.chip svg{flex:none}.chiprow{align-items:baseline;gap:6px;display:flex}.chiprow .lbl{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;flex:none;width:34px;font-size:10.5px}.branches{align-items:stretch;display:flex}.branch{flex-direction:column;align-items:center;padding:0 14px;display:flex;position:relative}.branch:before,.branch:after{content:"";background:var(--wire);height:2px;position:absolute;left:0;right:0}.branch:before{top:0}.branch:after{bottom:0}.branch:first-child:before,.branch:first-child:after{left:50%}.branch:last-child:before,.branch:last-child:after{right:50%}.branch:only-child:before,.branch:only-child:after{display:none}.blabel{font:600 11.5px/1.2 var(--sans);border:1.5px solid var(--decide);color:var(--decide);background:var(--surface);text-align:center;border-radius:999px;max-width:240px;padding:4px 9px}.blabel.par{border-color:var(--wire);color:var(--muted)}.blabel.implied{border-style:dashed;border-color:var(--danger);color:var(--danger)}.skip{color:var(--faint);padding:4px 0;font-size:12px;font-style:italic}.skip.implied{color:var(--danger);font-style:normal;font-weight:500}.merge{background:var(--wire);border-radius:50%;width:10px;height:10px}.loop{border:1.5px dashed var(--loop);background:color-mix(in srgb, var(--loop-bg) 70%, transparent);border-radius:14px;flex-direction:column;align-items:center;min-width:300px;padding:0 18px 14px;display:flex}.loophead{background:var(--surface);border:1.5px solid var(--loop);color:var(--loop);font:600 12px/1.3 var(--sans);cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:6px;max-width:360px;margin-top:-13px;padding:4px 8px 4px 12px;display:flex}.loophead .num{border-color:color-mix(in srgb, var(--loop) 40%, transparent);color:var(--loop);background:0 0}.loophead .fold{margin-left:6px}.loopback{font:500 11px var(--sans);color:var(--loop);align-self:flex-end;align-items:center;gap:4px;margin-top:8px;display:flex}.parhead{font:600 11px var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);background:var(--surface);border:1.5px solid var(--wire);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:3px 9px;display:flex}.folded{border:1.5px dashed var(--wire);background:var(--surface);color:var(--muted);border-radius:8px;padding:6px 12px;font-size:12.5px}.folded:hover{color:var(--ink);border-color:var(--step)}.mm-layer{position:relative}.mm-svg{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.mm-svg path{fill:none}.mm-svg .t{stroke:var(--wire);stroke-width:1.8px}.mm-svg .df{stroke:var(--make);stroke-width:1.6px;stroke-dasharray:5 4}.mm-svg .ul{stroke:var(--link);stroke-width:2.6px}.mm-svg .ul.sel{stroke-width:4px}.mm-svg .hit{stroke:#0000;stroke-width:14px;pointer-events:stroke;cursor:pointer}.mm-svg .tmp{stroke:var(--link);stroke-width:2px;stroke-dasharray:4 3}.mm-svg marker path{stroke:none}.mm-svg #arDf path{fill:var(--make)}.mm-svg #arUl path{fill:var(--link)}.mm-svg text{font:500 11px var(--sans);fill:var(--decide)}.mm-node{background:var(--surface);border:1.5px solid var(--line);width:max-content;max-width:210px;box-shadow:var(--shadow);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:9px;padding:6px 10px;font-size:12.5px;line-height:1.3;position:absolute;transform:translate(-50%,-50%)}.mm-node .num{margin-right:5px;padding:0 4px;font-size:10.5px}.mm-node.root{background:var(--ink);color:var(--surface);border-color:var(--ink);font:700 15px/1.2 var(--cond);text-align:center;max-width:260px;padding:10px 16px}.mm-node.step{border-left:4px solid var(--step)}.mm-node.decision{background:var(--decide-bg);border-color:color-mix(in srgb, var(--decide) 50%, var(--line))}.mm-node.loop{border:1.5px dashed var(--loop);background:var(--loop-bg)}.mm-node.parallel{border-style:dashed}.mm-node.branch{border:1.5px solid var(--decide);color:var(--decide);border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600}.mm-node.branch.implied{border-style:dashed;border-color:var(--danger);color:var(--danger)}.mm-node.out{background:var(--make-bg);color:var(--make);border-color:color-mix(in srgb, var(--make) 35%, transparent);font:500 11px var(--mono);box-shadow:none}.mm-node.use{background:var(--surface-2);color:var(--muted);font:500 11px var(--mono);box-shadow:none}.mm-node.sel{box-shadow:0 0 0 4px var(--ring);border-color:var(--step)}.mm-node.linksrc{box-shadow:0 0 0 4px color-mix(in srgb, var(--link) 40%, transparent)}.mm-node .dot{background:var(--surface);border:2px solid var(--link);cursor:crosshair;opacity:.55;border-radius:50%;width:12px;height:12px;margin-top:-6px;position:absolute;top:50%}.mm-node .dot.r{right:-7px}.mm-node .dot.l{left:-7px}.mm-node:hover .dot{opacity:1}.mm-lchip{background:var(--surface);border:1.5px solid var(--link);color:var(--link);font:600 11px/1.2 var(--sans);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:180px;padding:2px 8px;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.mm-lchip.sel{background:var(--link);color:var(--surface)}.linkbar{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--link) 8%, var(--surface));flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:flex}.linkbar input{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex:1;min-width:160px;max-width:280px;padding:3px 8px}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.legend i{vertical-align:3px;border-top:2px solid;width:14px;height:0;margin-right:5px;display:inline-block}.scroll{height:clamp(460px,100vh - 190px,1400px);overflow:auto}.outline{padding:16px 20px}.outline ol,.outline ul{margin:0;padding-left:20px}.outline li{margin:6px 0}.outline .o-title{cursor:pointer;font-weight:600}.outline .o-title:hover{color:var(--step)}.outline .o-meta{color:var(--muted);font-size:13px}.outline .o-q{color:var(--decide);cursor:pointer;font-weight:600}.outline .o-b{color:var(--decide);font-weight:600}.outline .o-b.implied{color:var(--danger)}.outline .o-loop{color:var(--loop);cursor:pointer;font-weight:600}.sugg{flex-direction:column;gap:14px;padding:14px 16px;display:flex}.sugg-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sugg-head p{color:var(--muted);flex:1;min-width:220px;margin:0;font-size:13px}.sugg h3{font:600 15px/1.2 var(--cond);align-items:center;gap:8px;margin:4px 0 0;display:flex}.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.card{border:1px solid var(--line);background:var(--surface);border-top:3px solid var(--wire);border-radius:10px;flex-direction:column;gap:6px;padding:12px;display:flex}.card.high{border-top-color:var(--danger)}.card.medium{border-top-color:var(--decide)}.card.low{border-top-color:var(--step)}.card.fixing{border-color:var(--pink);background:color-mix(in srgb, var(--pink) 5%, var(--surface))}.card.resolved{border-top-color:var(--make);border-left:3px solid var(--make)}.card .meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sev{font:600 10.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:2px 6px}.sev.high{background:var(--danger-bg);color:var(--danger)}.sev.medium{background:var(--decide-bg);color:var(--decide)}.sev.low{background:var(--step-bg);color:var(--step)}.cat{color:var(--muted);font-size:11.5px}.card h4{font:600 14px/1.35 var(--sans);margin:0}.card .whatif{color:var(--decide);margin:0;font-size:13px;font-weight:500}.card .fix{margin:0;font-size:13px}.card .acts{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.stepref{border:1px solid var(--line);background:var(--surface-2);font:500 11px var(--mono);color:var(--step);border-radius:5px;padding:1px 6px}.empty{color:var(--muted);font-size:13px}.source{flex-direction:column;display:flex}.filetabs{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px;padding:6px 10px;display:flex}.filetabs button[data-file]{border:1px solid var(--line);background:var(--surface);font:500 12px var(--mono);border-radius:6px;padding:3px 8px}.filetabs button[aria-pressed=true]{border-color:var(--step);color:var(--step)}.filetabs .edited{color:var(--decide)}.source pre{font:12.5px/1.6 var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--ink);margin:0;padding:16px 18px}.source mark{background:color-mix(in srgb, var(--decide) 30%, transparent);color:inherit;border-radius:3px;padding:0 1px}.source textarea{width:100%;height:100%;font:12.5px/1.6 var(--mono);background:var(--surface);resize:none;border:0;margin:0;padding:16px 18px}.side{top:calc(env(safe-area-inset-top,0px) + 12px);flex-direction:column;height:calc(100vh - 24px);max-height:1500px;display:flex;position:sticky}@media (max-width:1060px){.side{height:auto;position:static}}.side-body{flex:1;min-height:0;overflow:auto}.sec{border-bottom:1px solid var(--line);padding:14px 16px}.sec:last-child{border-bottom:0}.sec h3{font:600 15px/1.2 var(--cond);letter-spacing:.01em;align-items:center;gap:8px;margin:0 0 10px;display:flex}.detail .kindline{align-items:center;gap:8px;margin-bottom:6px;display:flex}.detail h4{font:600 17px/1.3 var(--sans);text-wrap:balance;margin:0 0 6px}.detail p{margin:0 0 8px;font-size:13.5px}.detail .blk{flex-direction:column;gap:6px;margin-top:10px;display:flex}.detail blockquote{border-left:3px solid var(--decide);background:var(--surface-2);font:12px/1.5 var(--mono);color:var(--muted);overflow-wrap:anywhere;border-radius:0 6px 6px 0;margin:0;padding:8px 10px}.detail .acts{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.linkbtn{color:var(--step);text-align:left;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:500}.makes{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.makes li{grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px;display:grid}.makes .nm{font:500 12.5px var(--mono);color:var(--make);overflow-wrap:anywhere}.makes .by{color:var(--muted);grid-column:2;font-size:12px}.makes .by button{color:var(--step);font:500 12px var(--mono);background:0 0;border:0;padding:0}.makes .ic{color:var(--make);grid-row:span 2;padding-top:2px}.plain{margin:0;padding-left:18px;font-size:13px}.plain li{margin:3px 0}.chat{flex-direction:column;height:100%;min-height:520px;display:flex}.scopebar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;font-size:12.5px;display:flex}.scope-pill{border:1px solid var(--step);color:var(--step);background:var(--step-bg);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:2px 10px;font-weight:500;display:inline-flex;overflow:hidden}.scope-pill.all{border-color:var(--line);color:var(--muted);background:var(--surface-2)}.msgs{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px;display:flex;overflow:auto}.msg{overflow-wrap:anywhere;max-width:94%;font-size:13.5px;line-height:1.5}.msg.user{white-space:pre-wrap;background:var(--step);color:var(--surface);border-radius:12px 12px 3px;align-self:flex-end;padding:8px 12px}.msg.user .sc{opacity:.8;margin-bottom:2px;font-size:11px;display:block}.msg.assistant{background:var(--surface-2);border:1px solid var(--line);border-radius:12px 12px 12px 3px;align-self:flex-start;padding:9px 12px}.msg.tip{max-width:none;color:var(--muted);border:1px dashed var(--line);border-radius:10px;align-self:stretch;padding:10px 12px;font-size:13px}.msg.error{color:var(--danger)}.msg p{margin:0 0 6px}.msg p:last-child{margin:0}.msg ul,.msg ol{margin:4px 0 6px;padding-left:18px}.msg code{font:12px var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:0 4px}.msg pre{font:12px/1.5 var(--mono);background:var(--surface);border:1px solid var(--line);white-space:pre-wrap;border-radius:6px;padding:8px;overflow:auto}.typing{color:var(--muted);align-items:center;gap:3px;font-size:12.5px;display:inline-flex}.typing i{background:var(--muted);border-radius:50%;width:5px;height:5px;animation:1s infinite pulse}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}.change{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:8px;overflow:hidden}.change-h{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:600;display:flex}.change-h .ok{color:var(--make)}.change-h .bad{color:var(--danger)}.change-h .sp{flex:1}.diff{font:11.5px/1.5 var(--mono);max-height:220px;overflow:auto}.diff .f{color:var(--muted);background:var(--surface-2);border-top:1px solid var(--line);padding:3px 8px}.diff .f:first-child{border-top:0}.diff .del,.diff .add{white-space:pre-wrap;padding:0 8px}.diff .del{background:var(--danger-bg);color:var(--danger)}.diff .add{background:var(--make-bg);color:var(--make)}.quick{flex-wrap:wrap;gap:5px;padding:8px 12px 0;display:flex}.quick button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:3px 10px;font-size:12px}.quick button:hover{color:var(--ink);border-color:var(--wire)}.composer{flex-direction:column;gap:6px;padding:8px 12px 12px;display:flex}.composer textarea{border:1px solid var(--line);background:var(--surface-2);resize:vertical;border-radius:8px;width:100%;min-height:64px;max-height:180px;padding:8px 10px;font-size:13.5px}.composer .row{align-items:center;gap:8px;display:flex}.composer .row .grow{flex:1}body.focus .bar,body.focus .drop,body.focus .summary,body.focus #err{display:none}body.focus .main{z-index:6;background:var(--paper);padding:calc(env(safe-area-inset-top,0px) + 10px) 12px calc(env(safe-area-inset-bottom,0px) + 10px);max-width:none;position:fixed;inset:0}body.focus .viewport{height:calc(100vh - 110px)}body.focus .scroll{height:calc(100vh - 70px)}body.focus .side{height:calc(100vh - 20px);top:0}.modal{z-index:10;background:#0a0f1473;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal .box{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;width:min(760px,100%);padding:16px;display:flex}.modal textarea{border:1px solid var(--line);background:var(--surface-2);width:100%;min-height:300px;font:12.5px/1.5 var(--mono);resize:vertical;border-radius:8px;padding:10px}.modal .row{justify-content:flex-end;gap:8px;display:flex}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{margin:0}.keybtn .kdot{background:var(--faint);border-radius:50%;width:8px;height:8px}.keybtn.on .kdot{background:var(--loop)}.settings label.f{flex-direction:column;gap:4px;font-size:13px;font-weight:500;display:flex}.settings input[type=password],.settings input[type=text],.settings select{border:1px solid var(--line);background:var(--surface-2);font:13px var(--mono);border-radius:8px;width:100%;padding:7px 10px}.settings .inrow{gap:6px;display:flex}.settings .note{color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.settings .note a{color:var(--step)}.settings .msgline{min-height:1.2em;font-size:13px}.settings .msgline.ok{color:var(--make)}.settings .msgline.bad{color:var(--danger)}#shotStage{background:var(--surface);color:var(--ink);width:max-content;font:14px/1.5 var(--sans);padding:36px;position:fixed;top:0;left:-200000px}#shotStage .shot-head{flex-direction:column;gap:6px;max-width:980px;margin-bottom:8px;display:flex}#shotStage .shot-head h2{font:700 28px/1.15 var(--cond);margin:0}#shotStage .shot-head p{color:var(--muted);margin:0;font-size:14px}#shotStage .shot-meta{color:var(--faint);font-size:12.5px}#shotStage .shot-legend{color:var(--muted);gap:16px;margin-top:4px;font-size:12.5px;display:flex}#shotStage .shot-legend i{vertical-align:-1px;border-radius:3px;width:11px;height:11px;margin-right:6px;display:inline-block}#shotStage .diagram-inner{padding:20px 0 8px}#shotStage .mm-layer{margin-top:12px}.shot-opts{grid-template-columns:auto 1fr;align-items:center;gap:10px 14px;font-size:13px;display:grid}.shot-opts .seg{border:1px solid var(--line);border-radius:8px;width:max-content;display:inline-flex;overflow:hidden}.shot-opts .seg label{cursor:pointer;border-right:1px solid var(--line);padding:5px 12px}.shot-opts .seg label:last-child{border-right:0}.shot-opts .seg input{opacity:0;pointer-events:none;position:absolute}.shot-opts .seg label:has(input:checked){background:var(--step-bg);color:var(--step);font-weight:600}.shot-opts .seg label:has(input:focus-visible){outline:2px solid var(--step);outline-offset:-2px}.chg-list{flex-direction:column;gap:12px;display:flex}.chg{border:1px solid var(--line);background:var(--surface);border-left:4px solid var(--make);border-radius:10px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.chg.undone{opacity:.6;border-left-color:var(--wire)}.chg.undone h4{text-decoration:line-through}.chg-h{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.chg h4{font:600 14px/1.35 var(--sans);margin:0}.chg .req{color:var(--muted);margin:0;font-size:13px}.chg .req q{color:var(--ink)}.src{font:600 10.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:2px 6px}.src.src-chat{background:var(--step-bg);color:var(--step)}.src.src-suggestion{background:var(--decide-bg);color:var(--decide)}.src.src-notes,.src.src-notefix{background:color-mix(in srgb, #f5c518 25%, var(--surface));color:var(--ink)}.src.src-hand{background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.plusminus{font:500 12px var(--mono)}.plusminus .a{color:var(--make)}.plusminus .d{color:var(--danger)}.chg details summary{cursor:pointer;color:var(--step);font-size:12.5px;font-weight:500}.chg-affect{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.udiff{border:1px solid var(--line);font:12px/1.55 var(--mono);border-radius:8px;max-height:480px;margin-top:6px;overflow:auto}.udiff .f{background:var(--surface-2);border-bottom:1px solid var(--line);color:var(--muted);gap:10px;padding:5px 10px;display:flex;position:sticky;top:0}.udiff .dl{grid-template-columns:3.2em 3.2em 1.4em 1fr;min-width:max-content;display:grid}.udiff .dl .ln{color:var(--faint);text-align:right;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;padding-right:6px}.udiff .dl .mk{text-align:center;-webkit-user-select:none;user-select:none}.udiff .dl .tx{white-space:pre-wrap;word-break:break-word;min-width:40ch;max-width:110ch;padding-right:12px}.udiff .dl.add{background:var(--make-bg);color:var(--make)}.udiff .dl.del{background:var(--danger-bg);color:var(--danger)}.udiff .gap{color:var(--faint);background:var(--surface-2);border-block:1px dashed var(--line);padding:2px 10px}.segtabs{border:1px solid var(--line);border-radius:8px;display:inline-flex;overflow:hidden}.segtabs button{background:var(--surface);color:var(--muted);border:0;border-right:1px solid var(--line);padding:5px 12px;font-size:12.5px}.segtabs button:last-child{border-right:0}.segtabs button[aria-pressed=true]{background:var(--step-bg);color:var(--step);font-weight:600}.chg-totals{flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.chg-totals b{font:600 18px var(--cond);margin-right:4px}.msg .udiff .dl{grid-template-columns:2.4em 2.4em 1.2em minmax(0,1fr);min-width:0}.msg .udiff .dl .tx{min-width:0}.node.changed:before{content:"Edited";background:var(--make);color:var(--surface);font:600 9.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:3px 6px;position:absolute;top:-9px;left:12px}#srcRead{grid-template-columns:210px minmax(0,1fr);align-items:start;gap:8px;display:grid}@media (max-width:900px){#srcRead{grid-template-columns:1fr}.md-toc{display:none}}.md-toc{border-right:1px solid var(--line);max-height:clamp(440px,100vh - 210px,1380px);padding:16px 8px 16px 14px;font-size:12.5px;position:sticky;top:0;overflow:auto}.md-toc .eyebrow{margin-bottom:8px;display:block}.md-toc button{text-align:left;width:100%;color:var(--muted);background:0 0;border:0;border-radius:5px;padding:3px 6px;line-height:1.35;display:block}.md-toc button:hover{background:var(--surface-2);color:var(--ink)}.md-toc .t2{padding-left:16px}.md-toc .t3{padding-left:26px;font-size:12px}.md-toc .t1{color:var(--ink);font-weight:600}.md{max-width:84ch;color:var(--ink);padding:18px 26px 48px 18px;font-size:14.5px;line-height:1.65}.md-meta{color:var(--faint);flex-wrap:wrap;gap:14px;margin-bottom:14px;font-size:12px;display:flex}.md-b{border-left:3px solid #0000;border-radius:2px;margin-left:-15px;padding-left:12px;position:relative}.md-b.edited{border-left-color:var(--make);background:color-mix(in srgb, var(--make-bg) 70%, transparent)}.md-b.hl{background:color-mix(in srgb, var(--decide) 18%, transparent);border-left-color:var(--decide)}.md-b[data-l]:hover:after{content:"line " attr(data-l);font:500 10.5px var(--mono);color:var(--faint);white-space:nowrap;margin-right:10px;position:absolute;top:.35em;right:100%}.md h1,.md h2,.md h3,.md h4,.md h5,.md h6{font-family:var(--cond);text-wrap:balance;margin:1.1em 0 .4em;line-height:1.2}.md h1{font-size:28px;font-weight:700}.md h2{border-top:1px solid var(--line);padding-top:.5em;font-size:21px;font-weight:600}.md h3{font-size:17px;font-weight:600}.md h4,.md h5,.md h6{color:var(--muted);font-size:15px;font-weight:600}.md .md-b:first-child h1,.md .md-b:first-child h2{border-top:0;margin-top:.2em}.md p{margin:.45em 0}.md ul,.md ol{margin:.4em 0;padding-left:1.5em}.md li{margin:.2em 0}.md li.task{margin-left:-1.3em;list-style:none}.md li.task .box{width:1.1em;color:var(--step);display:inline-block}.md code{font:12.5px var(--mono);background:var(--surface-2);border:1px solid var(--line);border-radius:4px;padding:0 4px}.md pre.md-code{background:var(--surface-2);border:1px solid var(--line);font:12.5px/1.55 var(--mono);border-radius:8px;margin:.6em 0;padding:12px 14px;position:relative;overflow:auto}.md pre.md-code code{white-space:pre;background:0 0;border:0;padding:0}.md pre .lang{font:500 10.5px var(--sans);color:var(--faint);text-transform:uppercase;letter-spacing:.06em;position:absolute;top:4px;right:8px}.md blockquote{border-left:3px solid var(--wire);color:var(--muted);margin:.6em 0;padding:.2em 0 .2em 14px}.md hr{border:0;border-top:1px solid var(--line);margin:1.2em 0}.md a{color:var(--step)}.md a.filelink{border-bottom:1px dashed var(--step);text-decoration:none}.md .imgref{color:var(--muted);font-style:italic}.md .tblwrap{margin:.6em 0;overflow:auto}.md table{border-collapse:collapse;font-size:13.5px}.md th,.md td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:5px 10px}.md th{background:var(--surface-2);font-weight:600}.md dl.md-front{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;grid-template-columns:max-content 1fr;gap:4px 14px;margin:0 0 .6em;padding:12px 14px;font-size:13.5px;display:grid}.md dl.md-front dt{font:600 11px/1.9 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.md dl.md-front dd{margin:0}.md-legend{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.md-legend i{vertical-align:-1px;background:var(--make-bg);border-left:3px solid var(--make);border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.ttsbar{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--step) 7%, var(--surface));flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;font-size:12.5px;display:flex}.ttsbar select{border:1px solid var(--line);background:var(--surface);border-radius:6px;max-width:220px;height:28px;font-size:12.5px}.ttsbar .now{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:160px;overflow:hidden}.md-b.noted{border-left-color:#c99a06}.md-note{border:1px solid color-mix(in srgb, #c99a06 45%, var(--line));background:color-mix(in srgb, #f5c518 12%, var(--surface));border-radius:8px;flex-direction:column;gap:4px;margin:4px 0 10px;padding:8px 10px;font-size:13px;display:flex}.md-note .nhead{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;display:flex}.md-note .acts{flex-wrap:wrap;gap:6px;display:flex}.md-note.resolved{opacity:.6}.md-note.infile{flex-direction:row;align-items:baseline;gap:8px}.ntype{font:600 10.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, #f5c518 30%, var(--surface));color:var(--ink);border-radius:4px;padding:2px 6px}.ntype.fix{background:var(--danger-bg);color:var(--danger)}.ntype.change{background:var(--step-bg);color:var(--step)}.ntype.question{background:var(--decide-bg);color:var(--decide)}.nmeta{font:500 11px var(--mono);color:var(--faint)}.selbar{z-index:12;background:var(--ink);border-radius:8px;gap:2px;padding:3px;display:flex;position:fixed;box-shadow:0 4px 14px #00000040}.selbar button{color:var(--surface);font:500 12.5px var(--sans);background:0 0;border:0;border-radius:6px;padding:5px 10px}.selbar button:hover{background:color-mix(in srgb, var(--surface) 18%, transparent)}.notecards{flex-direction:column;gap:10px;display:flex}.ncard{border:1px solid var(--line);background:var(--surface);border-left:4px solid #c99a06;border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.ncard.resolved{border-left-color:var(--make);opacity:.7}.ncard blockquote{border-left:3px solid var(--line);background:var(--surface-2);font:12px/1.5 var(--mono);color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:0 6px 6px 0;max-height:130px;margin:0;padding:6px 10px;overflow:auto}.ncard .ntext{white-space:pre-wrap;font-size:14px}.ncard .acts{flex-wrap:wrap;gap:6px;display:flex}.notebox textarea{border:1px solid var(--line);background:var(--surface-2);resize:vertical;border-radius:8px;width:100%;min-height:110px;padding:8px 10px;font-size:13.5px}.notebox blockquote{background:var(--surface-2);font:12px/1.5 var(--mono);color:var(--muted);white-space:pre-wrap;border-left:3px solid #c99a06;border-radius:0 6px 6px 0;max-height:120px;margin:0;padding:6px 10px;overflow:auto}.rc{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--step) 6%, var(--surface));flex-direction:column;gap:8px;padding:10px 12px;display:flex}.rc-row{flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.rc-row select{border:1px solid var(--line);background:var(--surface);border-radius:6px;max-width:250px;height:28px;font-size:12.5px}.rc-cap{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:12px;padding:10px 12px;display:flex}.rc-av{background:var(--step-bg);width:34px;height:34px;color:var(--step);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.rc-av span{align-items:flex-end;gap:2px;height:14px;display:flex}.rc-av i{background:currentColor;border-radius:2px;width:3px;height:4px}.rc.talking .rc-av i{animation:.9s ease-in-out infinite rcbar}.rc.talking .rc-av i:nth-child(2){animation-delay:.15s}.rc.talking .rc-av i:nth-child(3){animation-delay:.3s}.rc.talking .rc-av i:nth-child(4){animation-delay:.45s}@keyframes rcbar{0%,to{height:4px}50%{height:14px}}@media (prefers-reduced-motion:reduce){.rc.talking .rc-av i{height:10px;animation:none}}.rc-cap .who{font:600 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);flex-wrap:wrap;gap:8px;display:flex}.rc-cap p{color:var(--ink);margin:2px 0 0;font-size:16px;line-height:1.5}.rc-cap p.muted{color:var(--muted);font-style:italic}.rc-ask{align-items:center;gap:6px;display:flex}.rc-ask input{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex:1;min-width:0;height:34px;padding:0 10px;font-size:13.5px}.rc-log{flex-direction:column;gap:8px;max-height:260px;padding:2px;display:flex;overflow:auto}.rc-log .e{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:13.5px;line-height:1.5}.rc-log .e.you{background:var(--step);color:var(--surface);border-color:var(--step);align-self:flex-end;max-width:85%}.rc-log .e.answer{border-left:3px solid var(--loop)}.rc-log .e .t{font:600 10.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:2px;display:block}.rc-log .e .acts{gap:6px;margin-top:4px;display:flex}.md-b.speaking{background:color-mix(in srgb, var(--step) 9%, transparent);border-left-color:var(--step)}.fplayer{align-items:center;gap:4px;display:inline-flex}#fPlay{min-width:128px}#fLive[aria-pressed=true]{color:var(--step);border-color:color-mix(in srgb, var(--step) 45%, var(--line))}.fcap{border-bottom:1px solid var(--line);background:var(--step-bg);flex-wrap:wrap;align-items:center;gap:10px;min-height:36px;padding:6px 12px;font-size:13px;display:flex}.fcap .n{font:700 11px var(--sans);background:var(--step);color:var(--surface);white-space:nowrap;border-radius:10px;padding:2px 8px}.fcap .txt{min-width:0}.fcap code{font:600 12px var(--mono);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:0 4px}.fcap code.data{color:var(--step)}.fcap .bar{background:color-mix(in srgb, var(--step) 18%, transparent);border-radius:3px;flex:0 0 140px;height:5px;overflow:hidden}.fcap .bar i{background:var(--step);height:100%;transition:width .3s;display:block}.ovj{flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:flex;position:absolute;top:16px;left:30px}.ovj .c{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:12px;padding:2px 9px}.ovj .k{font:600 10px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin-left:2px}.ovj .ar{color:var(--faint);font-weight:600}.ovn{border:1.5px solid var(--line);border-left:5px solid var(--lc,var(--wire));background:var(--surface);box-shadow:var(--shadow);cursor:pointer;z-index:2;border-radius:10px;flex-direction:column;gap:3px;padding:8px 10px;transition:box-shadow .25s,border-color .25s,opacity .25s;display:flex;position:absolute;overflow:hidden}.ovn:hover,.ovn.sel{border-color:var(--wire)}.ovn-h{min-width:0;color:var(--lc);align-items:center;gap:6px;display:flex}.ovn-h svg{fill:none;stroke:currentColor;stroke-width:1.5px;flex:none;width:15px;height:15px}.ovn-h b{font:600 13.5px/1.2 var(--sans);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.ovn-h .meta{font:500 10.5px var(--sans);color:var(--faint);white-space:nowrap}.ovn .tag{font:600 10px var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--lc)}.ovn .fns{font:500 11px/1.35 var(--mono);color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ovn.actor{background:var(--surface-2);border-left-color:var(--ink)}.ovn.actor .ovn-h,.ovn.actor .tag{color:var(--ink)}.ovn.store,.ovn.ext{background:var(--surface-2);border-style:dashed dashed dashed solid}.ovn.store{border-radius:10px 10px 18px 18px}.ovn.cur{border-color:var(--step);box-shadow:0 0 0 4px color-mix(in srgb, var(--step) 28%, transparent), var(--shadow)}.ovn.hit{animation:.8s ease-out ovhit}@keyframes ovhit{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--step) 65%, transparent)}to{box-shadow:0 0 0 16px #0000}}.playing .ovn:not(.seen):not(.cur){opacity:.4}.playing .ovl:not(.lit){opacity:.45}.mm-svg .ove{fill:none;stroke:var(--wire);stroke-width:1.8px}.mm-svg .ove.ext{stroke:var(--muted);stroke-dasharray:6 4}.mm-svg .ove.back{stroke-dasharray:2 4}.mm-svg .ove.lit{stroke:var(--step);stroke-width:3px;stroke-dasharray:9 6;animation:.7s linear infinite ovdash}@keyframes ovdash{to{stroke-dashoffset:-15px}}.mm-svg .amb{fill:var(--step);opacity:.7}.playing .mm-svg .amb,.nolive .mm-svg .amb{display:none}.ovl{border:1px solid var(--line);background:var(--surface);max-width:160px;font:500 11.5px var(--mono);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;color:var(--ink);z-index:3;border-radius:12px;align-items:center;gap:5px;padding:1px 8px 1px 2px;display:inline-flex;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.ovl .n{font:600 10px var(--sans);background:var(--ink);min-width:18px;height:18px;color:var(--surface);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ovl.on,.ovl.lit{border-color:var(--step);background:var(--step-bg)}.ovl.lit .n{background:var(--step)}.ovl .x{color:var(--faint)}.ovl .cond{padding:0 4px}.packet{pointer-events:none;z-index:6;will-change:transform;position:absolute;top:0;left:0}.packet i{background:var(--step);width:16px;height:16px;box-shadow:0 0 0 5px color-mix(in srgb, var(--step) 30%, transparent), 0 0 16px var(--step);border-radius:50%;animation:1s ease-in-out infinite pkpulse;position:absolute;top:-8px;left:-8px}.packet.ext i{background:var(--decide);box-shadow:0 0 0 5px color-mix(in srgb, var(--decide) 30%, transparent), 0 0 16px var(--decide)}.packet span{font:600 11px var(--mono);background:var(--ink);color:var(--surface);text-overflow:ellipsis;white-space:nowrap;max-width:240px;box-shadow:var(--shadow);border-radius:5px;padding:2px 7px;position:absolute;top:-30px;left:12px;overflow:hidden}@keyframes pkpulse{50%{transform:scale(1.25)}}@media (prefers-reduced-motion:reduce){.mm-svg .amb{display:none}.mm-svg .ove.lit,.packet i{animation:none}}.dlrow{border-bottom:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap;gap:6px;padding:6px 8px;display:flex}.chg .dlrow{background:0 0;border:0;padding:2px 0}.lane{border:1.5px solid var(--line);border-top:4px solid var(--lc,var(--wire));background:var(--surface);height:52px;box-shadow:var(--shadow);border-radius:9px;flex-direction:column;justify-content:center;padding:5px 9px;display:flex;position:absolute;top:14px;overflow:hidden}.lane b{font:600 13px/1.2 var(--sans);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lane span{font:500 10.5px var(--mono);color:var(--faint);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lane.actor{border-top-color:var(--ink);background:var(--surface-2)}.lane.ext{background:var(--surface-2);border-style:solid dashed dashed}.lane.file{cursor:pointer}.lane.file:hover{border-color:var(--wire)}.mm-svg .lifeline{stroke:var(--line);stroke-width:1.5px;stroke-dasharray:3 4}.mm-svg .msg{stroke:var(--ink);stroke-width:1.6px}.mm-svg .msg.ext{stroke:var(--muted);stroke-dasharray:6 4}.mm-svg .msg.on{stroke:var(--step);stroke-width:3px}.mm-svg .phase-rule{stroke:var(--step);stroke-width:1px;opacity:.5}.phase{background:var(--step-bg);color:var(--step);border-radius:6px;align-items:baseline;gap:10px;padding:3px 10px;font-size:12.5px;display:flex;position:absolute}.phase span{color:var(--muted);font-size:11.5px}.msgl{background:color-mix(in srgb, var(--surface) 88%, transparent);font:500 12px var(--mono);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;text-align:left;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:1px 6px;display:inline-flex;position:absolute;overflow:hidden}.msgl:hover{border-color:var(--line)}.msgl.on{border-color:var(--step);background:var(--step-bg);color:var(--step)}.msgl.ext{color:var(--muted)}.msgl .n,.ftree .n{font:600 10px var(--sans);background:var(--ink);min-width:18px;height:18px;color:var(--surface);border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.cond{font:600 10.5px var(--mono);color:var(--decide);background:var(--decide-bg);border:1px solid color-mix(in srgb, var(--decide) 40%, transparent);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;max-width:260px;padding:0 5px;overflow:hidden}#fTree{padding:10px 14px 30px}.ftree{flex-direction:column;gap:2px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.ftree li{padding-left:calc(var(--d) * 22px)}.ftree li button{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;flex-wrap:wrap;align-items:center;gap:7px;width:100%;padding:3px 6px;display:flex}.ftree li button:hover{background:var(--surface-2)}.ftree li.on button{border-color:var(--step);background:var(--step-bg)}.ftree li.ext b{color:var(--muted);font-weight:500}.ftree b{font:600 12.5px var(--mono)}.ftree .where{color:var(--faint);font-size:11.5px}.ftree .cat{font:600 10px var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--lc);border:1px solid;border-radius:4px;padding:0 5px}.ftree .phase-li{background:var(--step-bg);color:var(--step);border-radius:6px;margin:12px 0 4px;padding:4px 10px}.ftree .phase-li span{color:var(--muted);font-size:12px}pre.snip{font:11.5px/1.5 var(--mono);background:var(--surface-2);border:1px solid var(--line);border-radius:6px;max-height:180px;margin:0;padding:6px 0;overflow:auto}pre.snip .cl{white-space:pre;padding-right:10px;display:block}pre.snip .cl:before{content:attr(data-n);text-align:right;width:3em;color:var(--faint);-webkit-user-select:none;user-select:none;padding-right:10px;display:inline-block}pre.snip .cl.ed{background:var(--step-bg)}.fnlist{flex-direction:column;gap:6px;max-height:320px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex;overflow:auto}.fcalls{color:var(--muted);padding-left:10px;font-size:11.5px}.ov-flows{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.ov-flows li{flex-direction:column;display:flex}.ov-flows span{color:var(--muted);font-size:12px}.ov-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.ov-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:6px;min-width:0;padding:12px 14px;display:flex}.ov-card.ov-wide{grid-column:1/-1}.ov-card h4{font:600 15px/1.2 var(--cond);flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.ov-card h5{font:600 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:8px 0 2px}.ov-lead{max-width:90ch;margin:0;font-size:15px;line-height:1.55}.ov-files,.ov-cmds,.ov-comps{flex-direction:column;gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.ov-files .linkbtn{word-break:break-all;font-size:12.5px}.ov-cmds li{flex-direction:column;gap:1px;display:flex}.ov-cmds code{font:12.5px var(--mono);background:var(--surface-2);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:5px;width:max-content;max-width:100%;padding:2px 6px}.ov-cmds span,.ov-comps span{color:var(--muted);font-size:12.5px}.ov-comps li{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.ov-comps li span:last-child{flex-basis:100%}.langbar{background:var(--surface-2);border-radius:6px;gap:2px;height:12px;display:flex;overflow:hidden}.langbar span{min-width:3px;display:block}.langlegend{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:12.5px;display:flex}.langlegend i,.ldot{vertical-align:-1px;border-radius:50%;flex:none;width:10px;height:10px;margin-right:5px;display:inline-block}.kpill{font:600 10px var(--sans);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);border-radius:4px;padding:2px 6px}.kpill.k-ui,.kpill.k-cli{color:var(--step);background:var(--step-bg);border-color:#0000}.kpill.k-api,.kpill.k-service{color:var(--loop);background:var(--loop-bg);border-color:#0000}.kpill.k-library{color:var(--make);background:var(--make-bg);border-color:#0000}.kpill.k-data{color:var(--decide);background:var(--decide-bg);border-color:#0000}.kpill.k-tests{color:var(--link);background:color-mix(in srgb, var(--link) 12%, transparent);border-color:#0000}.tree-head{border-bottom:1px solid var(--line);background:var(--surface);z-index:1;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex;position:sticky;top:0}.tree-head input{border:1px solid var(--line);background:var(--surface-2);border-radius:7px;flex:1;min-width:200px;max-width:340px;height:30px;padding:0 10px}.tree-head .sum{color:var(--muted);margin-left:auto;font-size:12.5px}#treeBody{padding:6px 0 30px;font-size:13px}.tr{padding:3px 14px 3px calc(14px + var(--d) * 18px);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;min-width:max-content;display:flex}.tr:hover{background:var(--surface-2)}.tr.sel{background:var(--step-bg)}.tr .caret{width:12px;color:var(--muted);font-size:11px}.tr.d .tn{font-weight:600}.tr.f{padding-left:calc(32px + var(--d) * 18px)}.tr .tn.bin{color:var(--faint)}.tr .tm{color:var(--faint);font:500 11.5px var(--mono);margin-left:auto;padding-left:16px}.tflag{font:600 9.5px var(--sans);letter-spacing:.05em;text-transform:uppercase;background:var(--surface-2);color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.tflag.t-README,.tflag.t-comp{color:var(--step);background:var(--step-bg);border-color:#0000}.tflag.t-entry{color:var(--loop);background:var(--loop-bg);border-color:#0000}.tflag.t-test{color:var(--link);border-color:#0000}.tflag.t-edited,.tflag.t-new{color:var(--make);background:var(--make-bg);border-color:#0000}.tflag.t-todo{color:var(--decide);background:var(--decide-bg);border-color:#0000}.tflag.t-note{background:color-mix(in srgb, #f5c518 25%, var(--surface));color:var(--ink);border-color:#0000}.acard{background:var(--surface);border:1.5px solid var(--line);border-top:4px solid var(--kc);box-shadow:var(--shadow);cursor:pointer;border-radius:10px;flex-direction:column;gap:3px;padding:8px 10px;display:flex;position:absolute;overflow:hidden}.acard:hover{border-color:var(--wire);border-top-color:var(--kc)}.acard.sel{box-shadow:0 0 0 4px var(--ring);border-color:var(--step);border-top-color:var(--kc)}.acard.flag:after{content:"!";background:var(--danger);width:16px;height:16px;color:var(--surface);font:700 11px/16px var(--sans);text-align:center;border-radius:50%;position:absolute;top:6px;right:6px}.acard .ac-top{align-items:center;gap:6px;display:flex}.acard .ac-m{font:500 11px var(--mono);color:var(--faint);margin-left:auto;margin-right:18px}.acard b{font:600 14px/1.25 var(--sans)}.acard .ac-p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.acard .ac-path{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.mm-svg .arch-e{stroke:var(--wire);stroke-width:1.8px}.mm-svg .arch-e.back{stroke-dasharray:5 4}.mm-svg .arch-e.on{stroke:var(--step);stroke-width:2.6px}.mm-svg .arch-n{font:600 10.5px var(--mono);fill:var(--muted)}.mm-node.component{border-left:4px solid var(--loop);font-weight:600}#fileOpen{border:1px solid var(--line);background:var(--surface-2);border-radius:6px;flex:1;min-width:220px;max-width:360px;height:28px;padding:0 8px;font-size:12.5px}.crumbs{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.crumbs b{color:var(--ink);font-weight:600}.code-b{margin-bottom:6px}.md h3.codeh{font:600 12.5px var(--mono);color:var(--muted);border:0;gap:10px;margin:10px 0 4px;padding:0;display:flex}.md h3.codeh span{color:var(--faint);font-weight:400}.md pre.md-code.code{counter-reset:none;margin:0;padding:8px 0}.md pre.md-code.code code{display:block}.md pre.md-code.code .cl{white-space:pre;padding:0 12px 0 0;display:block}.md pre.md-code.code .cl:before{content:attr(data-n);text-align:right;width:3.6em;color:var(--faint);-webkit-user-select:none;user-select:none;padding-right:12px;display:inline-block}.md pre.md-code.code .cl.ed{background:var(--make-bg)}.toast{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--surface);z-index:20;border-radius:8px;max-width:calc(100% - 32px);padding:8px 14px;font-size:13px;position:fixed;transform:translate(-50%)}.mode-nav{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;gap:2px;margin-left:12px;padding:2px;display:inline-flex}.mode-pill{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-family:inherit;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.mode-pill:hover{color:var(--ink);background:#0000000a}:root[data-theme=dark] .mode-pill:hover{background:#ffffff0f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mode-pill:hover{background:#ffffff0f}}.mode-pill.active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 3px #00000014}.mode-pill svg{opacity:.8}.mode-pill.active svg{opacity:1}:root{--pink:#f36;--pink-hover:#e62055;--pink-bg:#ff33661f;--pink-border:#ff33664d}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--pink:#e11d48;--pink-hover:#be123c;--pink-bg:#ffe4e6;--pink-border:#fda4af}}:root[data-theme=light]{--pink:#e11d48;--pink-hover:#be123c;--pink-bg:#ffe4e6;--pink-border:#fda4af}html{scroll-behavior:smooth}.hub-nav{align-items:center;gap:22px;margin-left:auto;margin-right:14px;display:inline-flex}.hub-nav-link{color:var(--muted);font-size:13.5px;font-weight:500;text-decoration:none;transition:color .15s}.hub-nav-link:hover{color:var(--ink)}@media (max-width:800px){.hub-nav-link{display:none}}.hub{max-width:1140px;margin:0 auto;padding:30px 20px 80px}.eyebrow-tag{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--pink);margin-bottom:18px;font-size:11px;font-weight:700;display:inline-block}.landing-hero{grid-template-columns:1.15fr .95fr;align-items:center;gap:48px;padding:30px 0 80px;display:grid}@media (max-width:900px){.landing-hero{grid-template-columns:1fr;gap:36px;padding:10px 0 40px}}.hero-title{font-family:var(--cond);letter-spacing:-.03em;color:var(--ink);margin:0 0 20px;font-size:clamp(42px,6vw,68px);font-weight:800;line-height:1.04}.pink-text{color:var(--pink)}.hero-desc{color:var(--muted);max-width:520px;margin:0 0 32px;font-size:clamp(15.5px,2vw,17.5px);line-height:1.6}.hero-cta-group{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn-pink{background:var(--pink);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--sans);white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:8px;padding:11px 22px;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 2px 8px #ff336640;color:#fff!important}.btn-pink:hover{background:var(--pink-hover);transform:translateY(-1px);box-shadow:0 4px 14px #ff336659;color:#fff!important}.btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);font-size:14px;font-weight:500;font-family:var(--sans);white-space:nowrap;border-radius:8px;align-items:center;padding:11px 20px;text-decoration:none;transition:all .15s;display:inline-flex}.btn-ghost:hover{background:var(--surface-2);border-color:var(--wire)}.btn-hero-secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--sans);white-space:nowrap;border-radius:8px;align-items:center;gap:8px;padding:10px 22px;text-decoration:none;transition:all .15s;display:inline-flex}.btn-hero-secondary:hover{border-color:var(--pink);color:var(--pink);background:var(--surface-2);transform:translateY(-1px)}.mockup-window{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:22px;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000024}:root[data-theme=dark] .mockup-window{background:#14191f;border-color:#26303b;box-shadow:0 20px 48px #00000073}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mockup-window{background:#14191f;border-color:#26303b;box-shadow:0 20px 48px #00000073}}.mockup-header{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}.mockup-tabs{font-family:var(--mono);color:var(--faint);letter-spacing:.05em;gap:10px;font-size:11px;display:flex}.m-tab{font-family:inherit;font-size:inherit;letter-spacing:inherit;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 10px;transition:all .15s}.m-tab:hover{color:var(--ink);border-color:var(--line);background:var(--surface-2)}.m-tab.active{color:var(--pink);background:var(--pink-bg);border-color:var(--pink-border);font-weight:700}.mockup-steps{flex-direction:column;gap:9px;margin-bottom:18px;display:flex}.m-step{background:var(--surface-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;font-size:13.5px;display:flex}.m-num{font-family:var(--mono);color:var(--faint);font-size:11px}.m-text{flex:1}.gap-step{border-color:var(--pink-border);background:var(--pink-bg)}.badge-gap{background:var(--pink);color:#fff;letter-spacing:.05em;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.mockup-ai-box{background:var(--surface-2);border:1px dashed var(--pink-border);border-radius:10px;padding:14px 16px}.m-ai-msg{color:var(--ink);margin:0 0 10px;font-size:12.5px;line-height:1.45}.pink-highlight{color:var(--pink);font-style:italic;font-weight:600}.m-ai-actions{gap:8px;display:flex}.btn-m-accept{background:var(--pink);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:opacity .15s}.btn-m-accept:hover{opacity:.9}.btn-m-keep{background:var(--surface);color:var(--muted);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:12px}.btn-m-keep:hover{color:var(--ink)}.landing-section{border-top:1px solid var(--line);padding:80px 0;scroll-margin-top:24px}.section-header{max-width:680px;margin-bottom:44px}.section-title{font-family:var(--cond);letter-spacing:-.02em;color:var(--ink);margin:0 0 14px;font-size:clamp(28px,4.5vw,42px);font-weight:700;line-height:1.15}.section-desc{color:var(--muted);margin:0;font-size:clamp(15px,1.8vw,17px);line-height:1.6}.cards-grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.feature-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px 24px;transition:transform .2s,border-color .2s}.feature-card:hover{border-color:var(--wire);transform:translateY(-2px)}.feature-icon-box{background:var(--pink);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:20px;font-size:16px;font-weight:700;display:flex}.feature-title{font-family:var(--cond);color:var(--ink);margin:0 0 10px;font-size:20px;font-weight:700}.feature-text{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.process-steps-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-bottom:48px;display:grid}.process-col{padding-top:18px;position:relative}.process-line{background:var(--pink);opacity:.85;height:2px;position:absolute;top:0;left:0;right:0}.process-num{font-family:var(--mono);color:var(--pink);margin-bottom:12px;font-size:12px;font-weight:700;display:block}.process-heading{font-family:var(--cond);color:var(--ink);margin:0 0 8px;font-size:17px;font-weight:700}.process-text{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.comparison-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;display:grid}.comparison-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:30px 28px}.comp-label{font-family:var(--mono);letter-spacing:.1em;color:var(--pink);margin-bottom:8px;font-size:11px;font-weight:700;display:inline-block}.comp-title{font-family:var(--cond);color:var(--ink);margin:0 0 18px;font-size:22px;font-weight:700}.comp-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.comp-list li{color:var(--muted);padding-left:20px;font-size:14px;line-height:1.5;position:relative}.comp-list li:before{content:"•";color:var(--pink);font-weight:700;position:absolute;top:0;left:4px}.tool-banner-card{background:var(--surface);border:1.5px solid var(--line);cursor:pointer;border-radius:16px;grid-template-columns:1.25fr 1fr;align-items:center;gap:36px;padding:34px 32px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid}.tool-banner-card:focus-visible{outline:2px solid var(--pink);outline-offset:3px}@media (max-width:820px){.tool-banner-card{grid-template-columns:1fr;gap:24px;padding:26px 20px}}.tool-banner-card:hover{border-color:var(--pink);transform:translateY(-2px);box-shadow:0 8px 24px #0000000f}.badge-avail{background:var(--pink);color:#fff;font-family:var(--mono);letter-spacing:.08em;border-radius:999px;margin-bottom:14px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-block}.tool-banner-title{font-family:var(--cond);color:var(--ink);margin:0 0 10px;font-size:26px;font-weight:700}.tool-banner-desc{color:var(--muted);margin:0 0 20px;font-size:14.5px;line-height:1.55}.tool-link-btn{color:var(--pink);cursor:pointer;font-size:14.5px;font-weight:600;font-family:var(--sans);background:0 0;border:none;align-items:center;gap:6px;padding:0;text-decoration:underline;transition:gap .15s;display:inline-flex}.tool-link-btn:hover{gap:10px}.tool-banner-footer{color:var(--muted);margin-top:14px;font-size:12.5px}.tool-banner-footer .demo-link{color:var(--pink);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0 2px;font-family:inherit;text-decoration:underline}.tool-banner-tags{flex-wrap:wrap;gap:8px;display:flex}.pill-tag{background:var(--surface-2);border:1px solid var(--line);color:var(--ink);font-size:12px;font-family:var(--sans);border-radius:999px;padding:6px 12px}.landing-cta-section{text-align:center;border-top:1px solid var(--line);padding:90px 20px}.bottom-cta-title{font-family:var(--cond);letter-spacing:-.02em;color:var(--ink);max-width:640px;margin:0 auto 32px;font-size:clamp(32px,5vw,54px);font-weight:800;line-height:1.15}.landing-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:30px 0 10px;font-size:13px;display:flex}@media (max-width:600px){.landing-footer{text-align:center;flex-direction:column;gap:8px}}.footer-brand{color:var(--ink);font-weight:600}.footer-tagline{color:var(--muted)}.hub-git-bar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:24px 28px}.hub-git-bar-header{align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.hub-git-bar-header svg{color:var(--pink);flex-shrink:0;margin-top:2px}.hub-git-bar-header h3{font-family:var(--cond);color:var(--ink);margin:0 0 4px;font-size:18px;font-weight:700}.hub-git-bar-header p{color:var(--muted);margin:0;font-size:13px}.hub-git-input-group{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.hub-git-input-group input{border:1px solid var(--line);background:var(--surface-2);min-width:240px;color:var(--ink);font-family:var(--mono);border-radius:8px;flex:1;padding:9px 14px;font-size:13px}.hub-git-input-group input:focus{border-color:var(--pink);outline:none}.hub-git-input-group select{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13px}.hub-git-samples{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.hub-git-pill{background:var(--surface-2);border:1px solid var(--line);cursor:pointer;color:var(--ink);font-family:var(--mono);border-radius:6px;padding:3px 8px;font-size:11.5px;transition:all .15s}.hub-git-pill:hover{border-color:var(--pink);color:var(--pink);background:var(--pink-bg)}button.hub-nav-link{cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}.toast-stack{z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.toast-stack .toast{pointer-events:auto;font:inherit;text-align:center;cursor:pointer;max-width:min(90vw,460px);position:static;inset:auto;transform:none}.route-fade{animation:.28s both route-in}@keyframes route-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.route-fade{animation:none}}.export-head{border-bottom:1px solid #d8dee5;margin-bottom:16px;padding-bottom:12px}.export-head h1{color:#0f1720;margin:0 0 4px;font-size:20px;font-weight:700}.export-head p{color:#51606f;max-width:720px;margin:0;font-size:13px}.export-head .export-meta{color:#7a8794;margin-top:6px;font-size:12px}.export-head .export-legend{color:#51606f;gap:14px;margin-top:8px;font-size:12px;display:flex}.export-head .export-legend span:before{content:"";vertical-align:middle;opacity:.5;background:currentColor;width:10px;height:2px;margin-right:6px;display:inline-block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.skip-link:focus{z-index:100;border:1px solid var(--step);background:var(--surface);width:auto;height:auto;color:var(--ink);box-shadow:var(--shadow);border-radius:8px;padding:8px 14px;font-size:13px;font-weight:500;text-decoration:none;position:fixed;top:12px;left:12px;overflow:visible}[role=treeitem]:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible{outline:2px solid var(--step);outline-offset:2px;border-radius:4px}.modal .box:focus,.modal .box:focus-visible{outline:none}.modal{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.demo-note{border:1px solid color-mix(in srgb, var(--step) 28%, var(--line));background:color-mix(in srgb, var(--step) 6%, var(--surface));border-radius:8px;align-items:flex-start;gap:8px;padding:9px 10px;font-size:12.5px;line-height:1.45;display:flex}.demo-chip{background:var(--step);color:var(--surface);white-space:nowrap;border-radius:999px;flex:none;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.6}.demo-note .linkbtn{font-size:inherit}.demo-banner{border:1px solid color-mix(in srgb, var(--step) 28%, var(--line));background:color-mix(in srgb, var(--step) 6%, var(--surface));color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;line-height:1.45;display:flex}.demo-banner>span:first-child{flex:1;min-width:0}.demo-banner strong{font-weight:600}.demo-banner button{flex:none}.demo-banner .demo-dismiss{color:var(--muted);background:0 0;border:0;padding:2px 4px;font-size:16px;line-height:1}.demo-banner .demo-dismiss:hover{color:var(--ink)}@media (max-width:640px){.demo-banner{flex-wrap:wrap;align-items:flex-start}}@media (min-width:1280px){.bar{flex-wrap:nowrap}.bar .brand{flex:auto;min-width:0}.bar .brand>div{min-width:0}.bar .brand p:not(.brand-title){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}@media (min-width:1280px) and (max-width:1359px){.bar .brand p:not(.brand-title){display:none}}@media (prefers-reduced-motion:reduce){.ai-banner,.ovn.hit{animation:none}.btn-spinner{animation-duration:2s}}
