/* Step scenes: small copies of the real screens. A 480x360 stage scaled to fit .vis by scenes.js. */
.vis .stage{position:relative;z-index:1;width:480px;height:360px;flex:0 0 auto;transform:scale(var(--k,1));transform-origin:center;font:13px/1.4 Inter,system-ui,sans-serif;color:#1c2233;text-align:left}
.stage *{box-sizing:border-box;margin:0}
.stage [data-t]{transition:opacity .35s ease,transform .35s cubic-bezier(.2,.7,.2,1)}
.stage.run [data-t]:not([data-cls]):not(.shown){opacity:0;transform:translateY(6px)}
.stage.run .gone{opacity:0!important;transform:translateY(-4px)!important;pointer-events:none}
.stage:not(.run) .tmp{display:none}
.stage .typing-now::after{content:"";display:inline-block;width:2px;height:1.05em;margin-left:1px;vertical-align:-2px;background:currentColor;animation:sc-caret .7s step-end infinite}
@keyframes sc-caret{50%{opacity:0}}

/* Shared window chrome */
.stage .win{position:absolute;background:#fff;border:1px solid #dfe3ec;border-radius:14px;box-shadow:0 18px 40px -18px rgba(40,34,90,.35),0 2px 6px rgba(40,34,90,.06);overflow:hidden}
.stage .bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-bottom:1px solid #eceef4;background:#f7f8fb;font-size:11.5px;color:#5a6378}
.stage .bar i{width:9px;height:9px;border-radius:50%;background:#e2e4ec}
.stage .bar i:first-child{background:#ff6159}.stage .bar i:nth-child(2){background:#ffbd2e}.stage .bar i:nth-child(3){background:#28c941}
.stage .bar span{margin-left:8px;font-weight:600}
.stage .cap{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#8a92a6}
.stage .ava{display:inline-block;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#f9a03f,#d62976 55%,#4f5bd5);flex:0 0 auto}
.stage .sw{position:relative;display:inline-block;width:30px;height:18px;border-radius:9px;background:#d5d8e2;transition:background .3s}
.stage .sw::after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.stage .sw.on{background:#2fb36b}.stage .sw.on::after{transform:translateX(12px)}
.stage .mono{font-family:ui-monospace,"SF Mono",Consolas,monospace}

/* 1. Agent app */
.sc-app .win{inset:14px 10px 14px 10px}
.sc-app .body{display:flex;height:calc(100% - 30px - 40px)}
.sc-app aside{width:132px;padding:12px 10px;border-right:1px solid #eceef4;background:#fbfbfd;display:flex;flex-direction:column;gap:5px}
.sc-app .file{font-size:12px;padding:3px 7px;border-radius:6px;color:#3b4357}
.sc-app .file.dir{font-weight:600}
.sc-app .file.sub{padding-left:18px}
.sc-app .file.new{background:#e5f6ec;color:#167a45;font-weight:600}
.sc-app .chat{flex:1;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.sc-app .msg{padding:8px 11px;border-radius:12px;max-width:92%}
.sc-app .me{align-self:flex-end;background:#50459b;color:#fff;border-bottom-right-radius:4px}
.sc-app .ai{background:#f1f2f6;border-bottom-left-radius:4px}
.sc-app .who{font-size:11px;font-weight:700;color:#50459b}
.sc-app .tool{font:11.5px/1.35 ui-monospace,Consolas,monospace;padding:6px 9px;border-radius:8px;background:#f6f7fa;border:1px solid #eceef4;color:#3b4357}
.sc-app .tool b{color:#50459b;margin-right:6px}
.sc-app .tool.ok{background:#eefaf3;border-color:#c9ecd7;color:#167a45}
.sc-app .tool .out{color:#8a92a6}
.sc-app .composer{position:absolute;left:142px;right:12px;bottom:10px;height:30px;border:1px solid #dfe3ec;border-radius:9px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:11.5px;color:#9aa1b2}
.sc-app .composer em{font-style:normal;font-size:10.5px;color:#167a45;background:#eefaf3;padding:2px 7px;border-radius:6px}

/* 3. Terminal */
.sc-term .win{inset:16px 10px 58px;background:#141824;border-color:#262c3c}
.sc-term .bar{background:#1d2232;border-color:#262c3c;color:#9aa1b2}
.sc-term .tb{padding:12px 14px;font:12.5px/1.75 ui-monospace,"SF Mono",Consolas,monospace;color:#d7dbe6}
.sc-term .p{color:#7ee2a8}.sc-term .dim{color:#6f7891}.sc-term .g{color:#7ee2a8}
.sc-term .badge{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #dfe3ec;border-radius:999px;padding:8px 14px;font-weight:600;font-size:12.5px;box-shadow:0 8px 20px -10px rgba(40,34,90,.35);white-space:nowrap}
.sc-term.run .badge:not(.shown){transform:translate(-50%,6px)}
.sc-term .dot{width:8px;height:8px;border-radius:50%;background:#2fb36b;box-shadow:0 0 0 3px #d8f3e3}

/* 5. Meta app dashboard */
.sc-meta .win{inset:14px 10px}
.sc-meta .dh{display:flex;align-items:center;justify-content:space-between;height:40px;padding:0 14px;border-bottom:1px solid #eceef4}
.sc-meta .dh b{font-size:13.5px}
.sc-meta .mode{font-size:10.5px;font-weight:600;color:#9a6200;background:#fff3db;padding:3px 8px;border-radius:6px}
.sc-meta .db{display:flex;height:calc(100% - 40px)}
.sc-meta nav{width:112px;padding:10px 8px;border-right:1px solid #eceef4;background:#fbfbfd;display:flex;flex-direction:column;gap:3px}
.sc-meta nav p{font-size:11.5px;padding:5px 8px;border-radius:6px;color:#5a6378}
.sc-meta nav p.on{background:#e8f0fe;color:#1a5fd0;font-weight:600}
.sc-meta .dm{flex:1;padding:10px 14px;display:flex;flex-direction:column;gap:6px}
.sc-meta .perm{display:flex;align-items:center;justify-content:space-between;padding:6px 9px;border:1px solid #eceef4;border-radius:8px;font:11px ui-monospace,Consolas,monospace;color:#3b4357}
.sc-meta .acct{display:flex;align-items:center;gap:8px;margin-top:4px;font-weight:600;font-size:12px}
.sc-meta .tok{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:8px;background:#f6f7fa;font:11.5px ui-monospace,Consolas,monospace;color:#3b4357}
.sc-meta .tok em.warn{color:#9a6200}
.sc-meta .tok em{font:600 10.5px Inter,sans-serif;font-style:normal;color:#167a45}
.sc-meta .modal{position:absolute;left:50%;top:50%;width:230px;margin:-70px 0 0 -115px;background:#fff;border-radius:14px;padding:16px;box-shadow:0 24px 50px -12px rgba(20,24,40,.45);border:1px solid #dfe3ec;display:flex;flex-direction:column;gap:6px;z-index:2}
.sc-meta .modal span{font-size:11.5px;color:#5a6378}
.sc-meta .code6{display:flex;gap:6px;margin-top:4px}
.sc-meta .code6 i{font-style:normal;width:28px;height:34px;border:1px solid #dfe3ec;border-radius:7px;display:grid;place-items:center;font-weight:700;font-size:15px}

/* 6. Post and Direct */
.sc-dm .ph{position:absolute;top:12px;bottom:12px;width:178px;background:#fff;border:1px solid #dfe3ec;border-radius:24px;box-shadow:0 18px 40px -18px rgba(40,34,90,.35);overflow:hidden;padding:10px}
.sc-dm .ph.l{left:14px}.sc-dm .ph.r{right:14px}
.sc-dm .hd{display:flex;align-items:center;gap:7px;font-size:12px;padding:2px 2px 8px;border-bottom:1px solid #f0f1f5}
.sc-dm .img{margin:8px 0;height:160px;border-radius:10px;background:linear-gradient(150deg,#50459b,#d62976);color:#fff;font-weight:750;font-size:17px;line-height:1.15;display:flex;align-items:flex-end;padding:12px;letter-spacing:-.02em}
.sc-dm .cm{font-size:12px;padding:3px 2px}
.sc-dm .cm.dim{color:#8a92a6}
.sc-dm .hook{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;font:10.5px ui-monospace,Consolas,monospace;color:#5a6378}
.sc-dm.run .hook:not(.shown){transform:translate(-50%,-44%)}
.sc-dm .hook b{font-weight:600;color:#167a45;background:#eefaf3;padding:3px 7px;border-radius:6px}
.sc-dm .hook i{display:block;width:60px;height:2px;background:repeating-linear-gradient(90deg,#50459b 0 6px,transparent 6px 10px)}
.sc-dm .th{display:flex;flex-direction:column;gap:7px;padding-top:12px}
.sc-dm .bub{font-size:12px;padding:8px 11px;border-radius:16px;max-width:92%}
.sc-dm .bub.me{align-self:flex-end;background:#efeff4}
.sc-dm .bub.in{background:linear-gradient(135deg,#7638fa,#3797f0);color:#fff;border-bottom-left-radius:5px}
.sc-dm .typing{display:flex;gap:4px;padding:10px 12px;background:#efeff4;border-radius:16px;width:max-content}
.sc-dm .typing i{width:6px;height:6px;border-radius:50%;background:#9aa1b2;animation:sc-dot 1s infinite}
.sc-dm .typing i:nth-child(2){animation-delay:.15s}.sc-dm .typing i:nth-child(3){animation-delay:.3s}
@keyframes sc-dot{0%,100%{opacity:.3}50%{opacity:1}}
.sc-dm .seen{font-size:10.5px;color:#8a92a6;align-self:flex-start;padding-left:4px}

/* 7. Event log */
.sc-log .win{inset:22px 10px}
.sc-log .lh{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #eceef4}
.sc-log .lh b{font-size:14px}
.sc-log .lh span.st{font-size:11px;color:#8a92a6;margin-right:8px}
.sc-log .rows{padding:8px 10px;display:flex;flex-direction:column;gap:6px}
.sc-log .row{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;background:#f8f9fb;font-size:12px}
.sc-log time{font:11px ui-monospace,Consolas,monospace;color:#8a92a6}
.sc-log em{font-style:normal;font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px}
.sc-log .ok em{background:#e5f6ec;color:#167a45}
.sc-log .skip em{background:#eef0f5;color:#5a6378}
.sc-log .dup em{background:#fff3db;color:#9a6200}


/* 2. Domain */
.sc-dom .win{inset:16px 10px}
.sc-dom .srch{display:flex;align-items:center;gap:8px;margin:14px 16px 10px;padding:4px 4px 4px 12px;border:1.5px solid #f38020;border-radius:10px;font-size:15px}
.sc-dom .srch .q{flex:1;font-weight:600}
.sc-dom .srch b{background:#f38020;color:#fff;font-size:12px;padding:7px 12px;border-radius:7px}
.sc-dom .res{padding:0 16px;display:flex;flex-direction:column;gap:7px}
.sc-dom .r{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #eceef4;border-radius:10px;font-size:12.5px}
.sc-dom .r .mono{font-size:13px;font-weight:600}
.sc-dom .ok{font-size:10.5px;font-weight:600;color:#167a45;background:#e5f6ec;padding:2px 7px;border-radius:6px}
.sc-dom .r em{font-style:normal;font-weight:600}
.sc-dom .r.alt em{color:#167a45}
.sc-dom .note{font-size:11.5px;color:#167a45;padding-left:4px}
.sc-dom .buy{position:absolute;left:16px;right:16px;bottom:14px;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f7f8fb;border-radius:10px;font-weight:600;font-size:13px}
.sc-dom .buy b{font-size:12px;color:#fff;background:#f38020;padding:7px 14px;border-radius:8px;transition:background .3s}
.sc-dom .buy .b,.sc-dom .buy.done .a{display:none}.sc-dom .buy.done .b{display:inline}
.sc-dom .buy.done b{background:#2fb36b}

/* 4. DNS and HTTPS */
.sc-dns .win:first-child{left:10px;right:10px;top:14px;height:186px}
.sc-dns .tbl{padding:10px 14px;display:flex;flex-direction:column;gap:6px;font-size:12px}
.sc-dns .th,.sc-dns .tr{display:grid;grid-template-columns:52px 74px 1fr 86px;align-items:center;gap:8px}
.sc-dns .th{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a92a6;padding:0 8px}
.sc-dns .tr{padding:10px 8px;border:1px solid #eceef4;border-radius:9px}
.sc-dns .ty{font-weight:700;color:#50459b}
.sc-dns .pill{justify-self:start;font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:6px;background:#fff3db;color:#9a6200;transition:background .3s,color .3s}
.sc-dns .pill .b,.sc-dns .pill.on .a{display:none}.sc-dns .pill.on .b{display:inline}
.sc-dns .pill.on{background:#e5f6ec;color:#167a45}
.sc-dns .url2{left:40px;right:40px;top:226px;height:46px;display:flex;align-items:center;gap:9px;padding:0 16px;font-size:15px;font-weight:600}
.sc-dns .lk{width:16px;height:16px;flex:0 0 auto}
.sc-dns .cert{position:absolute;left:0;right:0;top:288px;text-align:center;font-size:12.5px;font-weight:600;color:#167a45}

/* 7. Panel */
.sc-panel .win{inset:16px 10px}
.sc-panel .ph2{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #eceef4}
.sc-panel .ph2 b{font-size:14px}
.sc-panel .lock{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#167a45;background:#eefaf3;padding:3px 8px;border-radius:6px}
.sc-panel .lk{width:11px;height:11px}
.sc-panel .kw{padding:10px 14px;display:flex;flex-direction:column;gap:7px}
.sc-panel .k{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #eceef4;border-radius:10px;font-size:12px}
.sc-panel .chip{justify-self:start;font-weight:700;color:#50459b;background:#eeedf7;padding:3px 9px;border-radius:999px;min-height:1.4em}
.sc-panel .t{color:#3b4357;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc-panel .pause{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f7f8fb;border-radius:10px;font-size:12.5px;font-weight:600}
.sc-panel .login{position:absolute;left:50%;top:50%;width:230px;margin:-74px 0 0 -115px;background:#fff;border:1px solid #dfe3ec;border-radius:14px;box-shadow:0 24px 50px -12px rgba(20,24,40,.45);padding:16px;display:flex;flex-direction:column;gap:9px;z-index:2}
.sc-panel .pw{height:34px;border:1px solid #dfe3ec;border-radius:8px;padding:0 10px;display:flex;align-items:center;letter-spacing:.15em;font-size:14px}
.sc-panel .go{align-self:stretch;text-align:center;background:#50459b;color:#fff;border-radius:8px;padding:8px;font-weight:600;font-size:12.5px}

/* 8. Check from a second account */
.sc-dm .cm.tag{display:inline-block;margin-top:4px;font-size:10.5px;font-weight:600;color:#9a6200;background:#fff3db;padding:2px 7px;border-radius:6px}
.sc-dm .ava.b2{background:linear-gradient(135deg,#3797f0,#2fb36b)}

@media (prefers-reduced-motion:reduce){
  .stage [data-t]{transition:none}
  .stage .typing i{animation:none}
}

/* 1. Professional Instagram account */
.sc-ig .win{inset:16px 10px}
.sc-ig .me{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #eceef4}
.sc-ig .me b{font-size:14px}
.sc-ig .kind{margin-left:auto;font-style:normal;font-size:11px;font-weight:600;padding:3px 9px;border-radius:7px;background:#f1f2f6;color:#5a6378;transition:background .3s,color .3s}
.sc-ig .kind .b,.sc-ig .kind.done .a{display:none}.sc-ig .kind.done .b{display:inline}
.sc-ig .kind.done{background:#e5f6ec;color:#167a45}
.sc-ig .row{display:flex;align-items:center;justify-content:space-between;margin:10px 16px 0;padding:10px 12px;border:1px solid #eceef4;border-radius:10px;font-size:13px;font-weight:600;transition:background .3s,border-color .3s}
.sc-ig .row.hl{background:#f3f0ff;border-color:#d9d2fb}
.sc-ig .row>span:not(.sw){color:#8a92a6}
.sc-ig .cap{margin:12px 16px 6px}
.sc-ig .opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 16px}
.sc-ig .opt{padding:9px 12px;border:1.5px solid #e2e4ec;border-radius:10px;font-weight:600;text-align:center;transition:border-color .3s,background .3s,color .3s}
.sc-ig .opt.pick{border-color:#50459b;background:#f3f0ff;color:#50459b}
.sc-ig .okl{position:absolute;left:16px;right:16px;bottom:12px;font-size:11.5px;font-weight:600;color:#167a45;background:#eefaf3;padding:8px 12px;border-radius:9px;text-align:center}
