/* Southern Digital · Contenido (calendario de publicaciones) */
/* cada post lleva --ec (color del estado) y --ei (texto sobre ese color), que salen de Ajustes → Contenido */

/* en el celular el + es la forma rápida de cargar: el botón del encabezado sobra */
@media (max-width:899px){.chead #nuevoPost{display:none}}

/* mes y navegación */
.cmes{display:flex;align-items:center;gap:6px;margin:0 0 14px}
.cmes h2{font-size:20px;min-width:0;text-align:center;flex:0 1 auto;padding:0 4px}
@media (max-width:899px){.cmes h2{flex:1}}
.cmes #mesHoy{margin-left:6px}

/* contadores por estado (también filtran) */
.cresumen{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.cresumen button{display:inline-flex;align-items:baseline;gap:6px;min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ec,var(--line-3)) 45%,transparent);background:var(--surface);color:var(--ink-2);font-size:13px;font-weight:600;cursor:pointer}
.cresumen button b{font-family:"Bricolage Grotesque",sans-serif;font-size:17px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.cresumen button:not(.cr-total)::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ec);align-self:center}
.cresumen button:hover{border-color:var(--ec,var(--line-3))}
.cresumen button.on{background:var(--ec,var(--lime));border-color:var(--ec,var(--acento));color:var(--ei,var(--lime-ink))}
.cresumen button.on b{color:inherit}
.cresumen button.on::before{background:currentColor}
.cfiltros select{flex:1 1 200px}
.cfiltros .btn{min-height:40px}
/* celular: los contadores en una fila que se desliza y los filtros de a dos (el estado se elige con los contadores) */
@media (max-width:899px){
  .cresumen{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px 10px;padding:0 16px}
  .cresumen::-webkit-scrollbar{display:none}
  .cresumen button{flex:0 0 auto;white-space:nowrap}
  .cfiltros .dd:has(#fEst){display:none}
  .cfiltros .dd{flex:1 1 140px;min-width:0}
  .cfiltros .btn{flex:1 1 100%}
}

/* tarjeta de un post */
.cpost{position:relative;display:block;padding:6px 8px 6px 10px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--ec);cursor:pointer;font-size:12px;line-height:1.35;text-align:left;color:var(--ink)}
.cpost:hover{border-color:var(--line-3);border-left-color:var(--ec);background:var(--hover)}
.cpost.arrastrando{opacity:.45}
.cp-top{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;font-weight:600}
.chora{color:var(--ink-2);font-variant-numeric:tabular-nums}
.cred{display:inline-flex;gap:2px}
.cred svg{width:12px;height:12px}
.cform{white-space:nowrap}
.cpunto{width:8px;height:8px;border-radius:50%;background:var(--ec);margin-left:auto;flex:0 0 auto}
.cp-tit{display:block;margin-top:2px;font-weight:600;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
.cp-pie{display:flex;flex-wrap:wrap;gap:3px 8px;margin-top:3px;font-size:11px;color:var(--muted)}
.ccli{font-weight:600;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.cpilar{display:inline-flex;align-items:center;gap:4px;min-width:0}
.cpilar::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--c);flex:0 0 auto}
.cestado{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;background:var(--ec);color:var(--ei);white-space:nowrap}
.cp-top .cestado{margin-left:auto}

/* compu: grilla del mes */
.cgrid{display:none}
.clista{display:block}
.cg-hint{display:none}
@media (min-width:900px){
  .cgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--line);gap:1px}
  .clista{display:none}
  .cg-hint{display:block;margin-top:10px}
}
.cg-dsem{background:var(--surface);padding:8px 10px;font-size:12px;font-weight:600;color:var(--muted);text-transform:capitalize}
.cdia{background:var(--bg-2);min-height:118px;padding:6px;display:flex;flex-direction:column;gap:4px;cursor:pointer;min-width:0}
.cdia:hover{background:color-mix(in srgb,var(--bg-2) 70%,var(--surface-2))}
.cdia.fuera{background:var(--bg)}
.cdia.fuera .cd-num span{color:var(--faint)}
.cdia.sobre{box-shadow:inset 0 0 0 2px var(--acento)}
.cd-num{display:flex;align-items:center;justify-content:space-between;min-height:24px;padding:0 2px 0 4px}
.cd-num span{font-size:13px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}
.cdia.hoy .cd-num span{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--lime);color:var(--lime-ink)}
.cd-add{width:24px;height:24px;border-radius:6px;border:0;background:transparent;color:var(--muted);font-size:17px;line-height:1;cursor:pointer;opacity:0}
.cdia:hover .cd-add,.cd-add:focus-visible{opacity:1}
.cd-add:hover{background:var(--surface-3);color:var(--ink)}

