:root{
  --bg:#F3F3F5; --painel:#FFFFFF; --sup:#F6F6F8; --linha:#E7E7EB; --linha2:#D9D9DF;
  --tx:#0E0E12; --tx2:#5E5E6A; --tx3:#9A9AA5;
  --pri:#0E0E12; --pri-tx:#fff; --foco:#7C4DFF;
  --grad:linear-gradient(100deg,#57C8FF 0%,#9B4DFF 50%,#F02FD0 100%);
  --sombra:0 1px 2px rgba(16,16,24,.05),0 8px 24px rgba(16,16,24,.06);
  --sombra-g:0 30px 80px rgba(16,16,24,.16),0 4px 14px rgba(16,16,24,.08);
  --r:14px; --topo:64px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0B0B0E; --painel:#141418; --sup:#1B1B21; --linha:#25252D; --linha2:#33333D;
    --tx:#F4F4F6; --tx2:#A6A6B2; --tx3:#6E6E7A;
    --pri:#F4F4F6; --pri-tx:#0E0E12;
    --sombra:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.3);
    --sombra-g:0 30px 80px rgba(0,0,0,.55),0 4px 14px rgba(0,0,0,.4);
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--bg);color:var(--tx);font:15px/1.45 Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0}
svg{flex:none}
[hidden]{display:none !important}
:focus-visible{outline:2px solid var(--foco);outline-offset:2px}

/* ---------- topo ---------- */
.topo{height:var(--topo);display:flex;align-items:center;gap:16px;padding:0 18px;background:var(--painel);border-bottom:1px solid var(--linha);position:relative;z-index:20}
.marca-app{display:flex;align-items:center;gap:10px;flex:none}
.marca-app b{font-size:17px;font-weight:800;letter-spacing:-.02em}
.logo{width:30px;height:30px;position:relative;flex:none}
.logo i{position:absolute;width:18px;height:23px;border-radius:5px;top:3px;background:var(--grad)}
.logo i:nth-child(1){left:0;opacity:.35;transform:rotate(-10deg)}
.logo i:nth-child(2){left:6px;opacity:.6;transform:rotate(-3deg)}
.logo i:nth-child(3){left:12px;transform:rotate(5deg);box-shadow:0 4px 10px rgba(155,77,255,.35)}
.versao{font-size:11px;font-weight:700;color:var(--tx2);background:var(--sup);border:1px solid var(--linha);padding:2px 7px;border-radius:20px}
.nome-proj{flex:1;min-width:0;max-width:420px;margin:0 auto;text-align:center;border:1px solid transparent;background:transparent;border-radius:10px;padding:8px 12px;font-weight:600;font-size:15px}
.nome-proj:hover{background:var(--sup)}
.nome-proj:focus{outline:0;border-color:var(--linha2);background:var(--painel)}
.topo-acoes{display:flex;gap:8px;flex:none}

/* ---------- botões ---------- */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:12px;font-weight:600;font-size:14px;white-space:nowrap;transition:transform .15s,background .15s,box-shadow .15s,opacity .15s}
.bt svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bt:active{transform:scale(.97)}
.bt.primario{background:var(--pri);color:var(--pri-tx);box-shadow:0 6px 16px rgba(0,0,0,.14)}
.bt.primario:hover{opacity:.9}
.bt.fantasma{color:var(--tx)}
.bt.fantasma:hover{background:var(--sup)}
.bt.suave{background:var(--sup);border:1px solid var(--linha)}
.bt.suave:hover{border-color:var(--linha2)}
.bt.peq{height:34px;padding:0 12px;font-size:13px;border-radius:10px}
.bt.peq svg{width:16px;height:16px}
.bt.largo{width:100%;margin-top:12px}
.bt:disabled{opacity:.5;pointer-events:none}
.link{color:var(--foco);font-weight:600;font-size:13px}
.link:hover{text-decoration:underline}

