/* Truco Studio: hoja compartida de la web, el seguimiento y el panel. Oscuro a propósito: es la identidad de
   @eltrucoescondido (casi negro con cuadrícula, celeste para la energía, magenta para la palabra clave). */
:root{
  color-scheme:dark;
  --bg:#07090d; --panel:#0f131b; --panel2:#151b26; --panel3:#1c2432;
  --line:#1f2735; --line2:#2b3547;
  --fg:#eef2f8; --muted:#97a1b4; --dim:#626c80;
  --cyan:#22e4ff; --cyan-ink:#02232b; --cyan-soft:rgba(34,228,255,.10); --cyan-line:rgba(34,228,255,.4);
  --magenta:#ff2fa0; --on-magenta:#ffffff;
  --ok:#3ddc84; --warn:#ffb547; --grid:rgba(34,228,255,.03); --shade:rgba(3,5,9,.74);
  --amarillo:#ffd21f; --amarillo-ink:#15120a; --tinta:#2a2e38;
  --display:"Google Sans Flex","Manrope",system-ui,sans-serif;
  --body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:18px;
}
*,*::before,*::after{box-sizing:border-box}
html{height:100%}
body{min-height:100%;margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 var(--body);
  background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:48px 48px;
  padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
button{font:inherit;color:inherit;cursor:pointer}
button:disabled{cursor:default}
a{color:var(--cyan)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
mark{background:var(--magenta);color:var(--on-magenta);padding:0 .2em;border-radius:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
video,img{display:block;max-width:100%}
[hidden]{display:none!important}

.top{display:flex;align-items:center;gap:10px;padding:14px max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px));max-width:1100px;margin:0 auto}
.marca{display:flex;align-items:center;gap:10px;font:800 18px/1 var(--display);letter-spacing:-.01em;text-decoration:none;color:var(--fg)}
.marca img{width:32px;height:32px;border-radius:9px}
.spacer{flex:1}
.pill-btn{border:0;background:var(--panel2);border-radius:999px;padding:8px 16px;min-height:44px;display:inline-flex;align-items:center;font-weight:700;font-size:14px;text-decoration:none;color:var(--fg)}
.pill-btn:hover{background:var(--panel3)}

.chat{max-width:700px;margin:0 auto;padding:8px max(16px,env(safe-area-inset-right,0px)) 80px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:22px}

/* Inicio */
.hero{padding:5vh 0 0;display:grid;gap:14px;text-align:center;justify-items:center}
.hero h1{font:800 clamp(34px,6vw,54px)/1.14 var(--display);letter-spacing:-.025em;margin:0;text-wrap:balance}
.hero p{margin:0;color:var(--muted);font-size:17px;max-width:44ch}
.caja{width:100%;max-width:600px;display:flex;align-items:center;gap:8px;margin-top:6px;background:var(--panel);border:1px solid var(--line2);border-radius:20px;padding:8px 8px 8px 18px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.caja:focus-within{border-color:var(--cyan-line)}
.caja input{flex:1;min-width:0;background:none;border:0;color:var(--fg);font:500 17px/1.3 var(--body);padding:10px 0}
.caja input:focus{outline:none}
.caja input::placeholder{color:var(--dim)}
.enviar{flex:none;width:46px;height:46px;border-radius:14px;border:0;background:var(--cyan);color:var(--cyan-ink);font-size:20px;font-weight:800;display:grid;place-items:center}
.enviar:hover{filter:brightness(1.08)}
.prueba{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:14px;color:var(--dim)}
.chip{border:1px solid var(--line2);background:none;border-radius:999px;padding:10px 16px;min-height:44px;font-weight:600;font-size:14px;color:var(--fg)}
.chip:hover{border-color:var(--cyan-line);background:var(--cyan-soft)}
.gratis{font-size:13.5px;color:var(--dim)}
.galeria-h{width:100%;text-align:left;margin:30px 0 0;font:700 18px/1.2 var(--display)}
.galeria{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:left;margin-top:4px}
.fcard{position:relative;border:0;border-radius:var(--r);overflow:hidden;background:var(--panel2);padding:0;aspect-ratio:3/4;max-width:100%}
.fcard video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .5s ease}
.fcard:hover video{transform:scale(1.04)}
.fcard::after{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid transparent;transition:border-color .2s}
.fcard:hover::after{border-color:var(--cyan-line)}
.fcard .ov{position:absolute;inset:auto 0 0 0;padding:44px 12px 12px;background:linear-gradient(transparent,var(--shade) 48%)}
.fcard b{display:block;font:700 15.5px/1.2 var(--display)}
.fcard .meta{display:block;margin-top:4px;font-size:12.5px;color:var(--muted);font-weight:600}
.etq{display:inline-block;margin-bottom:7px;font-size:11.5px;font-weight:700;color:var(--cyan);background:var(--cyan-soft);padding:3px 9px;border-radius:999px}

/* Mensajes */
.msg{animation:entra .3s ease both}
@keyframes entra{from{opacity:0;transform:translateY(8px)}}
.msg.user{align-self:flex-end;max-width:80%;background:var(--panel3);padding:11px 16px;border-radius:20px 20px 6px 20px;font-weight:600;overflow-wrap:anywhere}
.msg.bot{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:start}
.msg.bot .av{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--panel2)}
.cuerpo{display:grid;gap:14px;min-width:0}
.cuerpo>p{margin:0;padding-top:4px;max-width:58ch}
.dots{display:inline-flex;gap:5px;padding:12px 0}
.dots i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:dot 1s infinite}
.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}
@keyframes dot{50%{opacity:.25;transform:translateY(-2px)}}
.ajuste{display:inline-flex;align-items:center;gap:6px;background:var(--panel2);border-radius:999px;padding:7px 12px;font-size:14px;font-weight:600}
.link{background:none;border:0;color:var(--cyan);font-weight:700;font-size:14px;padding:10px 6px;min-height:44px}
.msg{scroll-margin-top:12px}
.badge{position:absolute;top:8px;left:8px;background:var(--cyan);color:var(--cyan-ink);font-size:11.5px;font-weight:800;padding:4px 8px;border-radius:999px;z-index:2}