/* celular: lista por día */
.cl-dia{margin-bottom:18px}
.cl-dia h3{display:flex;align-items:center;gap:8px;font-size:15px;margin:0 0 8px}
.cl-dia h3 > span:first-child{flex:0 1 auto}
.cl-dia h3 .btn{margin-left:auto}
.cl-dia.hoy h3{color:var(--acento)}
.cl-dia.pasado h3 > span:first-child{color:var(--muted)}
.cl-posts{display:grid;gap:8px}
.cpost.larga{padding:10px 12px 10px 14px;font-size:14px;border-radius:12px;background:var(--surface)}
.cpost.larga .cp-top{font-size:12px}
.cpost.larga .cred svg{width:14px;height:14px}
.cpost.larga .cp-pie{font-size:12px}

/* ficha del post */
.cpil-fila{display:flex;align-items:flex-end;gap:8px}
.cpil-fila .f{flex:1;min-width:0}
.cpil-fila .btn{margin-bottom:12px;min-height:44px}
.ccuenta{float:right;font-weight:500;font-variant-numeric:tabular-nums}
.ccuenta.pasado{color:var(--danger)}
.cnotas > span b{color:var(--warn)}
.cnotas textarea{background:color-mix(in srgb,var(--warn) 6%,var(--bg))}

/* pilares */
.cpil-lista{display:grid;gap:8px;margin-bottom:10px}
.cpil-item{position:relative;display:flex;align-items:center;gap:6px}
.cpil-item .color-sw{flex:0 0 auto;width:40px;height:40px;border-radius:9px;border:2px solid var(--borde-muestra);cursor:pointer;padding:0}
.cpil-item .color-sw:hover{border-color:var(--acento)}
.cpil-item .pil-n{flex:1;min-width:0}
@media (max-width:420px){.cpil-item .btn.icon{width:34px}}

