/* Zona Chat v5 · botón flotante, bandeja de subidas, páginas nuevas (Foros, Confesiones,
   Encuestas, Galería, Mensajes). Usa siempre los colores de marca (--brand / --grad). */

/* ---------- Enlaces de secciones en la cabecera (PC) ---------- */
.zc-top-links{display:flex;gap:2px;align-items:center;margin-left:8px;min-width:0;overflow:hidden}
.zc-top-links a{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;color:var(--text-2);text-decoration:none;font-weight:600;font-size:.92rem;white-space:nowrap}
.zc-top-links a:hover{background:var(--hover);color:var(--text)}
.zc-top-links a.is-active{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}
.zc-top-links .ic{width:17px;height:17px}
.zc-dm-link{position:relative}
.zc-dm-link .zc-pm-badge{position:absolute;top:-2px;right:-4px}
@media (max-width:1100px){.zc-top-links a span{display:none}.zc-top-links a{padding:8px}}
@media (max-width:900px){.zc-top-links{display:none}}

/* ---------- Botón flotante (solo móvil) ---------- */
.zc-fab{display:none}
@media (max-width:900px){
  .zc-fab{display:block;position:fixed;right:calc(var(--zc-fab-right) + env(safe-area-inset-right));bottom:calc(var(--zc-fab-bottom) + env(safe-area-inset-bottom));z-index:70;margin-bottom:var(--zc-fab-lift);transition:opacity .2s ease,transform .26s cubic-bezier(.2,.8,.2,1),margin-bottom .26s cubic-bezier(.2,.8,.2,1),visibility .2s}
  .zc-fab-btn{width:58px;height:58px;border-radius:50%;border:0;background:var(--grad);color:#fff;display:grid;place-items:center;box-shadow:0 10px 28px -8px color-mix(in srgb,var(--brand) 75%,transparent),0 2px 6px rgba(0,0,0,.18);cursor:pointer;transition:transform .2s}
  .zc-fab-btn .ic{width:26px;height:26px}
  .zc-fab-btn:active{transform:scale(.94)}
  .zc-fab-ic-close{display:none}
  .zc-fab.is-open .zc-fab-ic-open{display:none}.zc-fab.is-open .zc-fab-ic-close{display:inline-flex}
  .zc-fab.is-open .zc-fab-btn{transform:rotate(90deg)}
  .zc-fab-list{position:absolute;right:4px;bottom:70px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
  .zc-fab-pill{display:inline-flex;align-items:center;gap:9px;padding:10px 16px 10px 12px;border-radius:999px;background:var(--grad);color:#fff;font-weight:700;text-decoration:none;white-space:nowrap;box-shadow:0 8px 20px -8px color-mix(in srgb,var(--brand) 70%,transparent);
    opacity:0;transform:translateY(14px) scale(.9);transition:opacity .18s ease calc(var(--i) * 35ms),transform .22s cubic-bezier(.2,.9,.3,1.3) calc(var(--i) * 35ms)}
  .zc-fab-pill .ic{width:19px;height:19px}
  .zc-fab-pill.is-active{background:var(--card);color:var(--brand);border:2px solid var(--brand)}
  .zc-fab.is-open .zc-fab-pill{opacity:1;transform:none}
  .zc-fab.is-open::before{content:"";position:fixed;inset:0;background:rgba(10,12,20,.35);backdrop-filter:blur(2px);z-index:-1}
}
@media (prefers-reduced-motion:reduce){.zc-fab-pill{transition:none}}
/* v5.4 · Botón flotante cerca de la esquina (24 px abajo y a la derecha + zona segura del teléfono).
   Es interactivo (assets/js/v5.js → initFabAutoHide):
   - sube lo justo (--zc-fab-lift) cuando abajo hay una barra o un botón (escribir comentario, enviar,
     «Ver más», avisos, anuncios fijos abajo…) y baja cuando ya no está;
   - se esconde al bajar por la página y vuelve al subir (como Facebook);
   - se esconde con cualquier ventana/hoja/visor abierto y mientras se escribe (igual que la v5.3).
   El menú abierto usa píldoras con nombre; si no caben (pantalla muy angosta, apaisada o baja)
   pasa a botones redondos solo con icono en 1 o 2 columnas, siempre dentro de la pantalla. */
:root{--zc-fab-bottom:24px;--zc-fab-right:24px;--zc-fab-lift:0px}
.zc-fab-space{display:none}
@media (max-width:900px){
  .zc-fab-space{display:block;height:calc(var(--zc-fab-bottom) + 74px + env(safe-area-inset-bottom));pointer-events:none}
  .zc-overlay-open .zc-fab,.zc-typing .zc-fab,.zc-fab-blocked .zc-fab,
  body.zc-lock .zc-fab,body.zc5-noscroll .zc-fab{opacity:0;transform:translateY(16px) scale(.85);pointer-events:none;visibility:hidden}
  body:has(.zc-modal:not([hidden])) .zc-fab,body:has(.zc-viewer:not([hidden])) .zc-fab,body:has(.zc5-viewer:not([hidden])) .zc-fab{opacity:0;pointer-events:none;visibility:hidden}
  html.zc-fab-scrolled .zc-fab:not(.is-open){opacity:0;transform:translateY(calc(var(--zc-fab-bottom) + var(--zc-fab-lift) + 76px));pointer-events:none;visibility:hidden}
  .page-dm .zc-fab-space{display:none}
  /* con pie de página: el pie se alarga (mismo fondo) en vez de dejar un hueco debajo */
  .zc-foot ~ .zc-fab-space{display:none}
  html.zc-has-fab .zc-foot{padding-bottom:calc(var(--zc-fab-bottom) + 70px + env(safe-area-inset-bottom))}
  html.zc-has-fab.page-dm .zc-foot,html.zc-has-fab .page-dm .zc-foot{padding-bottom:0}
  /* Menú en modo iconos (pantallas angostas, apaisadas o bajas): cuadrícula de 1–2 columnas */
  .zc-fab.zc-fab--icons .zc-fab-list{display:grid;gap:8px;right:7px;bottom:66px;grid-template-columns:repeat(var(--zc-fab-cols,1),44px);grid-auto-rows:44px;max-height:var(--zc-fab-maxh,none);align-content:end}
  .zc-fab.zc-fab--scroll .zc-fab-list{overflow-y:auto;align-content:start;overscroll-behavior:contain;padding:2px;margin:-2px}
  .zc-fab--icons .zc-fab-pill{width:44px;height:44px;padding:0;gap:0;justify-content:center;position:relative;border-radius:50%}
  .zc-fab--icons .zc-fab-pill.is-active{border-width:2px}
  .zc-fab--icons .zc-fab-pill .ic{width:20px;height:20px}
  .zc-fab--icons .zc-fab-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
}
/* El nombre solo aparece al pasar el mouse (nunca al tocar en el celular) o con el teclado */
@media (max-width:900px) and (hover:hover) and (pointer:fine){
  .zc-fab--icons .zc-fab-pill:hover .zc-fab-name,.zc-fab--icons .zc-fab-pill:focus-visible .zc-fab-name{width:auto;height:auto;clip:auto;clip-path:none;overflow:visible;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:var(--card);color:var(--text);border:1px solid var(--line);padding:5px 10px;border-radius:8px;font-size:.85rem;font-weight:700;box-shadow:var(--shadow);pointer-events:none}
}
@media (prefers-reduced-motion:reduce){.zc-fab{transition:opacity .15s,visibility .15s}}
/* v5.4 · pie: los enlaces bajan de línea en pantallas de 360 px (antes se salían 3 px) */
.zc-foot nav{flex-wrap:wrap;gap:8px 16px;min-width:0;max-width:100%}

/* ---------- Subidas en segundo plano fuera del chat ---------- */
.zc-upfloat{position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:68;max-width:min(360px,calc(100vw - 96px));background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);padding:6px}
.zc-viewer-dl{position:absolute;top:12px;right:64px}

/* ---------- Páginas v5 ---------- */
.zc5-tabs{position:sticky;top:var(--top-h);z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.zc5-tabs-in{max-width:980px;margin:0 auto;display:flex;gap:6px;padding:8px 14px;overflow-x:auto;scrollbar-width:none}
.zc5-tabs-in::-webkit-scrollbar{display:none}
.zc5-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--card);color:var(--text-2);font-weight:600;text-decoration:none;white-space:nowrap;font-size:.93rem}
.zc5-tab .ic{width:17px;height:17px}
.zc5-tab.is-active{background:var(--grad);color:#fff;border-color:transparent}
@media (min-width:901px){.zc5-tabs{display:none}}
.zc5-main{max-width:980px;margin:0 auto;padding:18px 14px 110px;display:flex;flex-direction:column;gap:14px}
.zc5-hero{display:flex;gap:14px;align-items:center;padding:6px 2px}
.zc5-hero h1{margin:0;font-size:1.6rem;line-height:1.15}
.zc5-hero p{margin:4px 0 0;color:var(--muted)}
.zc5-hero-ic{width:52px;height:52px;border-radius:16px;background:var(--grad);color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 8px 22px -10px var(--brand)}
.zc5-hero-ic .ic{width:26px;height:26px}
.zc5-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px}
.zc5-stack{display:flex;flex-direction:column;gap:12px}
.zc5-stack label{display:flex;flex-direction:column;gap:6px;font-weight:600}
.zc5-stack label.zc5-check{flex-direction:row;align-items:center;font-weight:500}
.zc5-compose h2{margin:0;font-size:1.1rem}
.zc5-main input:not([type=checkbox]):not([type=radio]):not([type=file]),.zc5-main textarea,.zc5-main select{width:100%;padding:11px 13px;border-radius:12px;border:1px solid var(--line-2);background:var(--input);color:var(--text);font:inherit}
.zc5-main textarea{resize:vertical;min-height:44px}
.zc5-main input:focus,.zc5-main textarea:focus,.zc5-main select:focus{outline:2px solid color-mix(in srgb,var(--brand) 60%,transparent);outline-offset:1px;border-color:var(--brand)}
.zc5-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.zc5-between{justify-content:space-between}.zc5-end{justify-content:flex-end}
.zc5-row>input{flex:1;min-width:160px}
.zc5-err{color:var(--danger);font-weight:600}
.zc5-note{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--text-2);margin:0}
.zc5-note .ic{flex:none;color:var(--brand)}
.zc5-muted{color:var(--muted);margin:0}
.zc5-pad{padding:16px}
.zc5-count{font-size:.85rem;color:var(--muted)}.zc5-count.is-ok{color:var(--ok)}
.zc5-sort,.zc5-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.zc5-sort a,.zc5-chips a{padding:7px 13px;border-radius:999px;color:var(--text-2);text-decoration:none;font-weight:600;font-size:.9rem;white-space:nowrap;border:1px solid transparent}
.zc5-sort a:hover,.zc5-chips a:hover{background:var(--hover)}
.zc5-sort a.is-active{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}
.zc5-chips a{border-color:var(--line-2);background:var(--card)}
.zc5-chips a.is-active{background:var(--grad);color:#fff;border-color:transparent}
.zc5-chips small{opacity:.75}
.zc5-toolbar{gap:10px}
.zc5-list{display:flex;flex-direction:column;gap:12px}
.zc5-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}
.zc5-meta b{color:var(--text)}
.zc5-link{margin-left:auto;color:var(--muted);text-decoration:none}
.zc5-avatar-anon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 16%,var(--card));color:var(--brand)}
.zc5-avatar-anon .ic{width:16px;height:16px}
.zc5-body{margin:10px 0 4px;line-height:1.55;overflow-wrap:anywhere}
.zc5-cf-body{font-size:1.06rem}
.zc5-acts{display:flex;align-items:center;gap:4px;margin-top:8px;border-top:1px solid var(--line);padding-top:8px}
.zc5-act{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;border:0;background:transparent;color:var(--text-2);font:inherit;font-weight:600;cursor:pointer}
.zc5-act:hover{background:var(--hover)}
.zc5-act .ic{width:19px;height:19px}
.zc5-act.is-on{color:var(--like,#e0245e)}
.zc5-act.is-on .ic{fill:currentColor}
.zc5-act-end{margin-left:auto}
.zc5-act.pop .ic{animation:zc5pop .45s ease}
@keyframes zc5pop{0%{transform:scale(1)}40%{transform:scale(1.45)}100%{transform:scale(1)}}
.zc5-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-size:.78rem;font-weight:700}
.zc5-tag .ic{width:13px;height:13px}
.zc5-comments{margin-top:10px;border-top:1px dashed var(--line);padding-top:10px}
.zc5-cms{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow:auto}
.zc5-cm{background:var(--bg-2);border-radius:12px;padding:8px 11px}
.zc5-cm p{margin:3px 0 0;overflow-wrap:anywhere}
.zc5-cm small{color:var(--muted)}
.zc5-badge-m{color:var(--brand)}.zc5-badge-m .ic{width:13px;height:13px}
.zc5-cm-form{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.zc5-cm-form input{flex:1}
.zc5-more{display:flex;justify-content:center}
.zc5-nickgate h2{margin:0 0 6px;font-size:1.05rem;display:flex;gap:8px;align-items:center}
.zc5-nickgate p{margin:0 0 10px;color:var(--text-2)}

/* Encuestas */
.zc5-poll-q{margin:8px 0 4px;font-size:1.15rem}
.zc5-poll-q a{color:inherit;text-decoration:none}
.zc5-poll-opts{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.zc5-popt{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--line-2);border-radius:12px;cursor:pointer;font-weight:600}
.zc5-popt:hover{border-color:var(--brand)}
.zc5-popt input{accent-color:var(--brand);width:18px;height:18px}
.zc5-popt:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,transparent)}
.zc5-pbar{position:relative;display:flex;justify-content:space-between;gap:10px;padding:11px 13px;border-radius:12px;background:var(--bg-2);overflow:hidden;font-weight:600}
.zc5-pbar i{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--brand) 22%,transparent);border-radius:12px;transition:width .6s ease}
.zc5-pbar span,.zc5-pbar b{position:relative;display:inline-flex;gap:6px;align-items:center}
.zc5-pbar.is-mine i{background:color-mix(in srgb,var(--brand) 38%,transparent)}
.zc5-pbar .ic{width:16px;height:16px;color:var(--brand)}
.zc5-opts{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.zc5-opts legend{font-weight:600;margin-bottom:6px}
#pollOpts{display:flex;flex-direction:column;gap:8px}
.zc5-opt{display:flex;gap:6px;align-items:center}
.zc-btn-sm{min-height:34px;padding:0 13px;font-size:.88rem}

/* Galería */
.zc5-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.zc5-grid>.zc-empty{grid-column:1/-1}
.zc5-gi{margin:0;position:relative;border-radius:14px;overflow:hidden;background:var(--bg-2);aspect-ratio:1;box-shadow:var(--shadow-sm)}
.zc5-gi-open{all:unset;display:block;width:100%;height:100%;cursor:zoom-in}
.zc5-gi img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.zc5-gi:hover img{transform:scale(1.04)}
.zc5-gi figcaption{position:absolute;inset:auto 0 0 0;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:22px 8px 6px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:.85rem;pointer-events:none}
.zc5-gi figcaption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc5-gi figcaption .zc5-act{color:#fff;pointer-events:auto;padding:5px 8px}
.zc5-gi figcaption .zc5-act.is-on{color:#ff4d79}
.zc5-gi-play{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.zc5-gi-play .ic{width:44px;height:44px;color:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.zc5-gi.is-noimg .zc5-gi-open::after{content:"🎬";position:absolute;inset:0;display:grid;place-items:center;font-size:2rem}
.zc5-top h2{display:flex;gap:8px;align-items:center;font-size:1.05rem;margin:0 0 8px}
.zc5-top-row{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.zc5-topc{flex:0 0 150px;height:190px;border-radius:16px;overflow:hidden;position:relative;scroll-snap-align:start;color:#fff;text-decoration:none;box-shadow:var(--shadow-sm)}
.zc5-topc img{width:100%;height:100%;object-fit:cover}
.zc5-topc span{position:absolute;inset:auto 0 0 0;padding:28px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.75));display:flex;flex-direction:column}
.zc5-topc small{display:flex;gap:4px;align-items:center}.zc5-topc .ic{width:13px;height:13px}
.zc5-surprise{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 15%,var(--card)),var(--card));border-color:var(--brand);color:var(--brand)}
.zc5-surprise.is-spin .ic{animation:zc5spin .8s linear infinite}
@keyframes zc5spin{to{transform:rotate(360deg)}}
.zc5-drop{position:relative;border:2px dashed var(--line-2);border-radius:14px;padding:18px;text-align:center;cursor:pointer;align-items:center!important}
.zc5-drop:hover{border-color:var(--brand)}
.zc5-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.zc5-drop span{display:inline-flex;gap:8px;align-items:center;color:var(--text-2)}
.zc5-drop img{max-height:180px;max-width:100%;border-radius:10px;margin-top:8px}
.zc5-progress{height:6px;border-radius:6px;background:var(--bg-2);overflow:hidden}
.zc5-progress i{display:block;height:100%;width:0;background:var(--grad);transition:width .2s}

/* Visor a pantalla completa */
.zc5-viewer{position:fixed;inset:0;z-index:120;background:rgba(6,8,14,.96);color:#fff;display:flex;flex-direction:column}
.zc5-viewer[hidden]{display:none}
.zc5-v-top{display:flex;align-items:center;gap:10px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top))}
.zc5-v-top b{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc5-v-top span{opacity:.8;font-size:.9rem;min-width:52px}
.zc5-viewer .zc-icon-btn{color:#fff;background:rgba(255,255,255,.1)}
.zc5-v-stage{flex:1;min-height:0;display:grid;place-items:center;touch-action:pan-y;padding:0 8px}
.zc5-v-stage img,.zc5-v-stage video{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;animation:zc5in .25s ease}
@keyframes zc5in{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
.zc5-v-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;cursor:pointer;z-index:2}
.zc5-v-nav.prev{left:12px}.zc5-v-nav.next{right:12px}
.zc5-v-nav[hidden]{display:none}
@media (max-width:760px){.zc5-v-nav{display:none}}
.zc5-v-bar{display:flex;align-items:center;gap:4px;padding:8px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom))}
.zc5-v-bar .zc5-act{color:#fff}
.zc5-v-bar .zc5-act.is-on{color:#ff4d79}
#gvFav.is-on{color:#ffc93c}
.zc5-v-by{margin-left:auto;opacity:.8;font-size:.9rem}
.zc5-v-comments{background:var(--card);color:var(--text);max-height:45vh;overflow:auto;padding:12px;border-radius:16px 16px 0 0}
.zc5-viewer.is-surprise .zc5-v-stage{animation:zc5surp .8s ease}
@keyframes zc5surp{0%{transform:scale(.6) rotate(-6deg);opacity:0}60%{transform:scale(1.04) rotate(1deg);opacity:1}100%{transform:none}}
.zc5-noscroll{overflow:hidden}

/* Foros */
.zc5-crumbs{font-size:.9rem;color:var(--muted)}
.zc5-crumbs a{color:var(--brand);text-decoration:none;font-weight:600}
.zc5-table{padding:0;overflow:hidden}
.zc5-trow{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.zc5-trow:last-child{border-bottom:0}
.zc5-trow:hover{background:var(--hover)}
.zc5-trow-ic{width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);display:grid;place-items:center;flex:none}
.zc5-trow-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.zc5-trow-main b{display:flex;gap:5px;align-items:center}
.zc5-trow-main b .ic{width:15px;height:15px;color:var(--brand)}
.zc5-trow-main small,.zc5-trow-last small{color:var(--muted)}
.zc5-trow-n{display:inline-flex;gap:5px;align-items:center;color:var(--text-2);font-size:.9rem;white-space:nowrap}
.zc5-trow-n .ic{width:15px;height:15px}
.zc5-trow-last{display:flex;flex-direction:column;align-items:flex-end;font-size:.85rem;color:var(--text-2);min-width:110px}
@media (max-width:600px){.zc5-trow-last{display:none}}
.zc5-empty-row{padding:18px;margin:0;color:var(--muted)}
.zc5-sub{font-size:1.1rem;margin:6px 0 0}
.zc5-post h2{margin:0 0 8px;font-size:1.25rem}
.zc5-author{display:inline-flex;align-items:center;gap:7px;color:var(--text);text-decoration:none;position:relative}
.zc5-author small{color:var(--muted)}
.zc5-online{position:absolute;left:24px;top:24px;width:11px;height:11px;border-radius:50%;background:#22c55e;border:2px solid var(--card)}
.zc5-av-wrap{position:relative;display:inline-flex;flex:none}
.zc5-av-wrap .zc5-online{left:auto;right:0;top:auto;bottom:0}
.zc5-online-lg{width:18px;height:18px;border-width:3px;right:6px!important;bottom:6px!important}
.zc5-dispname{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-2)}
.zc5-social{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.zc5-social .zc-btn.is-on{border-color:var(--brand);color:var(--brand)}
.zc5-social-counts{margin-top:2px}

/* Mensajes directos */
.zc5-dm{display:grid;grid-template-columns:320px 1fr;gap:12px;height:calc(100dvh - var(--top-h) - 170px);min-height:440px}
.zc5-dm-side{padding:8px;overflow:auto;display:flex;flex-direction:column;gap:4px}
.zc5-dm-h{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:10px 8px 4px;display:flex;gap:6px;align-items:center}
.zc5-dm-h .ic{width:15px;height:15px}
.zc5-dm-threads{display:flex;flex-direction:column;gap:2px}
.zc5-dm-t{all:unset;display:flex;align-items:center;gap:10px;padding:9px;border-radius:12px;cursor:pointer;box-sizing:border-box;width:100%}
.zc5-dm-t:hover{background:var(--hover)}
.zc5-dm-t.is-active{background:color-mix(in srgb,var(--brand) 12%,transparent)}
.zc5-dm-t:focus-visible{outline:2px solid var(--brand)}
.zc5-dm-tx{flex:1;min-width:0;display:flex;flex-direction:column}
.zc5-dm-tx small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc5-dm-t.is-unread .zc5-dm-tx small{color:var(--text);font-weight:600}
.zc5-dm-tm{display:flex;flex-direction:column;align-items:flex-end;gap:3px;color:var(--muted);font-size:.78rem}
.zc5-count-b{font-style:normal;background:var(--brand);color:#fff;border-radius:999px;padding:1px 7px;font-weight:700;font-size:.75rem}
.zc5-dm-friends{display:flex;flex-wrap:wrap;gap:6px;padding:0 8px 8px}
.zc5-dm-friends a{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--line-2);color:var(--text);text-decoration:none;font-size:.88rem}
.zc5-dot{width:8px;height:8px;border-radius:50%;background:var(--line-2)}.zc5-dot.on{background:#22c55e}
.zc5-dm-req{padding:8px;border-bottom:1px solid var(--line)}
.zc5-dm-req h2{font-size:.95rem;margin:0 0 6px;display:flex;gap:6px;align-items:center}
.zc5-dm-reqrow{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:4px 0;flex-wrap:wrap}
.zc5-dm-reqrow span{display:flex;gap:4px}
.zc5-dm-main{padding:0;display:flex;flex-direction:column;overflow:hidden}
.zc5-dm-empty{margin:auto;text-align:center;color:var(--muted);padding:20px}
.zc5-dm-empty .ic{width:44px;height:44px;color:var(--brand)}
.zc5-dm-conv{display:flex;flex-direction:column;height:100%;min-height:0}
.zc5-dm-conv[hidden]{display:none}
.zc5-dm-head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}
.zc5-dm-head a{font-weight:700;color:var(--text);text-decoration:none}
.zc5-dm-head #dmOnline{font-size:.85rem}.zc5-dm-head #dmOnline.is-on{color:#16a34a}
.zc5-dm-head #dmHide{margin-left:auto}
.zc5-dm-back{display:none}
.zc5-dm-msgs{flex:1;min-height:0;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:6px;background:var(--bg-2)}
.zc5-dm-m{max-width:min(78%,520px);align-self:flex-start;background:var(--card);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:8px 11px}
.zc5-dm-m.is-mine{align-self:flex-end;background:var(--grad);color:#fff;border-color:transparent;border-radius:16px 16px 4px 16px}
.zc5-dm-m p{margin:0;overflow-wrap:anywhere;line-height:1.45}
.zc5-dm-m small{display:block;text-align:right;font-size:.72rem;opacity:.75;margin-top:2px}
.zc5-read{color:#a7f3d0}
.zc5-dm-media{all:unset;cursor:zoom-in;display:block;position:relative;border-radius:12px;overflow:hidden;margin-bottom:4px}
.zc5-dm-media img{display:block;max-width:240px;max-height:260px;border-radius:12px}
.zc5-dm-vid{display:block;padding:24px 34px}
.zc5-dm-form{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid var(--line)}
.zc5-dm-form[hidden]{display:none}
.zc5-dm-input{flex:1;display:flex;flex-direction:column;gap:4px}
.zc5-dm-input textarea{min-height:44px;max-height:140px;resize:none;border-radius:22px!important}
.zc5-chip{align-self:flex-start;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);padding:3px 10px;border-radius:999px;font-size:.82rem;font-weight:600}
.zc5-chip button{all:unset;cursor:pointer;margin-left:4px;font-weight:800}
.zc5-dm-send{width:46px;height:46px;padding:0;flex:none}
#dmCant{margin:10px}
@media (max-width:760px){
  .zc5-main{padding:12px 10px 100px}
  .page-dm .zc5-hero{display:none}
  .zc5-dm{grid-template-columns:1fr;height:calc(100dvh - var(--top-h) - 70px)}
  .zc5-dm.has-open .zc5-dm-side{display:none}
  .zc5-dm:not(.has-open) .zc5-dm-main{display:none}
  .zc5-dm-back{display:inline-flex}
  .page-dm .zc-fab{display:none}
  .zc5-hero h1{font-size:1.3rem}.zc5-hero-ic{width:44px;height:44px}
  .zc5-grid{grid-template-columns:repeat(2,1fr);gap:6px}
  .zc5-card{padding:13px}
}

/* Aviso flotante */
.zc5-toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:130;background:var(--text);color:var(--bg);padding:11px 18px;border-radius:999px;font-weight:600;box-shadow:var(--shadow-lg);max-width:calc(100vw - 32px);text-align:center}
.zc5-toast.is-bad{background:var(--danger);color:#fff}
.zc5-toast[hidden]{display:none}
.zc5-main>*{min-width:0;max-width:100%}
.zc5-toolbar>.zc5-chips{flex:1 1 260px;min-width:0}
.zc5-hero>div{min-width:0}
.zc5-main{width:100%;min-width:0;box-sizing:border-box}
.zc5-tabs{width:100%;min-width:0;max-width:100vw;box-sizing:border-box}

/* ---------- v5.1 · Invitación a entrar, autor enlazado, Escuchar, difuminar ---------- */
.zc5-logingate{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-color:color-mix(in srgb,var(--brand) 35%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,var(--card)),var(--card))}
.zc5-logingate-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--grad);color:#fff;flex:none}
.zc5-logingate-ic svg{width:22px;height:22px}
.zc5-logingate-tx{flex:1 1 220px;min-width:0}
.zc5-logingate-tx h2{margin:0 0 4px;font-size:1.02rem}
.zc5-logingate-tx p{margin:0;color:var(--muted);font-size:.92rem}
.zc5-logingate-acts{gap:8px;flex-wrap:wrap}
.zc5-login-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:18px;background:rgba(8,12,22,.55);backdrop-filter:blur(3px)}
.zc5-login-modal[hidden]{display:none}
.zc5-login-card{width:min(380px,100%);background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:22px;text-align:center}
.zc5-login-ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--grad);color:#fff;margin-bottom:8px}
.zc5-login-ic svg{width:26px;height:26px}
.zc5-login-card h2{margin:4px 0 6px;font-size:1.15rem}
.zc5-login-card p{margin:0 0 16px;color:var(--muted)}
.zc5-login-acts{display:flex;flex-direction:column;gap:8px}
.zc5-login-acts .zc-btn{justify-content:center}
.zc5-login-x{margin-top:10px;border:0;background:none;color:var(--muted);font:inherit;cursor:pointer;padding:8px}
.zc5-cm-login{margin:8px 0 0;color:var(--muted);font-size:.92rem;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.zc5-cm-login svg{width:16px;height:16px}
.zc5-author-link{color:inherit;text-decoration:none}
.zc5-author-link:hover b,.zc5-author-link:focus-visible b{color:var(--brand);text-decoration:underline}
a.zc5-v-by{color:#fff;text-decoration:none}
a.zc5-v-by[href]:hover{text-decoration:underline}
.zc5-tts{display:inline-flex;align-items:center;gap:2px}
.zc5-act[data-tts].is-on{color:var(--brand)}
.zc5-blur{border:1px dashed var(--line-2);border-radius:var(--radius-sm);padding:10px;display:grid;gap:8px}
.zc5-blur-size{gap:8px;font-size:.9rem;color:var(--muted)}
.zc5-blur-canvas{max-width:100%;max-height:60vh;width:auto;height:auto;border-radius:10px;justify-self:center;background:var(--card-2);touch-action:auto}
.zc5-blur-canvas.is-painting{touch-action:none;cursor:crosshair;outline:2px solid var(--brand)}
.zc-notice-links{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:6px}
.zc5-blur .zc5-muted,.zc5-gal-form .zc5-muted,p.zc5-muted.small{color:var(--muted);font-size:.86rem;margin:0}
/* v5.1 · Cabecera con sesión iniciada en teléfonos de 390 px: no se sale 2 px por la derecha */
@media (max-width:420px){
  .zc-top-inner{gap:6px}
  .zc-top-actions{gap:4px;min-width:0}
  .zc-brand{min-width:0;overflow:hidden}
}
/* v5.1 · casilla «Publicar como anónimo» y fila de acciones con «Escuchar» */
.zc5-stack label.zc5-check{flex-wrap:wrap;gap:4px 8px;flex:1 1 240px}
.zc5-stack label.zc5-check small{flex-basis:100%;padding-left:24px;color:var(--muted);font-weight:400}
.zc5-acts{flex-wrap:nowrap;min-width:0}
@media (max-width:420px){
  .zc5-acts{gap:0}
  .zc5-acts .zc5-act{padding:7px 8px}
  .zc5-tts [data-tts] span{display:none}
}
.zc5-blur .zc5-row{flex-wrap:wrap;gap:6px}

/* ===== v5.2 · Anuncios, Me gusta en vivo, Cambiar nick ===== */
.zc-ad{display:block;margin:14px auto;max-width:100%;text-align:center;overflow:hidden}
.zc-ad[hidden]{display:none!important}
.zc-ad-label{display:block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
.zc-ad-box{display:flex;justify-content:center;align-items:center;max-width:100%;overflow:hidden}
.zc-ad-frame{display:block;width:100%;border:0;min-height:50px;background:transparent}
.zc-ad-banner{display:inline-block;max-width:100%;line-height:0}
.zc-ad-banner img{max-width:100%;height:auto;border-radius:12px}
.zc-feed>.zc-ad{margin:0 0 14px;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:18px}
.zc-ad-footer{margin:24px auto 8px;padding:0 12px}
/* Chat: banner pequeño fijo encima de los mensajes, nunca encima de ellos */
.cr-ad{flex:none;margin:0;padding:4px 8px;max-height:100px;overflow:hidden;background:var(--card);border-bottom:1px solid var(--line)}
.cr-ad .zc-ad-label{margin:0 0 2px;font-size:10px}
.cr-ad .zc-ad-box,.cr-ad .zc-ad-frame{max-height:90px}
.cr-ad .zc-ad-banner img{max-height:90px;width:auto;border-radius:8px}
@media (max-width:760px){
  .cr-ad{max-height:60px;padding:2px 6px}
  .cr-ad .zc-ad-label{display:none}
  .cr-ad .zc-ad-box,.cr-ad .zc-ad-frame,.cr-ad .zc-ad-banner img{max-height:56px}
}
/* Publicación nueva arriba del feed */
.zc-post-new{animation:zcNewPost 2.4s ease}
@keyframes zcNewPost{0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 55%,transparent)}100%{box-shadow:0 0 0 0 transparent}}
.zc-c-new{animation:zcNewC 2s ease}
@keyframes zcNewC{0%{background:color-mix(in srgb,var(--brand) 14%,transparent)}100%{background:transparent}}
/* Línea de Me gusta encima de los comentarios (estilo Facebook) */
.zc-likes-line{display:flex;align-items:center;padding:8px 18px;border-bottom:1px solid var(--line);font-size:14px;color:var(--text-2)}
.zc-likes-line[hidden]{display:none}
.zc-likes-btn,.zc-likes-static{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:2px 0;color:inherit;font:inherit}
.zc-likes-btn{cursor:pointer}
.zc-likes-btn:hover b,.zc-likes-btn:focus-visible b{text-decoration:underline}
.zc-likes-heart{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--like);color:#fff;flex:none}
.zc-likes-heart .ic{width:12px;height:12px;fill:currentColor}
.zc-likes-txt{color:var(--muted)}
.zc-stats .s-like.is-link{cursor:pointer}
/* Lista de quién dio Me gusta */
.zc-likers{max-width:420px}
.zc-likers h2{display:flex;align-items:center;gap:8px}
.zc-likers-list{max-height:min(60vh,480px);overflow:auto;padding:6px 8px 12px}
.zc-liker{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;text-decoration:none;color:var(--text)}
.zc-liker:hover{background:var(--card-2)}
.zc-liker>span{flex:1;min-width:0;display:flex;flex-direction:column}
.zc-liker b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc-liker small{color:var(--muted)}
.zc-liker-heart{color:var(--like)}
.zc-liker-heart .ic{width:16px;height:16px}
.zc-likers-others{margin:8px 10px 0;color:var(--muted);font-size:14px}
/* Cuenta: cambiar nick desde el chat */
.zc-alert-info{background:color-mix(in srgb,var(--brand) 10%,var(--card));color:var(--text);border:1px solid color-mix(in srgb,var(--brand) 28%,transparent)}
.zc-nick-none{display:block;font-weight:500}
.zc-nick-none p{margin:0 0 10px}
.zc-row-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.cr-nick-link{text-decoration:none}
.zc5-comments .zc-likes-line{padding:4px 2px 8px;margin-bottom:6px}
#likersModal{z-index:140}
.zc5-viewer .zc-likes-line{color:inherit;border-color:rgba(255,255,255,.15)}
.zc5-viewer .zc-likes-txt{color:rgba(255,255,255,.7)}
.zc-ad.zc-ad-pending{height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden;visibility:hidden}

/* v5.3 · el texto gris de los campos de comentario siempre en una sola línea (con «…» si no cabe) */
.zc-comment-field textarea::placeholder,.zc5-cm-form input::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zc5-cm-form input{min-width:0;text-overflow:ellipsis}

/* v5.3 · con sesión iniciada en 390 px la cabecera se pasaba ~25 px (la página se veía alejada y el
   botón del tema quedaba cortado): el enlace del chat queda como icono con el punto verde. */
@media (max-width:420px){
  .zc-chat-link.is-online .zc-chat-label{display:none}
  .zc-chat-link.is-online{width:40px;padding:0;justify-content:center;position:relative}
  .zc-chat-link.is-online::after{content:"";position:absolute;top:2px;right:2px;width:10px;height:10px;border-radius:50%;background:#4ade80;border:2px solid var(--card)}
  /* el nombre del sitio se recorta con «…» si no cabe (antes no podía encogerse) */
  .zc-brand{flex:0 1 auto}
  .zc-brand-text{overflow:hidden}
}
/* v5.4 · sin cuadro gris al tocar (el anillo de foco con teclado se mantiene) */
.zc-fab-btn,.zc-fab-pill{-webkit-tap-highlight-color:transparent}

/* =====================================================================
   v5.5 · Crear publicación: encuestas, fondos de color y ventana sobre el teclado del móvil
   ===================================================================== */
:root{--zc-violet:#6d28d9;--zc-violet-ic:#7c3aed}
html[data-theme="dark"]{--zc-violet:#c4b5fd;--zc-violet-ic:#a78bfa}
.c-violet{color:var(--zc-violet-ic)}
/* Fondos permitidos (la base solo guarda la clave g1…g8) */
.zc-bg-g1{--zc-bg:linear-gradient(135deg,#4f46e5,#a855f7)}
.zc-bg-g2{--zc-bg:linear-gradient(135deg,#f97316,#ec4899)}
.zc-bg-g3{--zc-bg:linear-gradient(135deg,#06b6d4,#3b82f6)}
.zc-bg-g4{--zc-bg:linear-gradient(135deg,#10b981,#84cc16)}
.zc-bg-g5{--zc-bg:#e11d48}
.zc-bg-g6{--zc-bg:linear-gradient(135deg,#f43f5e,#facc15)}
.zc-bg-g7{--zc-bg:linear-gradient(135deg,#0f172a,#334155)}
.zc-bg-g8{--zc-bg:#2563eb}
/* Herramientas: etiqueta arriba; Foto/video y Encuesta a la izquierda; emoji a la derecha */
.zc-composer-tools.zc-tools-wrap{flex-wrap:wrap;row-gap:4px;padding:8px 10px 10px 16px}
.zc-tools-wrap .zc-tools-label{flex-basis:100%;padding-top:4px}
.zc-tools-wrap .zc-tool{padding:0 12px 0 10px;background:var(--hover)}
.zc-tools-wrap .zc-tool.zc-tool-emoji{padding:0 9px;margin-left:auto;background:transparent}
.zc-tool.off{opacity:.45;cursor:not-allowed;pointer-events:none}
.zc-tool-poll.on{background:color-mix(in srgb,var(--brand) 22%,transparent);color:var(--text);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--brand-2) 70%,transparent)}
.zc-new{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:var(--grad);color:#fff;border-radius:999px;padding:2px 6px;margin-left:2px;line-height:1.3}
.zc-tool-poll.on .zc-new{display:none}
/* Fila «Fondo» */
.zc-text-wrap{position:relative}
.zc-bg-row{display:flex;gap:8px;align-items:center;padding:10px 14px;border-top:1px solid var(--line)}
.zc-bg-row[hidden]{display:none}
.zc-bg-label{font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.zc-bg-list{display:flex;gap:7px;align-items:center;overflow-x:auto;scrollbar-width:none;padding:3px;margin:-3px}
.zc-bg-list::-webkit-scrollbar{display:none}
.zc-sw{flex:none;width:30px;height:30px;border-radius:10px;border:0;padding:0;cursor:pointer;background:var(--zc-bg,var(--card-2));box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.zc-sw.zc-sw-aa{display:grid;place-items:center;background:var(--card-2);color:var(--text);font-weight:800;font-size:13px;box-shadow:inset 0 0 0 1.5px var(--line-2)}
.zc-sw.on{outline:2.5px solid var(--text);outline-offset:2px}
.zc-bg-row.dim .zc-sw:not(.zc-sw-aa){opacity:.35}
/* Texto sobre color: grande, en negrita y centrado */
.zc-composer-box textarea.zc-bgx{background:var(--zc-bg);color:#fff;text-align:center;font-weight:800;font-size:26px;line-height:1.25;min-height:250px;margin:10px;width:calc(100% - 20px);border-radius:14px;padding:72px 20px 40px;text-shadow:0 2px 10px rgba(0,0,0,.25);caret-color:#fff}
.zc-composer-box textarea.zc-bgx::placeholder{color:rgba(255,255,255,.75)}
.zc-bg-count{position:absolute;right:22px;bottom:20px;font-size:12px;font-weight:700;color:#fff;background:rgba(0,0,0,.28);padding:3px 8px;border-radius:999px;pointer-events:none}
.zc-bg-note{display:flex;gap:8px;align-items:flex-start;margin:10px 2px 0;color:var(--muted);font-size:13px;line-height:1.4}
.zc-bg-note .ic{width:16px;height:16px;flex:none;margin-top:1px;color:var(--zc-violet-ic)}
.zc-bg-note[hidden]{display:none}
/* Editor de encuesta */
.zc-poll-edit{margin:0 10px 12px;border:1.5px solid var(--line-2);border-radius:16px;padding:12px;background:color-mix(in srgb,var(--card-2) 70%,transparent);min-width:0}
.zc-poll-edit[hidden]{display:none}
.zc-poll-edit-title{display:flex;align-items:center;gap:7px;font-weight:700;font-size:14px;margin:0 2px 10px}
.zc-poll-edit-title .ic{width:18px;height:18px;color:var(--zc-violet-ic)}
.zc-poll-opt-edit{position:relative;display:block;border:1.5px solid var(--line-2);border-radius:12px;padding:7px 64px 7px 12px;margin-bottom:8px;background:var(--input);cursor:text}
.zc-poll-opt-edit small{display:block;font-size:12px;color:var(--muted);font-weight:600}
.zc-poll-opt-edit input{display:block;width:100%;border:0;outline:0;background:transparent;padding:0;font-size:16px;color:var(--text);box-shadow:none;min-height:0;height:auto}
.zc-poll-opt-edit input::placeholder{color:var(--muted);opacity:.7}
.zc-poll-opt-edit:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}
.zc-poll-opt-edit:focus-within small{color:var(--zc-violet)}
.zc-poll-opt-edit em{position:absolute;right:12px;top:8px;font-style:normal;font-size:12px;color:var(--muted);font-weight:600}
.zc-poll-x{position:absolute;right:8px;bottom:6px;width:26px;height:26px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}
.zc-poll-x:hover{background:var(--hover);color:var(--danger)}
.zc-poll-x .ic{width:15px;height:15px}
.zc-poll-x[hidden]{display:none}
.zc-poll-add{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:42px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--brand-2) 60%,transparent);background:transparent;color:var(--zc-violet);font-weight:700;font-size:14px;cursor:pointer}
.zc-poll-add[hidden]{display:none}
.zc-poll-add .ic{width:18px;height:18px}
.zc-poll-add small{color:var(--muted);font-weight:600}
.zc-poll-dur{margin-top:12px}
.zc-poll-dur>small{display:block;font-size:12.5px;font-weight:700;color:var(--text-2);margin:0 2px 6px}
.zc-seg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;background:var(--input);border:1px solid var(--line-2);border-radius:12px;padding:4px}
.zc-seg label{position:relative;margin:0;cursor:pointer}
.zc-seg input{position:absolute;opacity:0;pointer-events:none}
.zc-seg span{display:grid;place-items:center;height:34px;border-radius:9px;font-size:14px;font-weight:600;color:var(--text-2)}
.zc-seg input:checked+span{background:var(--grad);color:#fff;box-shadow:0 4px 12px -4px rgba(124,58,237,.7)}
.zc-seg input:focus-visible+span{outline:2px solid var(--brand);outline-offset:1px}
.zc-poll-remove{display:flex;align-items:center;justify-content:center;gap:6px;margin:12px auto 2px;background:none;border:0;color:var(--danger);font-weight:700;font-size:14px;cursor:pointer}
.zc-poll-remove .ic{width:16px;height:16px}
/* Encuesta publicada */
.zc-poll-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--zc-violet);background:color-mix(in srgb,var(--brand) 14%,transparent);border-radius:999px;padding:2px 8px;vertical-align:1px;white-space:nowrap}
.zc-poll-badge .ic{width:13px;height:13px}
.zc-poll{padding:0 0 2px}
.zc-poll-opts{padding:2px 16px 4px}
.zc-poll-res{position:relative;height:42px;border-radius:12px;background:var(--card-2);margin-bottom:8px;overflow:hidden;display:flex;align-items:center;padding:0 14px;font-size:15px}
.zc-poll-res i{position:absolute;inset:0 auto 0 0;border-radius:12px;background:color-mix(in srgb,var(--brand) 22%,var(--card-2));transition:width .6s cubic-bezier(.2,.8,.2,1);animation:zcPollGrow .7s cubic-bezier(.2,.8,.2,1)}
.zc-poll-res.win i{background:color-mix(in srgb,var(--brand) 40%,var(--card-2))}
.zc-poll-res span,.zc-poll-res b{position:relative;min-width:0}
.zc-poll-res span{flex:1;display:flex;align-items:center;gap:7px;color:var(--text-2);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.zc-poll-res b{font-weight:700;color:var(--text-2);margin-left:8px}
/* La ganadora en negrita; los textos nunca van en blanco (la barra puede ser corta y el % queda sobre el fondo claro). */
.zc-poll-res.win span{font-weight:800;color:var(--text)}
.zc-poll-res.win b{font-weight:800;color:var(--zc-violet)}
.zc-poll-res.mine span{color:var(--text);font-weight:600}
.zc-poll-res.win.mine span{font-weight:800}
.zc-poll-chk{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:#fff;color:var(--brand);box-shadow:0 0 0 1px var(--line)}
.zc-poll-chk .ic{width:13px;height:13px;stroke-width:3}
@keyframes zcPollGrow{from{width:0}}
.zc-poll-opt{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;padding:6px 14px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--brand-2) 75%,transparent);color:var(--zc-violet);font-weight:700;font-size:15px;margin-bottom:8px;background:transparent;cursor:pointer;font-family:inherit;transition:background .15s}
.zc-poll-opt:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 10%,transparent)}
.zc-poll-opt:disabled{cursor:default;opacity:.6}
.zc-poll-opt.busy{background:color-mix(in srgb,var(--brand) 16%,transparent)}
.zc-poll-foot{padding:4px 16px 8px;color:var(--muted);font-size:13.5px}
.zc-poll-foot .mine{color:var(--zc-violet);font-weight:600}
.zc-poll-login{display:flex;align-items:center;gap:8px;margin:2px 16px 10px;padding:9px 12px;border-radius:12px;background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--text-2);font-size:13.5px}
.zc-poll-login .ic{width:16px;height:16px;color:var(--zc-violet-ic);flex:none}
.zc-poll-login a{margin-left:auto;color:var(--zc-violet);font-weight:700;text-decoration:none;white-space:nowrap}
/* Publicación con fondo de color en el feed */
.zc-colorpost{margin:2px 0 4px;min-height:300px;display:grid;place-items:center;padding:30px 26px;text-align:center;color:#fff;font-weight:800;font-size:28px;line-height:1.25;text-shadow:0 2px 12px rgba(0,0,0,.25);background:var(--zc-bg);white-space:pre-wrap;overflow-wrap:anywhere}
.zc-colorpost a{color:#fff;text-decoration:underline}
@media (max-width:760px){
  .zc-colorpost{min-height:260px;font-size:25px}
  /* La ventana ocupa el área visible (visualViewport) y no 96vh: con el teclado abierto la cabecera
     queda justo debajo de la barra de direcciones y el contenido se desplaza por dentro. */
  .zc-modal.zc-vv{top:var(--vvt,0px);bottom:auto;height:var(--vvh,100%)}
  .zc-modal.zc-vv>.zc-composer{height:calc(var(--vvh,100vh) * .96);max-height:calc(var(--vvh,100vh) * .96)}
  .zc-modal.zc-vv.zc-vv-kb{align-items:flex-start}
  .zc-modal.zc-vv.zc-vv-kb>.zc-composer{height:100%;max-height:100%;border-radius:0 0 18px 18px;animation:none}
  .zc-modal.zc-vv .zc-composer-form{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;flex:1}
  .zc-modal.zc-vv.zc-vv-kb .zc-composer-head{padding-top:10px;padding-bottom:10px}
  .zc-modal.zc-vv.zc-vv-kb .zc-composer-head .zc-icon-btn{top:4px}
  .zc-composer-box textarea.zc-bgx{font-size:23px;min-height:220px;padding-top:60px}
}
@media (prefers-reduced-motion:reduce){.zc-poll-res i{animation:none;transition:none}}

/* ======================= v5.6 ======================= */
/* Desaparece en vivo (borrado u oculto) */
.zc-gone{opacity:0!important;transform:scale(.97);transition:opacity .22s ease,transform .22s ease;pointer-events:none}
/* Quién lo ve (icono en la cabecera de la publicación) */
.zc-aud{display:inline-flex;align-items:center;gap:3px;vertical-align:middle}
.zc-aud .ic{width:13px;height:13px}
.zc-aud-txt{font-size:12px;font-weight:600}
.zc-aud-friends,.zc-aud-followers{color:var(--brand)}
.zc-anon-own{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:700;background:color-mix(in srgb,var(--brand) 12%,var(--card));color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 25%,transparent);vertical-align:middle}
.zc-anon-own .ic{width:12px;height:12px}
.zc-aud-dialog{max-width:440px}
.zc-aud-list{display:grid;gap:8px}
.zc-aud-opt{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;cursor:pointer;background:var(--card)}
.zc-aud-opt:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--card))}
.zc-aud-opt input{accent-color:var(--brand);width:18px;height:18px;flex:none}
.zc-aud-opt b{display:block}
.zc-aud-opt small{display:block;color:var(--muted);font-size:13px}
.zc-aud-ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--hover);flex:none}
.zc-aud-note{font-size:13px;margin:12px 0 0}
/* Selector «Quién lo ve» del formulario */
.zc-composer-author{flex-wrap:wrap}
.zc-aud-pick{position:relative;display:inline-flex;align-items:center;gap:4px;padding:4px 8px 4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--input);font-size:13px;font-weight:600;color:var(--text)}
.zc-aud-pick .ic{width:15px;height:15px;flex:none}
.zc-aud-pick select{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:2px 4px;cursor:pointer}
.zc-aud-pick select:focus{outline:none}
.zc-aud-pick:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 25%,transparent)}
.zc-aud-pick.is-off{opacity:.55}
.zc-composer-author .zc-aud-note{flex-basis:100%;margin:6px 0 0;color:var(--muted);font-size:12.5px;line-height:1.35}
/* Eliminar lo propio */
.zc-c-tools .zc-c-del:hover,.zc5-cm-del:hover,.zc56-cm-del:hover{color:var(--danger)}
.zc5-cm-del,.zc56-cm-del{border:0;background:none;color:var(--muted);padding:2px 4px;margin-left:6px;vertical-align:middle;cursor:pointer;border-radius:8px}
.zc5-cm-del .ic,.zc56-cm-del .ic{width:14px;height:14px}
.zc5-del-own{margin-left:auto}
.zc5-del-own:hover{color:var(--danger)}

/* Recorte de la foto de perfil */
.zc56-crop{max-width:420px}
.zc56-crop-stage{padding:18px 20px 6px;display:flex;justify-content:center}
.zc56-crop-view{position:relative;width:min(78vw,300px);aspect-ratio:1;overflow:hidden;border-radius:18px;background:#0b0f19;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;outline:none}
.zc56-crop-view:focus-visible{box-shadow:0 0 0 3px var(--brand)}
.zc56-crop-view:active{cursor:grabbing}
.zc56-crop-view img{position:absolute;left:0;top:0;transform-origin:0 0;max-width:none;pointer-events:none;will-change:transform}
.zc56-crop-ring{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 999px rgba(5,8,15,.6);border:2px solid rgba(255,255,255,.9);pointer-events:none}
.zc56-crop-zoom{display:flex;align-items:center;gap:10px;padding:8px 24px 0;font-weight:800;color:var(--muted)}
.zc56-crop-zoom input{flex:1;accent-color:var(--brand)}
.zc56-crop .zc-dialog-actions,.zc56-crop .zc-form-error{margin-left:20px;margin-right:20px}
.zc56-crop .zc-dialog-actions{padding-bottom:18px}

/* Perfil: foto ampliada */
.zc56-av-btn{border:0;padding:0;background:none;border-radius:50%;cursor:zoom-in;display:inline-block}
.zc56-av-btn:focus-visible{box-shadow:0 0 0 3px var(--brand)}
.zc56-avlb{align-items:center!important;padding:20px!important}
.zc56-avlb-box{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;animation:zcRise .2s}
.zc56-avlb-box img{width:min(82vw,420px);height:min(82vw,420px);border-radius:50%;object-fit:cover;box-shadow:0 20px 60px rgba(0,0,0,.5);background:#111}
.zc56-avlb-x{position:absolute;top:-6px;right:-6px;background:var(--card)!important;box-shadow:var(--shadow)}

/* Perfil: pestañas, álbumes y cuadrícula */
.zc56-ptabs{display:flex;gap:4px;margin:14px 0 12px;padding:4px;background:var(--card);border:1px solid var(--line);border-radius:14px;position:sticky;top:var(--top-h);z-index:6}
.zc56-ptabs button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:none;color:var(--muted);font-weight:700;font-size:14px;padding:10px 6px;border-radius:10px;min-height:42px}
.zc56-ptabs button.on{background:color-mix(in srgb,var(--brand) 14%,var(--card));color:var(--brand)}
.zc56-ptabs .ic{width:17px;height:17px}
.zc56-albums{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 12px}
.zc56-albums::-webkit-scrollbar{display:none}
.zc56-chip{flex:none;border:1px solid var(--line);background:var(--card);color:var(--text);font-weight:700;font-size:13px;padding:7px 14px;border-radius:999px;min-height:36px}
.zc56-chip.on{background:var(--brand);border-color:var(--brand);color:#fff}
.zc56-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;border-radius:14px;overflow:hidden}
.zc56-th{position:relative;display:block;aspect-ratio:1;border:0;padding:0;background:var(--hover);overflow:hidden;cursor:pointer}
.zc56-th img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}
.zc56-th:hover img{transform:scale(1.04)}
.zc56-th:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}
.zc56-th.is-noimg img{opacity:0}
.zc56-th-play{position:absolute;right:6px;top:6px;width:24px;height:24px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center}
.zc56-th-play .ic{width:12px;height:12px}
.zc56-th-tag{position:absolute;left:6px;bottom:6px;background:var(--brand);color:#fff;font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px}
.zc56-sk{animation:zc56Pulse 1.1s ease-in-out infinite alternate}
@keyframes zc56Pulse{from{opacity:.45}to{opacity:.9}}
.zc56-empty{text-align:center;color:var(--muted);padding:30px 10px;font-weight:600}
.zc56-sentinel{display:block;height:1px}
@media (min-width:700px){.zc56-grid{gap:6px}.zc56-th{border-radius:8px}}

/* Perfil: visor a pantalla completa (por debajo de las ventanas .zc-modal) */
.zc56-noscroll,.zc56-noscroll body{overflow:hidden}
.zc56-viewer{position:fixed;inset:0;z-index:58;background:#000;color:#fff;display:flex;flex-direction:column;animation:zcFade .16s}
.zc56-viewer[hidden]{display:none}
.zc56-v-top{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;gap:10px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));background:linear-gradient(rgba(0,0,0,.65),transparent);z-index:3}
.zc56-v-count{font-weight:800;font-size:14px}
.zc56-v-src{font-size:13px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc56-v-btn{border:0;background:rgba(255,255,255,.14);color:#fff;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:none}
.zc56-v-stage{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
.zc56-v-slide{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform .22s ease,opacity .22s ease}
.zc56-v-slide img,.zc56-v-slide video{max-width:100%;max-height:100%;object-fit:contain;display:block}
.zc56-v-slide img{pointer-events:none}
.zc56-v-nav{position:absolute;top:50%;transform:translateY(-50%);border:0;background:rgba(255,255,255,.14);color:#fff;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;z-index:3;backdrop-filter:blur(6px)}
.zc56-v-prev{left:10px}.zc56-v-next{right:10px}
.zc56-v-nav[hidden]{display:none}
@media (max-width:600px){.zc56-v-nav{display:none}}
.zc56-v-bar{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-around;gap:2px;padding:10px 6px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.75));z-index:3}
.zc56-v-bar>*{display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:none;color:#fff;font-size:11.5px;font-weight:700;text-decoration:none;min-width:54px;padding:4px;border-radius:10px}
.zc56-v-bar>*[hidden]{display:none}
.zc56-v-bar .ic{width:22px;height:22px}
.zc56-v-bar .is-on{color:var(--like)}
.zc56-v-bar .is-on .ic{fill:currentColor}
.zc56-v-bar .danger{color:#ff8a8a}
.zc56-v-bar .pop .ic{animation:zcPop .3s}
.zc56-v-cm{position:absolute;left:0;right:0;bottom:0;max-height:62vh;display:flex;flex-direction:column;background:var(--card);color:var(--text);border-radius:18px 18px 0 0;z-index:4;box-shadow:0 -10px 40px rgba(0,0,0,.4)}
.zc56-v-cm[hidden]{display:none}
.zc56-v-cm header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}
.zc56-v-cm header .zc56-v-btn{background:var(--hover);color:var(--text);width:36px;height:36px}
.zc56-cm-list{overflow:auto;padding:10px 14px;display:grid;gap:8px}
.zc56-cm{background:var(--hover);border-radius:12px;padding:8px 11px}
.zc56-cm p{margin:3px 0 0;overflow-wrap:anywhere}
.zc56-cm small{color:var(--muted)}
.zc56-cm-form{display:flex;gap:8px;padding:10px 14px;padding-bottom:max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}
.zc56-cm-form input{flex:1;border:1px solid var(--line);background:var(--input);color:var(--text);border-radius:999px;padding:9px 14px;font:inherit}
.zc56-cm-login{padding:12px 14px}

/* =====================================================================
   v5.7 · ocultar, guardar, verificado, campana, selector de audiencia,
   emojis/stickers, registro obligatorio y editor de fotos y videos.
   Claro y oscuro, móvil y PC.
   ===================================================================== */
:root{--zc57-letter-bg:#94a3b8;--zc57-verified:#1d9bf0}
html[data-theme="dark"]{--zc57-letter-bg:#475569;--zc57-verified:#4cb3ff}

/* Verificado y avatar con letra */
.zc-verified{display:inline-flex;vertical-align:-2px;margin-left:3px;color:var(--zc57-verified);flex:none}
.zc-verified svg{width:15px;height:15px;display:block}
h1 .zc-verified svg{width:22px;height:22px}
.zc-avatar-letter{font-weight:800;font-size:15px;color:#fff;text-transform:uppercase;line-height:1}
.zc-avatar-letter.zc-avatar-sm{font-size:14px}

/* Ocultar publicación + toast con «Deshacer» */
.zc57-hiding{opacity:.25;filter:grayscale(1);pointer-events:none;transition:opacity .2s,filter .2s}
.zc-toast.zc57-undo{gap:10px;padding-right:8px}
.zc57-undo-btn{border:0;background:color-mix(in srgb,currentColor 16%,transparent);color:inherit;font:inherit;font-weight:700;padding:6px 12px;border-radius:999px;cursor:pointer;min-height:32px}
.zc57-undo-btn:hover{background:color-mix(in srgb,currentColor 26%,transparent)}
.zc57-hidden-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.zc57-hidden-list li{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card-2)}
.zc57-hid-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--hover);color:var(--text-2);flex:none}
.zc57-hid-ic .ic{width:17px;height:17px}
.zc57-hid-txt{flex:1;min-width:0;display:flex;flex-direction:column;font-size:14px}
.zc57-hid-txt a,.zc57-hid-txt small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zc57-hidden-list .zc-btn{min-height:36px;padding:0 12px;font-size:13px;flex:none}

/* Avatar de «Crear publicación» como enlace */
.zc57-compose-av{display:inline-flex;border-radius:50%;flex:none;text-decoration:none}
.zc57-compose-av:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 45%,transparent);outline-offset:2px}

/* Tarjeta «Regístrate para participar» */
.zc57-gate-card{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.zc57-gate-txt{flex:1;min-width:180px;display:flex;flex-direction:column}
.zc57-gate-txt small{color:var(--muted)}
.zc57-gate-actions{display:flex;gap:8px;flex-wrap:wrap}
.zc57-gate-actions .zc-btn{min-height:38px;padding:0 14px}

/* Modal «Regístrate o inicia sesión para seguir viendo» */
.zc57-gate{z-index:85;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.zc57-gate-dialog{max-width:400px;padding:28px 24px 20px;text-align:center;align-items:center;gap:10px}
.zc57-gate-dialog h2{margin:4px 0 0;font-size:20px}
.zc57-gate-dialog p{margin:0;color:var(--muted)}
.zc57-gate-ic{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:color-mix(in srgb,var(--brand) 14%,var(--card));color:var(--brand)}
.zc57-gate-ic .ic{width:28px;height:28px}
.zc57-gate-dialog .zc57-gate-actions{width:100%;flex-direction:column;margin-top:8px}
.zc57-gate-dialog .zc57-gate-actions .zc-btn{width:100%;min-height:46px}
body.zc57-gated{overflow:hidden}
.zc57-link{border:0;background:none;color:var(--brand);font:inherit;font-weight:600;cursor:pointer;padding:6px 4px;text-decoration:underline;text-underline-offset:3px}

/* Selector «Quién lo ve» */
.zc57-aud-on{display:none!important}
.zc57-aud-btn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:4px 10px 4px 10px;border:1px solid var(--line);border-radius:999px;background:var(--input);color:var(--text);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.zc57-aud-btn .ic{width:14px;height:14px;opacity:.7}
.zc57-aud-btn:hover{background:var(--hover)}
.zc57-aud-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 30%,transparent)}
.zc57-aud-btn:disabled{opacity:.55;cursor:not-allowed}
.zc57-aud-list{position:fixed;z-index:95;padding:6px;background:var(--elev);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);animation:zcPop .14s ease}
.zc57-aud-opt{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;cursor:pointer;outline:none}
.zc57-aud-list .zc57-aud-opt{flex-direction:row;gap:10px;text-align:left}
.zc57-aud-list .zc57-aud-t{flex-direction:column;align-items:flex-start;gap:1px}
.zc57-aud-opt:hover,.zc57-aud-opt:focus{background:var(--hover)}
.zc57-aud-opt.is-on{background:color-mix(in srgb,var(--brand) 12%,transparent)}
.zc57-aud-emo{font-size:20px;line-height:1;width:26px;text-align:center;flex:none}
.zc57-aud-btn .zc57-aud-emo{font-size:15px;width:auto}
.zc57-aud-t{flex:1;display:flex;flex-direction:column;min-width:0}
.zc57-aud-t b{font-size:14px;color:var(--text)}
.zc57-aud-t small{font-size:12.5px;color:var(--muted)}
.zc57-aud-check{color:var(--brand);opacity:0;flex:none}
.zc57-aud-opt.is-on .zc57-aud-check{opacity:1}

/* Emojis y stickers en los campos */
.zc57-emo-wrap{position:relative;display:block}
.zc57-emo-wrap>input{padding-right:42px}
.zc57-emo-wrap.is-area>textarea{padding-right:42px}
.zc57-emo-btn{border:0;background:transparent;font-size:19px;line-height:1;width:34px;height:34px;border-radius:50%;cursor:pointer;display:inline-grid;place-items:center;flex:none;filter:saturate(.9)}
.zc57-emo-btn:hover{background:var(--hover)}
.zc57-emo-wrap>.zc57-emo-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%)}
.zc57-emo-wrap.is-area>.zc57-emo-btn{top:auto;bottom:6px;transform:none}
.zc57-emo-pop{position:fixed;bottom:auto;right:auto;left:8px;margin:0;z-index:96;max-width:none}
.zc57-stk-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;padding:4px 2px 8px}
.zc57-stk{display:inline-flex;align-items:center;gap:4px;width:auto!important;height:auto!important;font-size:14px!important;font-weight:800;padding:6px 12px!important;border-radius:999px!important;border:0;color:#fff;cursor:pointer;line-height:1.2}
.zc57-stk-hot{background:#ff3b30!important}
.zc57-stk-x18{background:#111!important;box-shadow:inset 0 0 0 2px #ff2d55}
.zc57-stk-solo{background:#ff2d77!important}

/* Etiqueta «sin sonido» en el compositor y botón del editor */
.zc57-tile-muted{position:absolute;left:6px;top:6px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;z-index:2}
.zc57-tile-muted .ic{width:14px;height:14px}
.zc57-edit-all{width:calc(100% - 24px);margin:8px 12px 0;min-height:40px}

/* Campana de notificaciones */
.zc57-bell-wrap{position:relative;display:inline-flex}
.zc57-bell{position:relative}
.zc57-bell-pop{position:absolute;right:-6px;top:calc(100% + 8px);width:min(360px,calc(100vw - 16px));max-height:min(70vh,520px);display:flex;flex-direction:column;background:var(--elev);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg);z-index:80;overflow:hidden;animation:zcPop .14s ease}
.zc57-bell-pop header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}
.zc57-bell-pop header .zc57-link{font-size:13px;text-decoration:none}
.zc57-bell-list{overflow:auto;overscroll-behavior:contain;padding:6px}
.zc57-notif{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;color:var(--text);text-decoration:none;position:relative}
.zc57-notif:hover{background:var(--hover)}
.zc57-notif.unread{background:color-mix(in srgb,var(--brand) 9%,transparent)}
.zc57-notif .zc-avatar{width:40px;height:40px}
.zc57-notif-txt{flex:1;min-width:0;font-size:14px;line-height:1.35}
.zc57-notif-txt small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.zc57-dot{width:9px;height:9px;border-radius:50%;background:var(--brand);flex:none}
.zc57-bell-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 16px;color:var(--muted);text-align:center}
.zc57-bell-empty .ic{width:30px;height:30px;opacity:.6}
.zc57-bell-empty p{margin:0}
@media (max-width:640px){.zc57-bell-pop{position:fixed;right:8px;left:8px;width:auto;top:calc(var(--top-h,60px) + 4px)}}

/* Pestañas del perfil (Guardados) */
[data-profile-feed] button[aria-selected="true"],[data-ptab="saved"].active{color:var(--brand)}

/* ---------------- Editor de fotos y videos ---------------- */
html.zc57-ed-open,html.zc57-ed-open body{overflow:hidden}
.zc57-ed{position:fixed;inset:0;z-index:110;display:flex;flex-direction:column;background:#05070c;color:#fff;-webkit-user-select:none;user-select:none;touch-action:manipulation;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.zc57-ed[hidden]{display:none}
.zc57-ed .ic{width:20px;height:20px}
.zc57-ed button{font:inherit;color:inherit}
.zc57-ed-top{display:flex;align-items:center;gap:8px;padding:10px 12px;flex:none}
.zc57-ed-count{flex:1;text-align:center;font-weight:700;font-size:15px;letter-spacing:.02em}
.zc57-ed-ib{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.1);cursor:pointer;flex:none;font-weight:800}
.zc57-ed-ib:hover{background:rgba(255,255,255,.18)}
.zc57-ed-ib:disabled{opacity:.35;cursor:default}
.zc57-ed-done{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 18px;border-radius:999px;border:0;background:var(--brand,#4f46e5);font-weight:800;cursor:pointer}
.zc57-ed-done:hover{filter:brightness(1.1)}
.zc57-ed-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}
.zc57-ed-box{position:relative;max-width:100%;max-height:100%;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.zc57-ed-base{display:block}
.zc57-ed-video{display:block;width:100%;height:100%;background:#000;object-fit:contain}
.zc57-ed-ovs{position:absolute;inset:0;overflow:visible}
.zc57-ov{position:absolute;cursor:grab;white-space:pre;line-height:1.2;touch-action:none;outline:none;will-change:transform}
.zc57-ov:active{cursor:grabbing}
.zc57-ov-t{display:inline-block;padding:.2em .45em;pointer-events:none}
.zc57-ov.emo .zc57-ov-t{padding:0 .1em;line-height:1.1}
.zc57-ov.sel .zc57-ov-t{outline:2px dashed rgba(255,255,255,.85);outline-offset:4px}
.zc57-ov:focus-visible .zc57-ov-t{outline:2px solid #fff;outline-offset:4px}
.zc57-ov-del,.zc57-ov-edit,.zc57-ov-rs{position:absolute;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:2px solid #fff;background:#111;color:#fff;cursor:pointer;font-size:14px;transform:scale(var(--inv,1));padding:0;line-height:1}
.zc57-ov-del .ic,.zc57-ov-edit .ic,.zc57-ov-rs .ic{width:15px;height:15px}
.zc57-ov-del{left:-16px;top:-16px;background:#e11d48}
.zc57-ov-edit{right:-16px;top:-16px}
.zc57-ov-rs{right:-16px;bottom:-16px;cursor:nwse-resize;touch-action:none}
@media (pointer:coarse){.zc57-ov-rs{display:none}}
.zc57-ed-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.14);cursor:pointer}
.zc57-ed-nav:hover{background:rgba(255,255,255,.24)}
.zc57-ed-nav.prev{left:12px}.zc57-ed-nav.next{right:12px}
.zc57-ed-nav[hidden]{display:none}
@media (max-width:700px){.zc57-ed-nav{width:38px;height:38px;background:rgba(0,0,0,.45)}.zc57-ed-nav.prev{left:6px}.zc57-ed-nav.next{right:6px}}
.zc57-ed-trash{position:absolute;left:50%;bottom:14px;transform:translate(-50%,30px);display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(0,0,0,.65);border:2px solid rgba(255,255,255,.4);font-weight:700;font-size:13px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s,background .15s;z-index:4}
.zc57-ed-trash.show{opacity:1;transform:translate(-50%,0)}
.zc57-ed-trash.hot{background:#e11d48;border-color:#fff;transform:translate(-50%,0) scale(1.08)}
.zc57-ed-hint{position:absolute;left:50%;top:10px;transform:translateX(-50%);font-size:13px;background:rgba(0,0,0,.55);padding:6px 12px;border-radius:999px;pointer-events:none;max-width:90%;text-align:center}
.zc57-ed-hint:empty{display:none}
.zc57-ed-crop{position:absolute;inset:0;z-index:2}
.zc57-ed-cropbox{position:absolute;box-shadow:0 0 0 9999px rgba(0,0,0,.55);border:2px solid #fff;cursor:move;touch-action:none;background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);background-size:33.333% 33.333%;background-position:-1px -1px}
.zc57-ed-cropbox i{position:absolute;width:26px;height:26px;border:4px solid #fff;touch-action:none}
.zc57-ed-cropbox i[data-h="nw"]{left:-5px;top:-5px;border-right:0;border-bottom:0;cursor:nwse-resize}
.zc57-ed-cropbox i[data-h="ne"]{right:-5px;top:-5px;border-left:0;border-bottom:0;cursor:nesw-resize}
.zc57-ed-cropbox i[data-h="sw"]{left:-5px;bottom:-5px;border-right:0;border-top:0;cursor:nesw-resize}
.zc57-ed-cropbox i[data-h="se"]{right:-5px;bottom:-5px;border-left:0;border-top:0;cursor:nwse-resize}
.zc57-ed-strip{display:flex;gap:8px;overflow-x:auto;padding:8px 12px 4px;flex:none;scrollbar-width:none;justify-content:safe center}
.zc57-ed-strip::-webkit-scrollbar{display:none}
.zc57-ed-strip[hidden]{display:none}
.zc57-ed-th{position:relative;flex:none}
.zc57-ed-thb{display:block;width:54px;height:54px;padding:0;border-radius:10px;overflow:hidden;border:2px solid transparent;background:#111;cursor:pointer;opacity:.7}
.zc57-ed-th.on .zc57-ed-thb{border-color:#fff;opacity:1}
.zc57-ed-thb img,.zc57-ed-thb video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.zc57-ed-cover{position:absolute;left:2px;right:2px;bottom:2px;font-size:9px;font-weight:800;text-align:center;background:var(--brand,#4f46e5);border-radius:0 0 8px 8px;pointer-events:none;text-transform:uppercase;letter-spacing:.03em}
.zc57-ed-mut{position:absolute;right:3px;top:3px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(0,0,0,.7);pointer-events:none}
.zc57-ed-mut .ic{width:11px;height:11px}
.zc57-ed-mv{display:flex;justify-content:space-between;margin-top:4px;gap:4px}
.zc57-ed-mv button{flex:1;height:26px;border:0;border-radius:8px;background:rgba(255,255,255,.16);cursor:pointer;font-weight:800;font-size:16px;line-height:1}
.zc57-ed-mv button:disabled{opacity:.3}
.zc57-ed.reordering .zc57-ed-th{cursor:grab}
.zc57-ed-tools{display:flex;gap:2px;overflow-x:auto;padding:6px 8px 10px;flex:none;scrollbar-width:none;justify-content:safe center}
.zc57-ed-tools::-webkit-scrollbar{display:none}
.zc57-ed-tool{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:62px;padding:8px 6px;border:0;border-radius:12px;background:transparent;cursor:pointer;font-size:11.5px;font-weight:600;flex:none}
.zc57-ed-tool:hover{background:rgba(255,255,255,.1)}
.zc57-ed-tool.on{background:rgba(255,255,255,.18)}
.zc57-ed-tool.off{opacity:.35}
.zc57-ed-tool .ic{width:22px;height:22px}
.zc57-ed-panel{flex:none;padding:10px 12px;background:#0d111a;border-top:1px solid rgba(255,255,255,.08)}
.zc57-ed-panel[hidden]{display:none}
.zc57-ed.paneled .zc57-ed-tools,.zc57-ed.cropping .zc57-ed-tools,.zc57-ed.cropping .zc57-ed-strip{display:none}
.zc57-ed-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.zc57-ed-row.between{justify-content:space-between}
.zc57-ed-chips{display:flex;gap:6px;overflow-x:auto;justify-content:safe center;padding:2px 0 8px;scrollbar-width:none}
.zc57-ed-chip{flex:none;padding:7px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;cursor:pointer;font-weight:700;font-size:13px}
.zc57-ed-chip.on{background:#fff;color:#111}
.zc57-ed-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;cursor:pointer;font-weight:700}
.zc57-ed-btn.pri{background:#fff;color:#111;border-color:#fff}
.zc57-ed-btn .ic{width:17px;height:17px}
.zc57-ed-stks{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:8px 0}
.zc57-ed-stks .zc57-stk{font-size:15px!important;padding:8px 14px!important}
.zc57-ed-hot{display:flex;gap:2px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:none}
.zc57-ed-hot button{flex:none;width:42px;height:42px;font-size:26px;border:0;background:transparent;border-radius:10px;cursor:pointer}
.zc57-ed-hot button:hover{background:rgba(255,255,255,.12)}
.zc57-ed .zc57-ed-emojis{position:static;max-width:none;width:auto;margin:0;animation:none;background:#151a26;border-color:rgba(255,255,255,.1);color:#fff}
.zc57-ed .zc57-ed-emojis .zc-emoji-grid{max-height:min(30vh,220px)}
.zc57-ed-text{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;background:rgba(0,0,0,.72);padding:calc(10px + env(safe-area-inset-top)) 12px calc(10px + env(safe-area-inset-bottom))}
.zc57-ed-text[hidden]{display:none}
.zc57-ed-textwrap{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:10px}
.zc57-ed-ta{width:100%;max-width:640px;border:0;resize:none;outline:none;background:transparent;font-size:30px;line-height:1.2;padding:.2em .45em;border-radius:.35em;caret-color:#fff;overflow:auto;-webkit-user-select:text;user-select:text}
.zc57-ed-ta::placeholder{color:rgba(255,255,255,.55)}
.zc57-ed-textbar{display:flex;flex-direction:column;gap:8px;max-width:640px;width:100%;margin:0 auto}
.zc57-ed-colors{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.zc57-ed-colors button{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.5);cursor:pointer;padding:0}
.zc57-ed-colors button.on{border:3px solid #fff;transform:scale(1.15);box-shadow:0 0 0 2px #000}
.zc57-ed-size{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}
.zc57-ed-size input{width:130px;accent-color:#fff}
[data-ed="t-align"][data-al="left"] .ic{transform:none}
[data-ed="t-align"][data-al="right"] .ic{transform:scaleX(-1)}
.zc57-ed-busy{position:absolute;inset:0;z-index:9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(0,0,0,.6)}
.zc57-ed-busy[hidden]{display:none}
.zc57-ed-spin{width:36px;height:36px;border-radius:50%;border:4px solid rgba(255,255,255,.25);border-top-color:#fff;animation:zc57spin .8s linear infinite}
@keyframes zc57spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.zc57-ed-spin{animation-duration:2s}.zc57-ed-trash,.zc57-hiding{transition:none}}
.zc-menu.zc-menu-fixed{position:fixed;right:auto;max-height:calc(100vh - 16px);overflow:auto;z-index:90}