/* Propuesta de estilos: el tema de la persona contado en cada estilo */
.estilos-prop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.prop{position:relative;border:2px solid transparent;border-radius:var(--r);overflow:hidden;background:var(--panel);padding:0;text-align:left;display:flex;flex-direction:column}
.prop .prev{position:relative;display:block;aspect-ratio:9/14;overflow:hidden;background:var(--panel3)}
.prop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(7px) brightness(.7) saturate(1.2);transform:scale(1.12)}
.velo-mk{position:absolute;inset:0;background:linear-gradient(rgba(7,9,13,.35),rgba(7,9,13,.6))}
.mk{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;text-align:center;overflow:hidden}
.mk>span{text-wrap:balance;overflow-wrap:anywhere}
.mk.largo>span{font-size:14px!important}
.mk-par{justify-content:flex-end;padding-bottom:20%}
.mk-par>span{font:800 20px/1.25 var(--display)}
.mk-par i{font-style:normal;background:var(--amarillo);color:var(--amarillo-ink);padding:0 .15em;border-radius:3px}
.mk-sim{justify-content:flex-start;padding-top:42px}
.mk-sim>span{font:800 17px/1.3 var(--display)}
.mk-sim .anillo{margin-top:auto;margin-bottom:18%;width:58%;aspect-ratio:3/4;border-radius:50%;border:2px solid var(--cyan);box-shadow:0 0 18px var(--cyan-line)}
.mk-vida{justify-content:center}
.mk-vida>span{font:800 20px/1.3 var(--display)}
.mk-exp{justify-content:center}
.mk-exp .cuenta{font:800 54px/1 var(--display);color:var(--magenta)}
.mk-exp>span{font:800 17px/1.3 var(--display)}
.mk-pre{justify-content:flex-start;padding-top:40px}
.mk-pre em{font-style:normal;font-size:10px;font-weight:700;letter-spacing:.1em;border:1px solid var(--magenta);color:var(--magenta);padding:4px 8px;border-radius:999px}
.mk-pre>span{font:800 15.5px/1.3 var(--display)}
.mk-pre .ops{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}
.mk-pre u{text-decoration:none;background:var(--panel2);border:1px solid var(--line2);border-radius:10px;padding:8px 6px;font-size:11.5px;font-weight:700;display:grid;gap:4px;justify-items:center}
.mk-pre u i{font-style:normal;width:20px;height:20px;border-radius:50%;background:var(--magenta);color:var(--on-magenta);display:grid;place-items:center;font-size:11px}
.mk-des{justify-content:space-between;padding:40px 12px 24%}
.mk-des .ban{background:var(--panel);border:1px solid var(--line2);border-radius:10px;padding:8px 12px;font:800 13.5px/1.2 var(--display);letter-spacing:.02em;text-transform:uppercase;max-width:100%}
.mk-des .bolas{display:flex;gap:14px}
.mk-des .bolas i{width:30px;height:30px;border-radius:50%;background:var(--panel3);border:2px solid var(--line2)}
.mk-des .bolas i.si{background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 14px var(--cyan)}
.prop .info{padding:12px 14px 14px;display:grid;gap:4px}
.prop .info b{font:700 15.5px/1.2 var(--display)}
.prop .info span{font-size:13px;color:var(--muted);line-height:1.4}
.prop .info small{font-size:12px;color:var(--dim);font-weight:600;margin-top:2px}
.prop:not(:disabled):hover{border-color:var(--cyan-line)}
.prop.chosen{border-color:var(--cyan)}
.prop:disabled:not(.chosen){opacity:.35}

