.scene{border:1px solid var(--glass-border);background:radial-gradient(40rem 22rem at 25% 0%, #3ecf8e1a, transparent 70%), var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-highlight), var(--glass-shadow);border-radius:12px;grid-template-columns:minmax(0,1.7fr) minmax(16rem,1fr);margin:0;display:grid;overflow:hidden}.scene-stage{border-right:1px solid var(--glass-border);background-image:radial-gradient(#c8dcf024 1px,#0000 1px);background-size:22px 22px;align-items:center;min-height:15rem;display:grid;position:relative}.scene-scroll{scrollbar-width:thin;scrollbar-color:var(--ab-line) transparent;padding:1.25rem 1.25rem 4.5rem;overflow-x:auto}.scene svg{width:100%;min-width:600px;height:auto;display:block;overflow:visible}.edge-line{fill:none;stroke:#ffffff24;stroke-width:2px;transition:stroke .4s}.edge-flow{fill:none;stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:6 14;opacity:0;stroke:var(--ab-running)}.edge[data-state=run] .edge-flow{opacity:1;animation:.6s linear infinite flow}.edge[data-state=done] .edge-line{stroke:#6aa8ff99}.edge[data-state=skip] .edge-line{stroke:#9fb3c866;stroke-dasharray:3 6}.edge[data-state=fail] .edge-line{stroke:var(--ab-failed)}.edge[data-state=wait] .edge-line{stroke:var(--ab-waiting);stroke-dasharray:7 6}@keyframes flow{to{stroke-dashoffset:-20px}}.node-box{fill:#0a14268c;stroke:#ffffff29;stroke-width:1.5px;transition:fill .35s,stroke .35s}.node-label{fill:var(--ab-muted);font-family:var(--ab-mono);font-size:13px;font-weight:600;transition:fill .35s}.node-halo{fill:none;stroke-width:6px;opacity:0;transition:opacity .35s}.node[data-state=run] .node-box{fill:var(--ab-running);stroke:var(--ab-running)}.node[data-state=run] .node-label{fill:var(--ab-ink)}.node[data-state=run] .node-halo{stroke:var(--ab-running);opacity:.7;animation:1s ease-in-out infinite breathe}.node[data-state=wait] .node-box{fill:#f2b54424;stroke:var(--ab-waiting)}.node[data-state=wait] .node-label{fill:var(--ab-waiting)}.node[data-state=wait] .node-halo{stroke:var(--ab-waiting);opacity:.8;animation:.8s ease-in-out infinite breathe}.node[data-state=done] .node-box{fill:#6aa8ff1f;stroke:var(--ab-done)}.node[data-state=done] .node-label{fill:var(--ab-done)}.node[data-state=fail] .node-box{fill:#f27d7224;stroke:var(--ab-failed)}.node[data-state=fail] .node-label{fill:var(--ab-failed)}.node[data-state=skip] .node-box{fill:#0000;stroke:#9fb3c873;stroke-dasharray:4 4}.node[data-state=skip] .node-label{fill:#9fb3c899}@keyframes breathe{50%{opacity:.15}}.scene-flash{opacity:0;pointer-events:none;background:#f27d721f;justify-content:center;align-items:flex-start;padding-top:1rem;display:flex;position:absolute;inset:0}.scene-flash span{font-family:var(--ab-mono);color:#fff;background:var(--ab-failed);border-radius:999px;padding:.35rem 1rem;font-size:.95rem;font-weight:700;box-shadow:0 10px 30px -10px #f27d72cc}.scene-flash.on{animation:1.8s ease-out forwards flash}.scene-flash.on span{animation:.4s ease-out jolt}@keyframes flash{0%{opacity:0}6%{opacity:1}14%{opacity:.4}22%,75%{opacity:1}to{opacity:0}}@keyframes jolt{0%,to{transform:none}20%{transform:translate(-6px)rotate(-2deg)}40%{transform:translate(5px)rotate(1.5deg)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.scene-ask{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);background:#2822148c;border:1px solid #f2b544b3;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.5rem .8rem;width:max-content;max-width:calc(100% - 2rem);padding:.6rem .7rem .6rem 1rem;animation:.35s cubic-bezier(.2,.9,.3,1.3) rise;display:flex;position:absolute;bottom:1rem;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 16px 40px -16px #f2b54473}@keyframes rise{0%{opacity:0;transform:translate(-50%,12px)scale(.96)}}.scene-ask-prompt{color:var(--ab-waiting);margin:0;font-size:.92rem;font-weight:700}.scene-ask-buttons{gap:.4rem;display:flex}.scene-ask button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:.3rem .9rem;font-size:.85rem;font-weight:750;transition:transform .12s}.scene-ask button:hover{transform:translateY(-1px)}.scene-ask button:active{transform:scale(.96)}.scene-ask [data-choice=approve]{background:var(--ab-done);color:var(--ab-ink)}.scene-ask [data-choice=reject]{color:var(--ab-failed);border-color:var(--ab-failed);background:0 0}.scene-ask-timer{background:var(--ab-waiting);transform-origin:0;width:100%;height:3px;position:absolute;bottom:0;left:0}.scene-log{font-family:var(--ab-mono);flex-direction:column;min-width:0;font-size:.74rem;display:flex}.scene-log-head{border-bottom:1px solid var(--glass-border);color:var(--ab-text);font-family:var(--ab-font);justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1rem;font-size:.95rem;font-weight:750;display:flex}.scene-toggle{font:inherit;color:var(--ab-muted);border:1px solid var(--glass-border-strong);cursor:pointer;background:0 0;border-radius:999px;padding:.2rem .75rem;font-size:.78rem;font-weight:650}.scene-toggle:hover{color:var(--ab-text);border-color:var(--ab-muted)}.scene-log ol{flex-direction:column;gap:.5rem;margin:0;padding:.8rem 1rem 1rem;list-style:none;display:flex}.scene-log li{color:var(--ab-muted);padding-left:1rem;line-height:1.45;animation:.3s ease-out slide;position:relative}.scene-log li:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:.45em;left:0}@keyframes slide{0%{opacity:0;transform:translate(-6px)}}.scene-log li[data-tone=run]{color:var(--ab-running)}.scene-log li[data-tone=wait]{color:var(--ab-waiting)}.scene-log li[data-tone=done]{color:var(--ab-done)}.scene-log li[data-tone=fail]{color:var(--ab-failed)}@media (max-width:860px){.scene{grid-template-columns:1fr}.scene-stage{border-right:0;border-bottom:1px solid var(--glass-border)}}@media (prefers-reduced-motion:reduce){.scene *,.scene :before{transition:none!important;animation:none!important}}.scene-toggle{min-height:2.5rem;padding:0 .95rem}.scene-ask button{min-height:2.5rem}.scene-log-head{padding-block:.55rem}:root[data-theme=light] .scene-stage{background-image:radial-gradient(#0f1b2d1f 1px,#0000 1px)}:root[data-theme=light] .edge-line{stroke:#0f1b2d2e}:root[data-theme=light] .edge[data-state=done] .edge-line{stroke:#237a3c8c}:root[data-theme=light] .node-box{fill:#ffffffb8;stroke:#0f1b2d2e}:root[data-theme=light] .node[data-state=run] .node-box{fill:var(--ab-running);stroke:#3fb6d1}:root[data-theme=light] .node[data-state=wait] .node-box{fill:#f2b54433}:root[data-theme=light] .node[data-state=done] .node-box{fill:#6aa8ff38;stroke:#4cae6a}:root[data-theme=light] .node[data-state=wait] .node-label{fill:var(--ab-waiting-text)}:root[data-theme=light] .node[data-state=done] .node-label{fill:var(--ab-done-text)}:root[data-theme=light] .node[data-state=fail] .node-label{fill:var(--ab-failed-text)}:root[data-theme=light] .node[data-state=skip] .node-box{stroke:#4b638080}:root[data-theme=light] .node[data-state=skip] .node-label{fill:#4b6380bf}:root[data-theme=light] .scene-ask{background:#fff7e4e0;border-color:#c88c14b3}:root[data-theme=light] .scene-ask-prompt{color:var(--ab-waiting-text)}:root[data-theme=light] .scene-ask [data-choice=reject]{color:var(--ab-failed-text);border-color:var(--ab-failed-text)}:root[data-theme=light] .scene-log li[data-tone=run]{color:var(--ab-running-text)}:root[data-theme=light] .scene-log li[data-tone=wait]{color:var(--ab-waiting-text)}:root[data-theme=light] .scene-log li[data-tone=done]{color:var(--ab-done-text)}:root[data-theme=light] .scene-log li[data-tone=fail]{color:var(--ab-failed-text)}@media (max-width:600px){.scene-scroll{padding:1rem 1rem 5.5rem}.scene-ask{max-width:calc(100% - 1.5rem);bottom:.75rem}}
