/* Estúdio: substituir pessoa em vídeo (tela de envio + pop-up de geração/resultado) */
#hero.studio{display:block!important}
#hero.studio.compact{padding-top:14px}
#hero.studio.compact .st-eyebrow,#hero.studio.compact h2,#hero.studio.compact .st-sub,#hero.studio.compact .chips{display:none!important}
#hero.studio.compact .slot{min-height:150px!important}
#hero.studio{width:100%;max-width:980px;margin:0 auto;padding:30px 0 12px;text-align:left}
#hero.studio .st-eyebrow{display:inline-block;padding:6px 12px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#cfc6ff;background:rgba(139,92,246,.16);border:1px solid rgba(167,139,250,.35);margin-bottom:14px}
#hero.studio h2{font-size:clamp(28px,4.4vw,44px);line-height:1.08;text-align:left;margin:0 0 10px;max-width:none}
#hero.studio h2 .mark{background:linear-gradient(135deg,#a78bfa,#f472b6);-webkit-background-clip:text;background-clip:text;color:transparent}
#hero.studio .st-sub{margin:0 0 22px;max-width:620px;text-align:left;color:#bdb6ea;font-size:16px;line-height:1.55}
#hero.studio .slots{display:grid!important;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 18px;padding:0}
#hero.studio .slot{position:relative;display:flex!important;flex-direction:column;justify-content:flex-end;align-items:stretch;min-height:clamp(280px,44vh,460px);padding:0!important;overflow:hidden;cursor:pointer;border-radius:22px!important;border:1.5px dashed rgba(255,255,255,.24)!important;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02))!important;box-shadow:none!important;transition:border-color .2s,background .2s,transform .2s}
#hero.studio .slot:hover,#hero.studio .slot.over{border-color:#a78bfa!important;background:linear-gradient(160deg,rgba(139,92,246,.2),rgba(255,255,255,.03))!important}
#hero.studio .slot .th{position:absolute!important;inset:0;width:auto!important;height:auto!important;border:0!important;background:none!important;border-radius:0!important;display:grid;place-items:center;font-size:0!important;overflow:hidden}
#hero.studio .slot .th:empty::before{content:"+";display:grid;place-items:center;width:62px;height:62px;border-radius:50%;font-size:34px;font-weight:300;color:#fff;background:linear-gradient(135deg,#8b5cf6,#ec4899);box-shadow:0 10px 28px rgba(139,92,246,.45);margin-bottom:46px}
#hero.studio .slot .th img,#hero.studio .slot .th video{width:100%;height:100%;object-fit:cover;display:block}
#hero.studio .slot>div:not(.th){position:relative;z-index:2;padding:16px 18px 18px;background:linear-gradient(180deg,rgba(10,8,30,0),rgba(10,8,30,.88) 60%);text-align:left}
#hero.studio .slot b{display:block;font-size:17px;color:#fff}
#hero.studio .slot small{display:block;margin-top:2px;color:#b9b3e6;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#hero.studio .slot .stp{position:absolute;z-index:3;top:14px;left:14px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;color:#fff;background:rgba(10,8,30,.7);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(6px)}
#hero.studio .slot .x{position:absolute;z-index:4;top:12px;right:12px;display:none;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(10,8,30,.75);color:#fff;font-size:13px}
#hero.studio .slot.has .x{display:grid;place-items:center}
#hero.studio .slot.has{border-style:solid!important;border-color:rgba(167,139,250,.6)!important}
#hero.studio .chips{margin-top:4px;justify-content:flex-start}
#hero.studio .chips button{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 14px;font-weight:600;font-size:13px;color:#d6d0ff;box-shadow:none}
#hero.studio .chips button:hover{background:rgba(139,92,246,.22);border-color:#a78bfa}
.comp .row2 #gen{background:linear-gradient(135deg,#8b5cf6,#ec4899)!important;color:#fff!important;font-weight:800;letter-spacing:.01em}
.comp .row2 #gen:disabled{opacity:.45;filter:grayscale(.4)}
@media(max-width:640px){#hero.studio .slots{grid-template-columns:1fr 1fr;gap:10px}#hero.studio .slot{min-height:230px}#hero.studio .slot b{font-size:14.5px}#hero.studio .slot small{font-size:11.5px}}

/* pop-up de geração / resultado */
.vm{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(6,4,22,.78);backdrop-filter:blur(8px)}
.vm.on{display:flex;animation:fadeIn .25s ease}
.vm-box{position:relative;width:min(560px,100%);max-height:100%;overflow:auto;border-radius:24px;padding:28px 26px 24px;color:#fff;background:linear-gradient(180deg,#1b1650,#100c33);border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 80px rgba(0,0,0,.55)}
.vm-box{scrollbar-width:thin;scrollbar-color:#6d5bd0 transparent}
.vm-box::-webkit-scrollbar{width:8px}.vm-box::-webkit-scrollbar-thumb{background:#6d5bd0;border-radius:8px}.vm-box::-webkit-scrollbar-track{background:transparent}
.vm-list li{padding:9px 12px}.vm-list{gap:6px;margin-bottom:14px}
.comp .row2 #txt{overflow:hidden!important;font-size:14px;min-height:46px}
#hero.studio .slot{min-height:clamp(230px,36vh,400px)}
.vm-st{display:none}.vm-st.on{display:block}
.vm h3{margin:0 0 6px;font-size:26px;line-height:1.15;font-weight:800;text-align:center}
.vm .vm-sub{margin:0 auto 18px;text-align:center;color:#bdb6ea;font-size:14.5px;max-width:420px;line-height:1.5}
.vm-gen{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;margin-bottom:16px}
.vm-pv{position:relative;aspect-ratio:9/14;border-radius:16px;overflow:hidden;background:#0b0a1c;border:1px solid rgba(255,255,255,.14)}
.vm-pv video{width:100%;height:100%;object-fit:cover;display:block}
.vm-pv.lock video{filter:blur(10px) brightness(.7);transform:scale(1.08)}
.vm-pv .vm-face{position:absolute;right:8px;bottom:8px;width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.5)}
.vm-pv .vm-lk{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font-size:12.5px;font-weight:700;color:#fff;padding:10px}
.vm-pv .vm-scan{position:absolute;left:0;right:0;height:3px;top:0;background:linear-gradient(90deg,transparent,#c084fc,transparent);box-shadow:0 0 18px 4px rgba(192,132,252,.7);animation:vmScan 2.2s linear infinite}
@keyframes vmScan{from{top:0}to{top:100%}}
.vm-phrase{font-size:17px;font-weight:700;margin-bottom:12px;min-height:44px}
.vm-bar{height:8px;border-radius:8px;background:rgba(255,255,255,.14);overflow:hidden}
.vm-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#8b5cf6,#ec4899);transition:width .25s linear}
.vm-pc{margin-top:8px;color:#bdb6ea;font-size:13px}
.vm-ghost{display:block;margin:6px auto 0;background:none;border:0;color:#a9a3d6;font-size:13.5px;cursor:pointer;text-decoration:underline;padding:8px}
.vm-ok{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;font-size:28px;font-weight:800;background:linear-gradient(135deg,#34d399,#10b981);box-shadow:0 10px 28px rgba(16,185,129,.4)}
.vm-warn{display:flex;gap:12px;align-items:flex-start;margin:0 0 16px;padding:14px 16px;border-radius:16px;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.45)}
.vm-warn>b{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:15px;color:#1a1200;background:#fbbf24}
.vm-warn strong{display:block;font-size:15.5px;line-height:1.35;color:#fff}
.vm-warn span{display:block;margin-top:3px;color:#e6dfa8;font-size:13.5px;line-height:1.45}
.vm-h{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#a9a3d6;margin:0 0 10px}
.vm-list{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px}
.vm-list li{display:flex;gap:12px;align-items:center;padding:11px 13px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05)}
.vm-list li::before{content:"✓";flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:800;background:linear-gradient(135deg,#8b5cf6,#ec4899)}
.vm-list b{display:block;font-size:14.5px;line-height:1.25}
.vm-list small{display:block;margin-top:1px;color:#b9b3e6;font-size:12.5px}
.vm-cta{width:100%;padding:16px 18px;border:0;border-radius:14px;color:#fff;font-weight:800;font-size:17px;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#ec4899);box-shadow:0 12px 30px rgba(139,92,246,.5);transition:transform .15s,filter .15s}
.vm-cta:hover{transform:translateY(-1px);filter:brightness(1.08)}
.vm-fine{display:block;text-align:center;margin-top:9px;color:#a9a3d6;font-size:12.5px}
.vm-top{display:grid;grid-template-columns:104px 1fr;gap:16px;align-items:center;margin-bottom:16px}
.vm-top .vm-pv{aspect-ratio:9/14}
.vm-top .vm-warn{margin:0}
@media(max-width:520px){.vm-box{padding:22px 16px 18px}.vm-gen{grid-template-columns:110px 1fr;gap:12px}.vm-top{grid-template-columns:84px 1fr;gap:12px}.vm h3{font-size:22px}}