/* Tarjetas del chat */
.tarjeta{background:var(--panel);border-radius:var(--r);padding:20px;display:grid;gap:16px;min-width:0}
.tarjeta h4{margin:0;font:800 20px/1.2 var(--display)}
.fila{display:grid;gap:8px}
.fila>span{font-weight:700;font-size:13.5px;color:var(--muted)}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{flex:1;min-width:0;border:2px solid var(--line);background:var(--panel2);border-radius:14px;padding:9px 10px;font-weight:700;font-size:14px;display:grid;justify-items:center;gap:6px}
.seg button.on{border-color:var(--cyan);background:var(--cyan-soft)}
.seg button:disabled:not(.on){opacity:.45}
.seg.subs button{grid-template-columns:auto auto;align-items:center;justify-content:center;gap:8px}
.phone{width:22px;height:36px;border:2px solid var(--muted);border-radius:5px;position:relative}
.phone::after{content:"";position:absolute;left:3px;right:3px;height:4px;border-radius:2px;background:var(--cyan)}
.phone.abajo::after{bottom:6px}.phone.medio::after{top:14px}.phone.sin::after{display:none}
.tip{margin:0;font-size:12.5px;color:var(--dim)}
.tip.ojo{color:var(--warn)}
.campo{display:grid;gap:6px;font-size:13px;font-weight:700;color:var(--muted)}
.campo input,.campo textarea{background:var(--panel2);border:1px solid var(--line2);border-radius:12px;padding:11px 12px;color:var(--fg);font:600 16px/1.3 var(--body);min-width:0;width:100%}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--cyan-line)}
.campo input::placeholder{color:var(--dim)}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.busca{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line2);border-radius:16px;padding:6px 6px 6px 14px;max-width:460px;width:100%}
.busca:focus-within{border-color:var(--cyan-line)}
.busca .arroba{color:var(--dim);font-weight:800;font-size:17px}
.busca input{flex:1;min-width:0;background:none;border:0;color:var(--fg);font:600 16px/1.3 var(--body);padding:8px 0}
.busca input:focus{outline:none}
.botones{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.btn{border:0;border-radius:14px;padding:12px 18px;font-weight:800;font-size:15px;text-decoration:none;display:inline-block;text-align:center}
.btn.pri{background:var(--cyan);color:var(--cyan-ink)}
.btn.pri:hover{filter:brightness(1.08)}
.btn.sec{background:var(--panel2);color:var(--fg)}
.btn.sec:hover{background:var(--panel3)}
.btn:disabled{opacity:.45}
.resumen{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-weight:600}
.resumen li{display:flex;gap:10px}
.resumen li::before{content:"✓";color:var(--ok);font-weight:800}
.nota{margin:0;font-size:13.5px;color:var(--dim)}
.total{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px}
.total span{font-weight:700;color:var(--muted)}
.total b{font:800 28px/1.1 var(--display);margin-left:auto}
.total small{width:100%;text-align:right;font-size:12.5px;color:var(--dim);margin-top:-6px}
.seg button small{display:block;font-size:11.5px;font-weight:600;color:var(--muted);line-height:1.2}
.seg button.on small{color:var(--cyan)}
.precio-cfg{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:0;font-weight:600;color:var(--muted)}
.precio-cfg b{font:800 20px/1.2 var(--display);color:var(--fg)}
.precio-cfg span{font-size:13px;color:var(--dim)}
.ok-t{color:var(--ok);font-weight:800;font-size:14px}
.eta{display:grid;gap:2px}
.eta span{font-size:13px;color:var(--muted);font-weight:600}
.eta b{font:800 30px/1.15 var(--display)}
.eta small{font-size:13.5px;color:var(--dim)}

/* Cómo termina */
.final{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px;background:var(--panel);border-radius:var(--r);padding:16px}
.f-izq{display:grid;gap:12px;align-content:start;min-width:0}
.f-opts{display:grid;gap:6px}
.f-opt{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;border:2px solid transparent;background:var(--panel2);border-radius:14px;padding:10px 12px}
.f-opt b{display:block;font-size:14.5px}
.f-opt small{display:block;color:var(--muted);font-size:12.5px;font-weight:500}
.f-opt em{font-style:normal;flex:none;background:var(--cyan);color:var(--cyan-ink);font-size:11px;font-weight:800;padding:3px 8px;border-radius:999px}
.f-opt.on{border-color:var(--cyan);background:var(--cyan-soft)}
.f-opt:not(:disabled):hover{border-color:var(--cyan-line)}
.f-campos{display:grid;gap:10px}
.f-arroba{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);font-weight:600}
.f-arroba .t-av{width:20px;height:20px}
.tel{position:relative;aspect-ratio:9/16;border-radius:24px;overflow:hidden;border:6px solid var(--panel3);background:var(--bg);align-self:start;max-width:100%}
.t-fondo{position:absolute;inset:0;background-position:center;background-size:cover;opacity:.09;filter:blur(3px)}
.t-cap{position:absolute;top:12px;left:0;right:0;text-align:center;font-size:10.5px;font-weight:700;color:var(--dim);letter-spacing:.04em}
.t-txt{position:absolute;left:12px;right:12px;top:27%;font:800 17px/1.32 var(--display);text-align:center;text-wrap:balance;overflow-wrap:anywhere}
.t-hoja{position:absolute;left:10px;right:10px;bottom:62px;background:var(--panel2);border-radius:12px;padding:8px;display:flex;align-items:center;gap:5px}
.t-hoja i{width:20px;height:20px;border-radius:50%;background:var(--panel3)}
.t-hoja span{margin-left:auto;background:var(--cyan);color:var(--cyan-ink);font-size:10px;font-weight:800;padding:4px 7px;border-radius:7px}
.t-nota{position:absolute;left:12px;right:12px;bottom:66px;font-size:11.5px;font-weight:700;color:var(--muted);text-align:center}
.t-pill{position:absolute;left:10px;right:10px;bottom:14px;display:flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--line2);border-radius:999px;padding:5px 5px 5px 6px}
.t-av{width:22px;height:22px;border-radius:50%;font-size:11px;flex:none;display:grid;place-items:center;background:var(--panel3);font-weight:800}
.t-pill span{flex:1;min-width:0;font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t-pill b{background:var(--cyan);color:var(--cyan-ink);font-size:10.5px;padding:5px 9px;border-radius:999px}
.t-pill.vivo{animation:latido 1.6s ease infinite}
@keyframes latido{50%{box-shadow:0 0 0 5px var(--cyan-soft)}}

/* Seguimiento */
.pasos{display:grid;gap:10px}
.pp{display:flex;align-items:center;gap:12px;color:var(--dim);font-weight:600}
.pp .ic{width:20px;height:20px;border-radius:50%;border:2px solid var(--line2);display:grid;place-items:center;font-size:11px;font-weight:800;flex:none}
.pp.on{color:var(--fg)}
.pp.on .ic{border-color:var(--cyan);border-top-color:transparent;animation:gira .9s linear infinite}
.pp.ok{color:var(--muted)}
.pp.ok .ic{border-color:var(--ok);background:var(--ok);color:var(--bg)}
@keyframes gira{to{transform:rotate(360deg)}}
.entrega{display:grid;grid-template-columns:minmax(0,250px) minmax(0,1fr);gap:22px;align-items:start}
.entrega video{width:100%;aspect-ratio:9/16;border-radius:14px;background:var(--panel3)}
.entrega .der{display:grid;gap:14px;min-width:0}
.texto-post{white-space:pre-wrap;font-size:13.5px;line-height:1.55;color:var(--muted);background:var(--panel2);border-radius:14px;padding:12px 14px;max-height:240px;overflow-y:auto}

/* Páginas legales y pie */
.legal{max-width:720px;margin:0 auto;padding:12px max(16px,env(safe-area-inset-right,0px)) 40px max(16px,env(safe-area-inset-left,0px))}
.legal h1{font:800 clamp(30px,5vw,42px)/1.15 var(--display);letter-spacing:-.02em;margin:18px 0 8px;text-wrap:balance}
.legal h2{font:700 19px/1.3 var(--display);margin:30px 0 8px}
.legal p,.legal li{color:var(--muted);max-width:68ch}
.legal p{margin:0 0 12px}
.legal ul{margin:0 0 12px;padding-left:20px;display:grid;gap:6px}
.legal b{color:var(--fg)}
.pie{max-width:700px;margin:0 auto;padding:10px 16px 40px;text-align:center;font-size:13px;color:var(--dim)}
.pie a{color:var(--muted)}
.acepto{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--muted);font-weight:600;line-height:1.45;padding:8px 0;min-height:44px;cursor:pointer}
.acepto input{width:24px;height:24px;margin:0;flex:none;accent-color:var(--cyan)}
.sin-garantia{margin:0;font-size:13px;color:var(--dim);border-left:2px solid var(--line2);padding-left:10px}

