.phone{position:relative;display:flex;flex-direction:column;width:100%;height:100vh;height:100dvh;max-width:480px;margin:0 auto;background:var(--papel);overflow:hidden;font-family:var(--roboto)}
@media(min-width:600px){.phone{height:min(860px,calc(100dvh - 24px));margin:12px auto;border-radius:28px;border:1px solid var(--filete);box-shadow:0 22px 50px -24px rgba(31,52,101,.45)}}
.app{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;font-family:var(--roboto)}
.chead{display:grid;gap:4px;padding:8px 12px 6px;border-bottom:1px solid #E9EDEF;background:var(--papel)}
.who{display:flex;align-items:center;gap:8px;min-width:0}
.ic{flex:none;width:24px;height:24px;color:#54656F}
.ic svg,.barra svg,.down svg{display:block;width:24px;height:24px}
.av{position:relative;width:42px;height:42px;border-radius:50%;background:#DDEFD6;overflow:hidden;flex:none}
.av img{position:absolute;left:-14%;top:-8%;width:130%;height:130%;object-fit:contain}
.who .wt{flex:1;min-width:0}
.who .nm{display:block;font:700 17px/1.2 var(--roboto);color:var(--texto-chat)}
.who small{display:block;font-size:13px;color:var(--hora);line-height:1.25}
.who .calm{flex:none;min-height:44px;gap:6px;font-size:12px;line-height:1.1;max-width:96px;white-space:normal;color:#54656F}
.who .calm input{width:22px;height:22px;flex:none;accent-color:var(--wa)}
@media(max-width:430px){.ic.mas{display:none}}
.prog{display:flex;align-items:center;gap:8px}
.prog span{flex:none;font:700 12px/1.2 var(--roboto);color:var(--texto-chat)}
.prog .lv{flex:1;min-width:30px}
.stage{position:relative;flex:1;min-height:0;display:flex;background:var(--fondo-chat) url(../img/fondo-chat.webp) center top/cover no-repeat}
.thread{flex:1;min-width:0;min-height:0;overflow:auto;padding:10px 10px 8px;display:flex;flex-direction:column;gap:4px;font-family:var(--roboto)}
.down{position:absolute;right:12px;bottom:12px;width:48px;height:48px;border-radius:50%;border:0;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.3);color:#54656F;display:grid;place-items:center;cursor:pointer}
.b{position:relative;max-width:88%;padding:6px 8px 6px 9px;border-radius:12px;font-size:17px;line-height:1.35;color:var(--texto-chat);animation:fadeUp .25s both;overflow-wrap:anywhere;box-shadow:0 1px .5px rgba(11,20,26,.13);white-space:pre-line}
.b.p{align-self:flex-start;background:#fff}
.b.p.cola{border-top-left-radius:2px;margin-top:6px}
.b.u{align-self:flex-end;background:var(--saliente)}
.b.u.cola{border-top-right-radius:2px;margin-top:6px}
.b.u.sk{font-style:italic}
.b small{display:block;margin-top:3px;color:var(--hora);font-size:14px;line-height:1.3}
.b.nota{font-size:14px;color:#3B4A54}
.hr{float:right;margin:8px 0 -3px 12px;font-size:11px;line-height:1;color:var(--hora);white-space:nowrap}
.b.poll .pt{display:block;font-size:13px;font-weight:700;color:var(--wa);margin-bottom:2px}
.b .aviso{display:block;margin-top:4px;background:none;border:0;padding:0;min-height:44px;color:var(--wa);font:500 15px var(--roboto);text-decoration:underline;cursor:pointer;text-align:left}
.stk{position:relative;align-self:flex-start;width:152px;margin:2px 0;animation:pop .35s cubic-bezier(.3,1.4,.5,1) both}
.stk img{display:block;width:150px;height:150px;object-fit:contain}
.stk .hr{position:absolute;right:4px;bottom:4px;float:none;margin:0;padding:2px 6px;border-radius:8px;background:rgba(255,255,255,.85)}
.sys{align-self:center;background:#fff;border-radius:8px;padding:4px 12px;margin:6px 0;font:500 12.5px var(--roboto);color:#54656F;box-shadow:0 1px .5px rgba(11,20,26,.13);animation:fadeUp .25s both}
.typing{display:flex;gap:5px;padding:12px 14px}
.typing i{width:8px;height:8px;border-radius:50%;background:#7C8A99;animation:dot 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}
.typing i:nth-child(3){animation-delay:.3s}
@keyframes dot{40%{transform:translateY(-5px);background:var(--wa-acento)}}
.lamina{align-self:flex-start;max-width:88%;background:#fff;border-radius:12px;border-top-left-radius:2px;padding:4px;display:grid;gap:4px;animation:fadeUp .3s both;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.lamina img{display:block;width:100%;max-width:240px;height:auto;border-radius:9px;background:#0C5E9A;outline:1px solid #D1D7DB;outline-offset:-1px}
.lamina .hr{float:none;justify-self:end;margin:0 4px 2px}
.comp{--azul:var(--wa);--suave-fondo:#E7F6EF;background:#fff;border-top:1px solid #E9EDEF;padding:8px 12px 10px;display:grid;gap:6px;max-height:48%;min-height:0;grid-template-rows:minmax(0,1fr) auto auto}
.comp .scr{overflow:auto;min-height:0}
.comp .btn{border-radius:999px}
.comp .primary{background:var(--wa)}
.comp .ghost{border-color:#D1D7DB;color:var(--texto-chat)}
.comp .opt{border-radius:12px;border-color:#D1D7DB;font-family:var(--roboto)}
.comp .opt[aria-pressed=true]{border-color:var(--wa-acento)}
.comp .opt .mk{border-color:#8696A0}
.comp .opt[aria-pressed=true] .mk{background:var(--wa-acento);border-color:var(--wa-acento)}
.comp .link{color:var(--wa);font-size:13px;min-height:36px}
.comp .row{display:flex;gap:10px}
.comp .row:empty{display:none}
.comp .row .btn{flex:1;padding:0 10px;white-space:nowrap}
.comp .find{border-color:#D1D7DB}
.plainq{padding:4px 0 10px}
.plainq .qn{margin:0 0 4px;font:700 12px/1.4 var(--cuerpo);letter-spacing:.12em;text-transform:uppercase;color:var(--azul-tinta)}
.plainq h2{margin:0 0 6px;font:600 21px/1.25 var(--display);text-wrap:balance}
.plainq p{margin:0 0 8px;color:var(--suave);font-size:15px;white-space:pre-line}
.plainq .aviso{background:none;border:0;padding:0;min-height:44px;color:var(--azul-tinta);font:600 15px var(--cuerpo);text-decoration:underline;cursor:pointer}
.barra{display:flex;align-items:center;gap:8px;padding:6px 8px 8px;background:var(--fondo-chat)}
.barra .pill{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:44px;padding:0 12px;border-radius:999px;background:#fff;color:#54656F}
.barra .pill span{flex:none;display:grid}
.barra .pill .msj{flex:1;display:block;font-size:16px;color:#5B6B73}
.barra .mic{flex:none;width:44px;height:44px;border-radius:50%;background:var(--wa-acento);color:#fff;display:grid;place-items:center}
.app[data-plain] .stage,.app[data-plain] .barra,.app[data-plain] .who .ic,.app[data-plain] .av,.app[data-plain] .who small{display:none}
.app[data-plain] .comp{flex:1;max-height:none!important;border-top:0}
.app:not([data-plain]) .plainq{display:none}

.b.reto{align-self:stretch;max-width:100%;width:100%;margin:6px 0;padding:8px 6px 10px;display:grid;gap:6px;white-space:normal}
.reto-texto{display:block;padding:0 4px;font-size:15px;line-height:1.3;color:#3B4A54}
.reto-widget{width:100%;max-width:100%;min-height:65px;overflow:hidden}
.reto-plano{margin:8px 0 0;padding:8px 6px;border:1px solid #E9EDEF;border-radius:12px;background:#fff}
.reto-aviso{margin:0;padding:6px 10px;border-radius:12px;background:#FFF4D6;color:#5B4300;font-size:14px;line-height:1.3;text-align:center}