/* ---------- layout ---------- */
.app{display:grid;grid-template-columns:minmax(330px,380px) 1fr minmax(330px,390px);height:calc(100dvh - var(--topo))}
.painel{background:var(--painel);display:flex;flex-direction:column;min-height:0}
.painel.esq{border-right:1px solid var(--linha)}
.painel.dir{border-left:1px solid var(--linha)}
.abas{display:flex;gap:4px;padding:10px;border-bottom:1px solid var(--linha);flex:none}
.abas button{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;height:38px;border-radius:10px;font-weight:600;font-size:13.5px;color:var(--tx2);transition:background .15s,color .15s}
.abas button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.abas button:hover{color:var(--tx)}
.abas button.on{background:var(--sup);color:var(--tx);box-shadow:inset 0 0 0 1px var(--linha)}
.abas button[data-aba="ia"].on svg{stroke:#9B4DFF}
.aba{flex:1;overflow-y:auto;padding:18px;min-height:0;scrollbar-width:thin}

/* ---------- campos ---------- */
.campo{display:block;margin-bottom:18px}
.campo>span,.sec-t{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:700;color:var(--tx2);margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}
.campo>span em{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0;color:var(--tx3);margin-right:auto}
.val{color:var(--tx);font-weight:700;text-transform:none;letter-spacing:0}
input:not([type]),input[type="text"],textarea{width:100%;background:var(--sup);border:1px solid var(--linha);border-radius:12px;padding:11px 13px;outline:0;transition:border-color .15s,background .15s,box-shadow .15s;resize:vertical}
input:not([type]):focus,textarea:focus{border-color:var(--foco);background:var(--painel);box-shadow:0 0 0 4px rgba(124,77,255,.12)}
textarea{line-height:1.5}
.mt{margin-top:10px}
input[type="range"]{width:100%;accent-color:var(--pri);height:24px}
.nota{font-size:12.5px;color:var(--tx3);margin:8px 0 0}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button{height:34px;padding:0 13px;border-radius:20px;border:1px solid var(--linha);background:var(--painel);font-size:13px;font-weight:600;color:var(--tx2);transition:all .15s}
.chips button:hover{border-color:var(--linha2);color:var(--tx)}
.chips button.on{background:var(--pri);border-color:var(--pri);color:var(--pri-tx)}
.chips.peq button{height:30px;padding:0 11px;font-size:12.5px}
.seg{display:flex;background:var(--sup);border:1px solid var(--linha);border-radius:12px;padding:3px;gap:3px}
.seg button{flex:1;min-height:34px;border-radius:9px;font-size:13px;font-weight:600;color:var(--tx2);display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;padding:6px 4px}
.seg button small{width:100%;text-align:center;font-size:11px;font-weight:500;color:var(--tx3);margin-top:-2px}
.seg button.on{background:var(--painel);color:var(--tx);box-shadow:0 1px 3px rgba(0,0,0,.1)}
.fmt{display:inline-block;border:2px solid currentColor;border-radius:3px;opacity:.7}
.fmt.f45{width:12px;height:15px}.fmt.f34{width:12px;height:16px}.fmt.f11{width:14px;height:14px}
.chave{display:flex;align-items:center;gap:10px;font-size:14px;padding:7px 0;cursor:pointer;user-select:none}
.chave input{position:absolute;opacity:0;pointer-events:none}
.chave span{width:38px;height:23px;border-radius:20px;background:var(--linha2);position:relative;flex:none;transition:background .2s}
.chave span::after{content:'';position:absolute;top:2.5px;left:2.5px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.chave input:checked+span{background:#34C759}
.chave input:checked+span::after{transform:translateX(15px)}
.chave input:focus-visible+span{outline:2px solid var(--foco);outline-offset:2px}
.cartao-sec{padding:16px;border:1px solid var(--linha);border-radius:var(--r);margin-bottom:12px;background:var(--painel)}
.linha-bts{display:flex;flex-wrap:wrap;gap:8px}
.dica{font-size:13px;color:var(--tx2);background:var(--sup);border-radius:12px;padding:12px 14px;margin-bottom:12px;line-height:1.55}
.dica code{font-size:12px;background:var(--painel);border:1px solid var(--linha);border-radius:6px;padding:1px 5px}
.aviso{font-size:13px;background:rgba(255,196,0,.14);border:1px solid rgba(255,196,0,.4);border-radius:12px;padding:10px 14px;margin-bottom:12px}
.texto{min-height:calc(100dvh - 330px);font-size:14.5px;line-height:1.6}

/* ---------- IA ---------- */
.ia-hero{margin:2px 0 20px}
.ia-hero h2{font-size:23px;line-height:1.15;letter-spacing:-.03em;margin:0 0 8px;font-weight:800}
.ia-hero h2 span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-hero p{margin:0;color:var(--tx2);font-size:13.5px}
.ia-off{font-size:13px;background:var(--sup);border:1px dashed var(--linha2);border-radius:12px;padding:12px 14px;margin-bottom:16px}
.ia-bt{width:100%;height:52px;border-radius:14px;background:var(--grad);color:#fff;font-size:15.5px;font-weight:700;box-shadow:0 10px 26px rgba(155,77,255,.35);position:relative;overflow:hidden}
.ia-bt svg{fill:#fff;stroke:none;width:20px;height:20px}
.ia-bt:hover{box-shadow:0 14px 32px rgba(155,77,255,.45)}
.ia-bt.carregando::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.35) 50%,transparent 80%);animation:brilho 1.3s infinite}
@keyframes brilho{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.ia-status{margin-top:14px;padding:14px;border-radius:12px;background:var(--sup);border:1px solid var(--linha);font-size:13.5px}
.ia-status.erro{background:rgba(255,59,48,.08);border-color:rgba(255,59,48,.3)}
.ia-status .linha-bts{margin-top:10px}

/* ---------- palco ---------- */
.palco{min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:28px 20px 30px;gap:16px;
  background-image:radial-gradient(rgba(127,127,127,.18) 1px,transparent 1.2px);background-size:22px 22px}
.post{width:var(--pw,420px);background:var(--painel);border-radius:22px;box-shadow:var(--sombra-g);overflow:hidden;flex:none;border:1px solid var(--linha)}
.post-h{display:flex;align-items:center;gap:10px;padding:11px 14px}
.post-av{width:34px;height:34px;border-radius:50%;padding:2px;background:var(--grad);flex:none}
.post-av img,.post-av div{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--painel);display:grid;place-items:center;font-size:11px;font-weight:800;background:var(--sup)}
.post-id{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.post-id b{font-size:13.5px}
.post-id span{font-size:11.5px;color:var(--tx3)}
.post-mais{margin-left:auto;display:flex;gap:3px}
.post-mais i{width:4px;height:4px;border-radius:50%;background:var(--tx)}
.vis{position:relative;width:100%;aspect-ratio:var(--ar,4/5);overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;background:#000;cursor:grab}
.vis:active{cursor:grabbing}
.trilho{display:flex;height:100%;will-change:transform}
.trilho.anima{transition:transform .38s cubic-bezier(.22,.8,.24,1)}
.cel{flex:none;width:100%;height:100%;position:relative;overflow:hidden}
.cel>.sl{transform-origin:0 0;position:absolute;left:0;top:0}
.badge{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.62);color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;pointer-events:none}
.nav{position:absolute;top:50%;margin-top:-17px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:#111;display:grid;place-items:center;box-shadow:0 2px 10px rgba(0,0,0,.25);opacity:0;transition:opacity .2s}
.nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.nav.ant{left:12px}.nav.prox{right:12px}
.vis:hover .nav:not([disabled]){opacity:1}
.nav[disabled]{display:none}
.post-a{display:flex;align-items:center;padding:10px 14px 14px;position:relative}
.post-a svg{width:24px;height:24px;fill:none;stroke:var(--tx);stroke-width:1.8;stroke-linejoin:round}
.post-ic{display:flex;gap:14px;flex:1}
.post-salvar{flex:none}
.pontos{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:4px;align-items:center}
.pontos i{width:6px;height:6px;border-radius:50%;background:var(--linha2);transition:all .2s}
.pontos i.on{background:#0095F6;width:7px;height:7px}
.palco-acoes{display:flex;gap:8px;flex:none}
.tira{display:flex;gap:10px;flex:none;max-width:100%;overflow-x:auto;padding:4px 4px 10px;scrollbar-width:thin}
.mini{flex:none;width:86px;position:relative;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--linha);cursor:pointer;transition:transform .15s,box-shadow .15s;background:#fff}
.mini:hover{transform:translateY(-2px)}
.mini.on{box-shadow:0 0 0 2.5px var(--foco)}
.mini .cel{width:100%;aspect-ratio:var(--ar,4/5);height:auto}
.mini span{position:absolute;bottom:4px;left:4px;font-size:10.5px;font-weight:700;background:rgba(0,0,0,.6);color:#fff;border-radius:6px;padding:1px 6px}
.mini-add{flex:none;width:86px;aspect-ratio:var(--ar,4/5);border-radius:10px;border:1.5px dashed var(--linha2);display:grid;place-items:center;color:var(--tx3)}
.mini-add svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.mini-add:hover{color:var(--tx);border-color:var(--tx3)}

/* ---------- galeria ---------- */
.variacoes{margin-bottom:14px}
.variacoes .sec-t{margin-bottom:8px}
.variacoes .desc{font-size:13px;color:var(--tx2);margin:0 0 10px}
.filtros{margin-bottom:12px}
.galeria{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mod{text-align:left;border-radius:14px;padding:6px 6px 9px;background:var(--sup);border:1px solid var(--linha);transition:transform .15s,box-shadow .15s,border-color .15s;position:relative}
.mod:hover{transform:translateY(-2px);box-shadow:var(--sombra)}
.mod.on{border-color:transparent;box-shadow:0 0 0 2.5px var(--foco),var(--sombra)}
.mod .cel{border-radius:9px;aspect-ratio:var(--ar,4/5);height:auto;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.mod b{display:block;font-size:13px;margin:8px 3px 0;line-height:1.2}
.mod .tag{position:absolute;top:12px;left:12px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:rgba(255,255,255,.94);color:#111;padding:3px 7px;border-radius:20px;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.mod .tag.viral{background:var(--grad);color:#fff}

/* ---------- ajustes ---------- */
.cores{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cor{width:34px;height:34px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);position:relative;transition:transform .15s}
.cor:hover{transform:scale(1.08)}
.cor.on::after{content:'';position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 2px var(--foco)}
.cor.auto{width:auto;padding:0 12px;border-radius:20px;font-size:12.5px;font-weight:700;background:var(--sup);box-shadow:inset 0 0 0 1px var(--linha)}
.cor.auto.on{box-shadow:inset 0 0 0 2px var(--foco)}
.cor.auto.on::after{display:none}
.cor.livre{background:conic-gradient(#f43f5e,#f59e0b,#84cc16,#06b6d4,#8b5cf6,#f43f5e);overflow:hidden}
.cor.livre input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.perfil-ed{display:flex;gap:14px;align-items:center}
.avatar-ed{width:64px;height:64px;border-radius:50%;flex:none;overflow:hidden;background:var(--sup);box-shadow:0 0 0 1px var(--linha)}
.avatar-ed img,.avatar-ed div{width:100%;height:100%;object-fit:cover;display:grid;place-items:center;font-weight:800;font-size:20px}
.perfil-campos{flex:1;display:flex;flex-direction:column;gap:8px}

/* ---------- lista de slides ---------- */
.lista-slides{display:flex;flex-direction:column;gap:12px}
.sc{border:1px solid var(--linha);border-radius:var(--r);padding:12px;background:var(--painel);transition:box-shadow .2s,border-color .2s}
.sc.on{border-color:var(--foco);box-shadow:0 0 0 3px rgba(124,77,255,.12)}
.sc-h{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.sc-n{font-weight:800;font-size:13px;width:26px;height:26px;border-radius:8px;background:var(--sup);display:grid;place-items:center;flex:none}
.sc-h select{flex:1;min-width:0;max-width:210px;height:30px;border-radius:8px;border:1px solid var(--linha);background:var(--sup);font-size:12.5px;font-weight:600;padding:0 6px}
.sc-ic{margin-left:auto;display:flex;gap:2px}
.sc-ic button{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--tx2)}
.sc-ic button:hover{background:var(--sup);color:var(--tx)}
.sc-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sc input{font-weight:700;margin-bottom:8px}
.sc textarea{min-height:84px;font-size:14px}
.sc-img{display:flex;align-items:center;gap:10px;margin-top:8px}
.sc-img img{width:46px;height:46px;border-radius:8px;object-fit:cover;box-shadow:0 0 0 1px var(--linha)}

/* ---------- modal ---------- */
.modal{position:fixed;inset:0;z-index:50;background:rgba(10,10,14,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px;animation:surge .2s}
@keyframes surge{from{opacity:0}}
.modal-caixa{width:min(720px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;background:var(--painel);border-radius:22px;box-shadow:var(--sombra-g);padding:20px;animation:sobe .25s cubic-bezier(.22,.8,.24,1)}
@keyframes sobe{from{transform:translateY(16px);opacity:0}}
.modal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.modal-h b{font-size:18px;letter-spacing:-.02em}
.fechar{width:34px;height:34px;border-radius:50%;background:var(--sup);font-size:22px;line-height:1;color:var(--tx2)}
.exp-prog{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--tx2);margin-bottom:14px}
.exp-barra{flex:1;height:6px;border-radius:6px;background:var(--sup);overflow:hidden}
.exp-barra i{display:block;height:100%;width:0;background:var(--grad);transition:width .25s}
.exp-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-bottom:16px}
.exp-grade a{display:block;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--linha);position:relative}
.exp-grade img{display:block;width:100%;height:auto}
.exp-grade a span{position:absolute;bottom:5px;right:5px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;font-weight:700;border-radius:6px;padding:2px 6px}
.exp-bts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.legenda-box textarea{min-height:120px;font-size:14px}
.lista-proj{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.pj{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--linha);border-radius:14px}
.pj.on{border-color:var(--foco)}
.pj-cap{width:56px;flex:none;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--linha)}
.pj-cap .cel{aspect-ratio:var(--ar,4/5);height:auto}
.pj-t{flex:1;min-width:0}
.pj-t b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pj-t span{font-size:12.5px;color:var(--tx3)}
.pj .linha-bts{flex:none}

.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--pri);color:var(--pri-tx);padding:11px 18px;border-radius:14px;font-size:14px;font-weight:600;z-index:60;box-shadow:var(--sombra-g);display:flex;gap:14px;align-items:center;max-width:calc(100vw - 32px);animation:sobe .25s}
.toast button{color:inherit;font-weight:800;text-decoration:underline}

#medidor,#exportador{position:fixed;left:-30000px;top:0;pointer-events:none}
#medidor{visibility:hidden}

.mob-nav{display:none}

/* ---------- celular e tablet ---------- */
@media (max-width:1180px){
  .app{grid-template-columns:330px 1fr 340px}
}
@media (max-width:999px){
  :root{--topo:56px}
  body{overflow:auto}
  .topo{position:sticky;top:0;padding:0 12px;gap:8px}
  .topo .bt span,.versao{display:none}
  .topo .bt.primario span{display:inline}
  .topo .bt{padding:0 11px}
  .nome-proj{font-size:14px;padding:6px 8px}
  .marca-app b{display:none}
  .app{display:flex;flex-direction:column;height:auto;padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .palco{order:0;overflow:visible;padding:16px 16px 4px;background-image:none}
  .painel{order:1;border:0 !important;background:transparent}
  .painel .abas{display:none}
  .aba{overflow:visible;padding:8px 16px 16px;display:none}
  body[data-mob="ia"] .aba[data-p="ia"],body[data-mob="texto"] .aba[data-p="texto"],body[data-mob="slides"] .aba[data-p="slides"],
  body[data-mob="modelos"] .aba[data-p="modelos"],body[data-mob="ajustes"] .aba[data-p="ajustes"]{display:block !important}
  .painel.esq,.painel.dir{display:contents}
  .aba{order:2}
  .post{border-radius:18px}
  .nav{display:none}
  .texto{min-height:50vh}
  .galeria{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  /* modo aplicativo */
  .topo{padding-top:env(safe-area-inset-top);height:calc(var(--topo) + env(safe-area-inset-top))}
  .nome-proj{visibility:hidden}
  input:not([type]),input[type="text"],textarea,select{font-size:16px !important}
  .tira,.palco-acoes{display:none}
  body[data-mob="ia"] .palco,body[data-mob="texto"] .palco{display:none}
  body[data-mob="slides"] .palco,body[data-mob="ajustes"] .palco{position:sticky;top:calc(var(--topo) + env(safe-area-inset-top));z-index:15;background:var(--bg);padding:10px 16px 12px;border-bottom:1px solid var(--linha);box-shadow:0 10px 20px -16px rgba(0,0,0,.3)}
  body[data-mob="slides"] .post-h,body[data-mob="slides"] .post-a,body[data-mob="ajustes"] .post-h,body[data-mob="ajustes"] .post-a{display:none}
  body[data-mob="slides"] .post,body[data-mob="ajustes"] .post{border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
  body[data-mob="modelos"] .palco{padding-bottom:12px}
  body[data-mob="slides"] .badge,body[data-mob="ajustes"] .badge{display:none}
  body[data-mob="modelos"] .galeria{display:flex;overflow-x:auto;gap:10px;margin:0 -16px;padding:4px 16px 14px;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  body[data-mob="modelos"] .galeria::-webkit-scrollbar{display:none}
  body[data-mob="modelos"] .mod{flex:none;width:118px;scroll-snap-align:start;padding:5px 5px 8px}
  body[data-mob="modelos"] .mod b{font-size:12px}
  body[data-mob="modelos"] .mod .tag{top:9px;left:9px;font-size:8.5px;padding:2px 6px}
  body[data-mob="modelos"] .variacoes{margin-bottom:12px}
  body[data-mob="modelos"] .variacoes .desc{display:none}
  .aba[data-p="ia"]{padding-top:18px}
  .mob-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--painel);box-shadow:0 -6px 20px rgba(0,0,0,.06);border-top:1px solid var(--linha);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .mob-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:600;color:var(--tx3);padding:6px 0;border-radius:12px}
  .mob-nav button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .mob-nav button.on{color:var(--tx)}
  .mob-nav button[data-mob="ia"].on svg{stroke:#9B4DFF}
  .modal{align-items:end;padding:0}
  .modal-caixa{border-radius:22px 22px 0 0;max-height:92dvh;padding-bottom:calc(20px + env(safe-area-inset-bottom))}
  .toast{bottom:calc(86px + env(safe-area-inset-bottom))}
}
@media (max-width:999px){
  body[data-mob="modelos"] .aba[data-p="modelos"]{display:flex !important;flex-direction:column}
  body[data-mob="modelos"] .galeria{order:-1}
}

/* ---------- fotos (v2) ---------- */
.mb{margin:0 0 12px}
.bts-fotos{display:grid;gap:8px}
.bts-fotos .bt{justify-content:flex-start}
.sec-t .sub{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0;color:var(--tx3);margin-right:auto}
.gal-sec{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tx2);margin:6px 2px -2px}
.gal-sec:first-child{margin-top:0}
.pede-foto{border:1px dashed var(--linha2);background:var(--sup);border-radius:12px;padding:12px;margin:0 0 12px;font-size:13px}
.pede-foto .linha-bts{margin-top:8px}
.sc-selo{font-weight:500 !important;font-size:13.5px}
.sc-fotos{display:flex;flex-wrap:wrap;gap:14px;margin-top:2px}
.sc-f{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sc-fl{font-size:11.5px;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.05em;margin-right:2px}
.th{width:48px;height:48px;border-radius:10px;overflow:hidden;position:relative;box-shadow:0 0 0 1px var(--linha);flex:none;display:grid;place-items:center}
.th img{width:100%;height:100%;object-fit:cover}
.th.todos img{opacity:.55}
.th em{position:absolute;bottom:2px;left:0;right:0;text-align:center;font-style:normal;font-size:9.5px;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6)}
.th.mais{border:1.5px dashed var(--linha2);box-shadow:none;color:var(--tx3)}
.th.mais svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.th:hover{box-shadow:0 0 0 2px var(--foco)}
.aj-caixa{width:min(520px,100%)}
.aj-palco{width:min(400px,100%);margin:0 auto;touch-action:none;cursor:grab;border-radius:14px;overflow:hidden;box-shadow:var(--sombra)}
.aj-palco.arrastando{cursor:grabbing}
#aj-cel{width:100%;height:auto;aspect-ratio:var(--ar,4/5)}
#aj-cel .aj-alvo{outline:6px dashed rgba(255,255,255,.85);outline-offset:-6px}
.aj-dica{text-align:center;margin:8px 0 14px}
.aj-ok{margin-left:auto}
@media (max-width:999px){
  .aj-palco{width:min(300px,100%)}
}