/* en la ficha del cliente */
.ccli-est{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.ccli-est .cestado{font-size:12px;padding:2px 9px}

/* ---------- archivos de Drive (etapa 2) ---------- */
/* en la tarjeta: 📎 y la cantidad (⚠ si alguno se borró o se movió) */
.carch-n{display:inline-flex;align-items:center;gap:2px;font-variant-numeric:tabular-nums}
.carch-n svg{width:11px;height:11px}
.carch-n.aviso{color:var(--warn)}
.cpost.con-mini{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:12px}
.cpost.con-mini > :not(.cp-mini){grid-column:2}
.cp-mini{grid-row:1 / span 3;position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;background:var(--surface-3)}
.cp-mini img{width:100%;height:100%;object-fit:cover;display:block}

/* lista ordenada (en el post y en el explorador) */
.carchs{margin:2px 0 16px}
#archLista,#dxSel{display:grid;gap:6px;margin-bottom:10px}
#archLista:empty{display:none}
.carch{display:flex;align-items:center;gap:6px;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--bg-2)}
.carch.aviso{border-color:color-mix(in srgb,var(--warn) 55%,transparent);background:color-mix(in srgb,var(--warn) 7%,var(--bg-2))}
.carch-orden{flex:0 0 18px;text-align:center;font-size:12px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.carch-mini{position:relative;flex:0 0 auto;width:52px;height:52px;border-radius:8px;overflow:hidden;border:0;padding:0;background:var(--surface-3);cursor:pointer;color:var(--warn);font-size:20px}
.carch-mini img{width:100%;height:100%;object-fit:cover;display:block}
.carch-mini:disabled{cursor:default}
.carch-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.carch-txt b{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.carch-txt small{font-size:12px;color:var(--muted)}
.carch-aviso{color:var(--warn);font-weight:600}
.carch .btn.icon{width:34px;min-height:34px;flex:0 0 auto}
@media (max-width:420px){.carch .btn.icon{width:30px}}
#elegir svg{width:15px;height:15px}

/* ícono del tipo cuando no hay miniatura */
.sin-mini::before,.dx-mini:not(:has(img))::before{content:"";position:absolute;inset:0;margin:auto;width:40%;height:40%;opacity:.5;background:var(--muted);
  -webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.t-imagen{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='3'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E")}
.t-video,.t-otro{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='2' y='5' width='15' height='14' rx='3'/%3E%3Cpath d='m17 10 5-3v10l-5-3z'/%3E%3C/svg%3E")}
.dx-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:10px;padding-left:2px;pointer-events:none}

/* explorador */
.sheet-bg.dx .sheet{max-width:760px}
.dx-ruta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:-4px 0 12px;font-size:13px;color:var(--muted)}
.dx-ruta [aria-current]{color:var(--ink);font-weight:600}
.dx-miga{border:0;background:none;padding:4px 2px;color:var(--acento);font:inherit;font-weight:600;cursor:pointer}
.dx-miga:hover{text-decoration:underline}
.dx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;margin-bottom:10px}
@media (max-width:420px){.dx-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}
.dx-item{display:flex;flex-direction:column;gap:5px;min-width:0;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}
.dx-mini{position:relative;display:block;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--surface-3);border:2px solid transparent}
.dx-mini img{width:100%;height:100%;object-fit:cover;display:block}
.dx-item:hover .dx-mini{border-color:var(--line-3)}
.dx-item.on .dx-mini{border-color:var(--acento)}
.dx-item.off{cursor:not-allowed;opacity:.4}
.dx-nom{font-size:12px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
.dx-check{position:absolute;top:6px;right:6px;display:grid;place-items:center;min-width:24px;height:24px;padding:0 5px;border-radius:999px;border:2px solid #fff;background:rgba(0,0,0,.35);color:var(--lime-ink);font-size:12px;font-weight:800}
.dx-item.on .dx-check{background:var(--lime);border-color:var(--lime)}
.dx-dur{position:absolute;left:6px;bottom:6px;padding:1px 6px;border-radius:6px;background:rgba(0,0,0,.6);color:#fff;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}
.dx-carpeta{flex-direction:row;align-items:center;gap:8px;padding:10px;border:1px solid var(--line-2);border-radius:10px;background:var(--surface-2);grid-column:span 1;min-height:48px}
.dx-carpeta:hover{border-color:var(--line-3);background:var(--hover)}
.dx-carpeta svg{flex:0 0 auto;width:20px;height:20px;color:var(--acento)}
#dxMas{margin-bottom:12px}
.dx-sel{border-top:1px solid var(--line);padding-top:12px}
.dx-sel .lbl small{font-weight:500}

/* visor */
.sheet-bg.dv .sheet{max-width:900px}
.dv-tit{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dv-media{display:grid;place-items:center;background:#000;border-radius:12px;overflow:hidden;min-height:200px}
.dv-media img,.dv-media video{display:block;max-width:100%;max-height:70vh}

/* ficha del cliente */
.cli-drive{display:flex;align-items:flex-end;gap:8px}
.cli-drive .f{flex:1;min-width:0}
.cli-drive .btn{margin-bottom:12px;min-height:44px}

/* Ajustes → Drive */
.ddiag .dr-error b{color:var(--danger)}
.ddiag .dr-sin_carpeta b{color:var(--muted)}
.ddiag .dr-ok b{color:var(--ok)}
.ddiag td{white-space:normal}

/* Ajustes → Meta (contenido) */
.pill.mc-aviso{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}
.pill.mc-error{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}
.mc-datos{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 16px;margin:0;font-size:14px}
.mc-datos div{display:contents}
.mc-datos dt{color:var(--muted)}
.mc-datos dd{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mc-perms{display:flex;flex-wrap:wrap;gap:6px}
.mc-perm{font:500 12px "JetBrains Mono",monospace;padding:3px 8px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface-3);color:var(--ink-2)}
.mc-perm.si{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,transparent);background:color-mix(in srgb,var(--ok) 10%,transparent)}
.mc-perm.no{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent)}
.mc-pags{list-style:none;margin:0;padding:0}
.mc-pags li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.mc-pags li:first-child{border-top:0}
.mc-pag{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:14px}
.mc-pag .muted,.mc-pag .hint{font-size:12px;margin:0}
.mc-pags select{width:200px;max-width:45%;flex-shrink:0;min-height:44px}
.ddiag .dr-aviso b{color:var(--warn)}
.ddiag .dr-sin_pagina b{color:var(--muted)}
.mcdiag td .muted{font-size:12px}
.cli-meta{margin-top:-4px}
@media (max-width:560px){
  .mc-pags li{flex-direction:column;align-items:stretch}
  .mc-pags select{width:100%;max-width:none}
}

/* ---------- revisión del cliente (etapa 3) ---------- */
/* en la tarjeta: comentarios (resaltados si hay novedades) y la marca de "cambió después de aprobado" */
.ccom{display:inline-flex;align-items:center;gap:2px;color:var(--muted)}
.ccom svg{width:12px;height:12px}
.ccom.nuevo{color:var(--lime-ink);background:var(--lime);border-radius:999px;padding:0 5px 0 4px}
.ccambio{color:var(--warn);font-weight:700}
.cpost.con-nov{box-shadow:0 0 0 1px var(--acento)}
/* barra del calendario de un cliente: enviar a revisión y el link */
.crev{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;padding:10px 12px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}
.crev-t{font-size:13px;font-weight:600;color:var(--muted);margin-right:auto}
.crev .btn svg{width:16px;height:16px}
.crev .btn .pill{margin-left:2px;vertical-align:0}
.crev .btn.primary .pill{background:rgba(0,0,0,.14);color:inherit}
@media (max-width:899px){.crev-t{flex:1 1 100%}.crev .btn{flex:1 1 0}}
#novedades svg{width:18px;height:18px}
@media (max-width:899px){#novedades{padding:0 11px;gap:5px}#novedades .nov-btn-t{display:none}}
/* link de revisión */
.lnk-btns{display:flex;flex-wrap:wrap;gap:8px}
.lnk-btns .btn{flex:1 1 120px}
.lnk-btns svg{width:18px;height:18px}
.lnk-zona{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.lnk-zona .hint{flex:1 1 100%}
.ok-txt{color:var(--ok)}
/* novedades */
.nov-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px}
.nov-lista{display:flex;flex-direction:column;gap:6px}
.nov-item{display:flex;gap:12px;align-items:flex-start;width:100%;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);text-align:left;cursor:pointer;color:var(--ink)}
.nov-item:hover{border-color:var(--line-3);background:var(--hover)}
.nov-item.nuevo{border-color:color-mix(in srgb,var(--acento) 55%,var(--line));background:color-mix(in srgb,var(--lime) 6%,var(--surface-2))}
.nov-ic{flex:0 0 30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:700;background:var(--surface-3)}
.nov-item.t-aprobado .nov-ic{background:color-mix(in srgb,var(--co-aprobado) 22%,transparent);color:var(--ok)}
.nov-item.t-cambios .nov-ic{background:color-mix(in srgb,var(--co-cambios) 25%,transparent);color:var(--warn)}
.nov-txt{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:14px}
.nov-txt small{color:var(--muted);font-size:12px}
.nov-cita{color:var(--ink-2);font-size:13px;border-left:2px solid var(--line-3);padding-left:8px;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* hilo en la ficha del post */
.crev-hilo{margin:18px 0;padding:14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}
.hilo{display:flex;flex-direction:column;gap:8px}
.hl-msj{max-width:88%;padding:8px 11px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:14px;align-self:flex-start}
.hl-msj p{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.hl-msj small{color:var(--muted);font-size:12px}
.hl-msj.agencia{align-self:flex-end;background:var(--lime-soft);border-color:color-mix(in srgb,var(--acento) 30%,transparent)}
.hl-msj.cambios{border-color:color-mix(in srgb,var(--co-cambios) 50%,transparent);background:color-mix(in srgb,var(--co-cambios) 10%,var(--surface))}
.hl-msj.nuevo,.hl-ev.nuevo{box-shadow:0 0 0 2px var(--acento)}
.hl-ev{align-self:center;font-size:12.5px;color:var(--muted);padding:2px 8px;border-radius:999px}
.hilo-resp{display:flex;gap:8px;align-items:flex-end;margin-top:12px}
.hilo-resp textarea{flex:1;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg);resize:vertical;font-size:16px}

/* ---------- publicación en Meta (etapa 5) ---------- */
/* en la tarjeta: no se pudo programar, o hay un error / algo para publicar a mano */
.cprog-err{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;font-size:10px;font-weight:800;color:#fff;background:var(--danger)}
/* barra del cliente: Programar mes */
.crev-sep{width:1px;align-self:stretch;background:var(--line);margin:0 4px}
.crev-hint{flex-basis:100%;margin:0;font-size:12px}
/* en el post */
.cpub{margin:18px 0;padding:14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}
.cpub .walertas{margin:0 0 10px}
.cpub-mot{margin:0 0 10px}
.cpub-mot ul{margin:4px 0 0;padding-left:18px;font-weight:500}
.cpub-acc{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.cpub-acc .hint{font-size:12px}
.cpub-fila .wa-txt .cred{align-self:center;color:var(--muted)}
.cpub-fila .wa-txt a{font-weight:600;color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.cpub-fila .wa-txt a:hover{text-decoration:underline}
.cpub-fila.e-publicado{border-left-color:var(--ok)}
.cpub-fila.e-publicado .wa-tipo{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}
.cpub-fila.e-cola .wa-tipo,.cpub-fila.e-preparando .wa-tipo,.cpub-fila.e-publicando .wa-tipo{color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent)}
.cpub-fila .wa-acc{flex-wrap:wrap}
/* resumen de "Programar mes" */
.cprog-res{font-size:15px;margin:0 0 14px}
.cprog-lista{margin:0 0 14px;padding-left:18px;font-size:14px}
.cprog-lista > li{margin-bottom:8px}
.cprog-lista ul{margin:2px 0 0;padding-left:16px;color:var(--muted);font-size:13px}
.cprog-lista a{color:var(--ink)}
@media (max-width:560px){.crev-sep{display:none}}