/* Modal y aviso */
.velo{position:fixed;inset:0;background:var(--shade);z-index:40;display:grid;place-items:center;padding:16px}
.modal{position:relative;width:min(560px,100%);max-height:calc(100% - 32px);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:24px;display:grid;gap:16px}
.modal h3{margin:0;font:800 24px/1.15 var(--display);padding-right:40px}
.modal .x{position:absolute;top:10px;right:10px;background:var(--panel2);border:0;border-radius:50%;width:44px;height:44px;font-size:16px;color:var(--muted)}
.fmodal{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:20px;align-items:center}
.fmodal video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:14px;background:var(--panel3)}
.fmodal .d{display:grid;gap:12px;min-width:0}
.fmodal p{margin:0;color:var(--muted)}
.lista-ped{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lista-ped a{display:grid;gap:2px;background:var(--panel2);border-radius:14px;padding:12px 14px;text-decoration:none;color:var(--fg)}
.lista-ped small{color:var(--dim);font-weight:600}
.toast{position:fixed;left:0;right:0;margin-inline:auto;width:fit-content;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--panel3);color:var(--fg);padding:11px 16px;border-radius:14px;font-size:14px;font-weight:600;max-width:min(440px,calc(100% - 32px));text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.5)}

@media (max-width:760px){
  .galeria{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .entrega,.fmodal{grid-template-columns:minmax(0,1fr)}
  .entrega video{width:auto;height:min(44vh,420px);max-width:100%;justify-self:center}
  .fmodal video{max-width:200px;justify-self:center}
}
@media (max-width:600px){
  .final{grid-template-columns:minmax(0,1fr)}
  .tel{width:190px;justify-self:center}
  .estilos-prop{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:none}
  .estilos-prop::-webkit-scrollbar{display:none}
  .prop{flex:0 0 70%;scroll-snap-align:start}
}
@media (max-width:480px){
  .chat{gap:20px}
  .msg.bot{grid-template-columns:minmax(0,1fr)}
  .msg.bot .av{display:none}
  .hero{padding-top:2vh}
  .fcard b{font-size:14px}
  .seg.subs button{grid-template-columns:auto;gap:4px}
  .modal{padding:20px 16px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
