:root{
  --paper:#F1ECE0; --paper-2:#E8E2D3; --card:#FFFDF8; --ink:#0A0A0A; --ink-soft:#4A453F; --line:#D9D1BF;
  --yellow:#FFE149; --vio:#7F00FF; --ok:#1E8E4F; --warn:#B86A00; --bad:#C2271B; --blue:#1F5FD1;
  --r:14px; --sh:3px 3px 0 var(--ink);
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--paper);color:var(--ink);font:500 15px/1.45 Manrope,system-ui,sans-serif}
button,input,textarea,select{font:inherit;color:inherit}
a{color:inherit}
.mono{font-family:'JetBrains Mono',monospace}

.logo{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--yellow);border:2px solid var(--ink);font-weight:800}
.marca{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px}
.marca small{font-weight:600;color:var(--ink-soft);font-size:13px}

.btn{border:2px solid var(--ink);background:var(--card);border-radius:10px;padding:7px 13px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.btn:hover{background:var(--paper-2)}
.btn.primario{background:var(--yellow);box-shadow:var(--sh)}
.btn.primario:hover{background:#ffd81a}
.btn.fantasma{border-color:transparent;background:transparent}
.btn.peligro{border-color:var(--bad);color:var(--bad)}
.btn.mini{padding:4px 9px;font-size:13px;border-radius:8px}
.btn[disabled]{opacity:.45;cursor:default}

/* login */
.login{min-height:100vh;display:grid;place-items:center;padding:16px}
.login .card{width:min(360px,100%);display:flex;flex-direction:column;gap:14px}
.login label{display:flex;flex-direction:column;gap:6px;font-weight:700}
.login input{border:2px solid var(--ink);border-radius:10px;padding:10px 12px;background:#fff}
.sub{margin:-6px 0 0;color:var(--ink-soft)}
.mal{color:var(--bad);margin:0;font-weight:700}

.card{background:var(--card);border:2px solid var(--ink);border-radius:var(--r);box-shadow:var(--sh);padding:18px}

/* cabecera */
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:18px;padding:12px 20px;background:var(--paper);border-bottom:2px solid var(--ink);flex-wrap:wrap}
#tabs{display:flex;gap:4px;flex:1;flex-wrap:wrap}
#tabs button{border:0;background:none;padding:8px 12px;border-radius:9px;font-weight:700;cursor:pointer;color:var(--ink-soft)}
#tabs button.on{background:var(--ink);color:var(--paper)}
#tabs b{background:var(--vio);color:#fff;border-radius:99px;padding:0 7px;font-size:12px;margin-left:4px}
#tabs b:empty{display:none}
.acciones{display:flex;gap:6px}

.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:16px 20px 0;max-width:1280px;margin:0 auto}
.kpi{background:var(--card);border:2px solid var(--ink);border-radius:12px;padding:12px 14px}
.kpi .n{font-size:26px;font-weight:800;line-height:1.1}
.kpi .l{font-size:12px;color:var(--ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.kpi .d{font-size:12px;font-weight:700}
.kpi .d.up{color:var(--ok)} .kpi .d.down{color:var(--bad)}

main#vista{max-width:1280px;margin:0 auto;padding:16px 20px 60px}
h2{font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin:26px 0 10px;display:flex;align-items:center;gap:8px}
h2 .cuenta{background:var(--paper-2);border-radius:99px;padding:1px 9px;font-size:12px}
.barra{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:var(--yellow);border:2px solid var(--ink);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh)}
.barra input{border:2px solid var(--ink);border-radius:9px;padding:6px 9px;background:#fff}
.barra .nota{font-size:13px;color:var(--ink-soft);flex-basis:100%}

/* tarjetas de la cola */
.dia{margin:18px 0 6px;font-weight:800;font-size:14px;color:var(--ink-soft)}
.lista{display:flex;flex-direction:column;gap:8px}
.item{background:var(--card);border:2px solid var(--ink);border-radius:12px;padding:10px 12px;display:grid;grid-template-columns:66px 1fr auto;gap:10px;align-items:start}
.item.publicado{border-color:var(--line);background:#FAF7EF}
.item.error{border-color:var(--bad)}
.hora{font:600 15px 'JetBrains Mono',monospace;padding-top:2px}
.hora small{display:block;font-size:11px;color:var(--ink-soft)}
.tit{font-weight:800;line-height:1.25}
.meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;align-items:center}
.chip{font-size:11px;font-weight:800;letter-spacing:.04em;border-radius:99px;padding:2px 8px;border:1.5px solid var(--ink);background:var(--paper-2);white-space:nowrap}
.chip.palabra{background:var(--ink);color:var(--yellow);font-family:'JetBrains Mono',monospace}
.chip.e-borrador{background:#fff}
.chip.e-programado{background:#DCE8FF;border-color:var(--blue);color:var(--blue)}
.chip.e-procesando{background:#FFF1D6;border-color:var(--warn);color:var(--warn)}
.chip.e-publicado{background:#DDF3E4;border-color:var(--ok);color:var(--ok)}
.chip.e-error{background:#FBE1DE;border-color:var(--bad);color:var(--bad)}
.chip.e-falta{background:#eee;border-style:dashed;color:var(--ink-soft)}
.f-STORY{background:#FFD0EC}.f-CAMARA{background:#FFE7A8}.f-TECNICAS{background:#E7D6FF}.f-DESMONTADO{background:#D4F1E8}.f-SINIA{background:#FFD9CC}.f-TRUCOS{background:#D8E6FF}
.f-ESTUDIO{background:#FFE0C2}.f-VENDER{background:#DDF2C6}.f-ANATOMIA{background:#F6D3E6}
.err{color:var(--bad);font-size:13px;font-weight:700;margin-top:4px}
.botones{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
details.copy{margin-top:6px}
details.copy summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--ink-soft)}
details.copy textarea{width:100%;min-height:190px;margin-top:6px;border:2px solid var(--ink);border-radius:10px;padding:9px 10px;background:#fff;font:500 14px/1.45 Manrope,sans-serif;resize:vertical}
.fila{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:6px}
.fila input[type=datetime-local]{border:2px solid var(--ink);border-radius:9px;padding:4px 8px;background:#fff}
.cnt{font-size:12px;color:var(--ink-soft)}
.vacio{color:var(--ink-soft);padding:14px;border:2px dashed var(--line);border-radius:12px;text-align:center}

/* métricas */
.tabla{width:100%;border-collapse:separate;border-spacing:0;background:var(--card);border:2px solid var(--ink);border-radius:var(--r);overflow:hidden}
.tabla th,.tabla td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}
.tabla th{background:var(--ink);color:var(--paper);font-size:12px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;user-select:none}
.tabla th:first-child,.tabla td:first-child{text-align:left;white-space:normal}
.tabla tr:last-child td{border-bottom:0}
.tabla td.post{display:flex;gap:10px;align-items:center;min-width:240px}
.tabla img{width:42px;height:56px;object-fit:cover;border-radius:6px;border:1.5px solid var(--ink);flex:none;background:var(--paper-2)}
.tabla .cap{font-size:13px;line-height:1.3;max-width:360px}
.tabla .cap small{color:var(--ink-soft);display:block}
.envoltura{overflow-x:auto}
.barra-m{height:6px;border-radius:9px;background:var(--vio);display:block;margin-top:3px;opacity:.8}
.aviso{background:#FFF1D6;border:2px solid var(--warn);border-radius:12px;padding:10px 12px;margin-bottom:12px;font-weight:600}

/* comentarios */
.filtros{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.filtros button{border:2px solid var(--ink);border-radius:99px;background:var(--card);padding:4px 12px;font-weight:700;cursor:pointer}
.filtros button.on{background:var(--ink);color:var(--paper)}
.com{background:var(--card);border:2px solid var(--ink);border-radius:12px;padding:10px 12px;margin-bottom:8px}
.com .q{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.com .u{font-weight:800}
.com .t{font-size:12px;color:var(--ink-soft)}
.com .txt{margin:4px 0 0;font-size:15px;white-space:pre-wrap;word-break:break-word}
.com .post{font-size:12px;color:var(--ink-soft);margin-top:6px}
.com .resp{margin:6px 0 0 14px;padding-left:10px;border-left:3px solid var(--paper-2);font-size:14px}

.log{background:var(--ink);color:#E8E2D3;border-radius:var(--r);padding:14px;font:500 12.5px/1.6 'JetBrains Mono',monospace;white-space:pre-wrap;overflow-x:auto}

#toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:12px;font-weight:700;opacity:0;transition:.25s;pointer-events:none;max-width:calc(100% - 32px);z-index:20}
#toast.on{opacity:1;transform:translateX(-50%)}

@media (max-width:700px){
  .top{padding:10px 16px;gap:10px}
  .kpis,main#vista{padding-left:16px;padding-right:16px}
  .item{grid-template-columns:1fr}
  .botones{justify-content:flex-start}
  .acciones .fantasma{display:none}
}

.barra.story{background:#FFE3F3;margin-top:12px}
.barra.story input[type=text]{min-width:180px}

/* cuadrícula de fichas: miniatura 4:5 limpia y los datos debajo */
.rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.ficha{border:2px solid var(--ink);border-radius:12px;overflow:hidden;padding:0;cursor:pointer;background:var(--card);text-align:left;display:flex;flex-direction:column;box-shadow:2px 2px 0 var(--ink);transition:transform .12s}
.ficha:hover{transform:translateY(-2px)}
.ficha .img{aspect-ratio:4/5;background:var(--paper-2) center/cover no-repeat;display:grid;place-items:center;border-bottom:2px solid var(--ink)}
.ficha .img .sin{font-size:12px;font-weight:700;color:var(--ink-soft)}
.ficha .sup{display:flex;flex-wrap:wrap;gap:4px;padding:7px 8px 0}
.ficha .inf{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:5px 8px 9px}
.ficha .inf b{flex-basis:100%;font-size:13px;line-height:1.25;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px}
.ficha .inf i{color:var(--bad);font-style:normal;font-size:12px;font-weight:800}
.ficha .chip{font-size:10px;padding:1px 7px}
.ficha .chip.hora{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.ficha.publicado{opacity:.8}
.ficha.error{border-color:var(--bad)}
.ficha.falta .img{filter:grayscale(1);opacity:.6}
h2 .btn{margin-left:auto;text-transform:none;letter-spacing:0}

/* ventana de la ficha completa */
dialog#ventana{border:0;padding:0;background:transparent;max-width:min(760px,calc(100% - 32px));width:100%}
dialog#ventana::backdrop{background:rgba(10,10,10,.55)}
.item.detalle{position:relative;grid-template-columns:220px 1fr;grid-template-areas:"g h" "g c" "g b";box-shadow:var(--sh);padding:14px;gap:12px 16px}
.item.detalle .grande{grid-area:g;aspect-ratio:4/5;border:2px solid var(--ink);border-radius:10px;background:var(--paper-2) center/cover no-repeat}
.item.detalle .hora{grid-area:h}
.item.detalle .cuerpo{grid-area:c}
.item.detalle .botones{grid-area:b;justify-content:flex-start}
.item.detalle .cerrar{position:absolute;top:8px;right:10px;border:0;background:none;font-size:18px;cursor:pointer;font-weight:800}
.item.detalle details.copy textarea{min-height:230px}
@media (max-width:700px){
  .rejilla{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
  .item.detalle{grid-template-columns:1fr;grid-template-areas:"g" "h" "c" "b"}
  .item.detalle .grande{max-width:220px}
}

/* calendario */
.cal-cab{display:flex;align-items:center;gap:10px;margin:6px 0 12px}
.cal-cab h2{margin:0;text-transform:capitalize;font-size:20px;letter-spacing:0}
.cal-cab .cnt{margin-left:auto}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cal-sem{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);padding:0 4px}
.cal-dia{background:var(--card);border:2px solid var(--ink);border-radius:10px;min-height:118px;padding:5px;display:flex;flex-direction:column;gap:4px}
.cal-dia.fuera{background:transparent;border:2px dashed var(--line)}
.cal-dia.pasado{opacity:.7}
.cal-dia.hoy{box-shadow:0 0 0 3px var(--yellow)}
.cal-dia .n{font:600 13px 'JetBrains Mono',monospace}
.cal-it{display:flex;gap:5px;align-items:center;border:1.5px solid var(--ink);border-radius:8px;padding:3px;background:#fff;cursor:pointer;text-align:left;width:100%}
.cal-it .mi{width:28px;aspect-ratio:4/5;border-radius:4px;background:var(--paper-2) center/cover no-repeat;flex:none}
.cal-it .tx{font-size:11px;line-height:1.2;min-width:0}
.cal-it .tx small{display:block;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-it.e-publicado{background:#DDF3E4}
.cal-it.e-error{border-color:var(--bad);background:#FBE1DE}
.cal-it.e-procesando{background:#FFF1D6}
.cal-it.story{background:#FFE3F3}
@media (max-width:900px){
  .cal{grid-template-columns:1fr}
  .cal-sem,.cal-dia.fuera{display:none}
  .cal-dia{min-height:0}
}

/* ---------- móvil (09/10/2026): Emma lo revisa desde el teléfono ----------
   pestañas abajo como en una app, KPIs en una fila que se desliza, la ficha como hoja que sube desde abajo (con el vídeo
   para revisarlo antes de que salga) y el calendario solo con los días que tienen algo */
#tabs svg{display:none}
details.plegable{margin-top:12px}
details.plegable>summary{cursor:pointer;font-weight:800;font-size:14px;list-style:none;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:2px solid var(--ink);border-radius:99px;background:#FFE3F3}
details.plegable>summary::-webkit-details-marker{display:none}
details.plegable>summary::before{content:"+";font-weight:800}
details.plegable[open]>summary::before{content:"–"}
details.plegable[open]>summary{display:none}
details.plegable .barra.story{margin-top:0}
.item.detalle video.grande{display:block;width:100%;aspect-ratio:9/16;background:var(--ink) !important;object-fit:contain}

@media (max-width:700px){
  body{padding-bottom:calc(66px + env(safe-area-inset-bottom))}
  .top{flex-wrap:nowrap;justify-content:space-between;padding:10px 16px calc(10px) 16px}
  .marca{font-size:16px}
  #tabs{position:fixed;left:0;right:0;bottom:0;z-index:15;flex:none;flex-wrap:nowrap;gap:2px;background:var(--paper);border-top:2px solid var(--ink);
        padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  #tabs button{flex:1 1 0;min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:10.5px;border-radius:10px}
  #tabs button span{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #tabs svg{display:block;width:22px;height:22px}
  #tabs b{position:absolute;top:1px;left:calc(50% + 6px);margin:0;font-size:10px;padding:0 5px;line-height:16px}
  .kpis{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;padding:12px 16px 2px;scrollbar-width:none}
  .kpis::-webkit-scrollbar{display:none}
  .kpi{flex:0 0 auto;min-width:134px;scroll-snap-align:start;padding:9px 11px}
  .kpi .n{font-size:21px}
  main#vista{padding-top:10px}
  #toast{bottom:calc(80px + env(safe-area-inset-bottom))}
  input,textarea,select{font-size:16px !important}          /* por debajo de 16 px el iPhone hace zoom al escribir */
  .barra{padding:10px 12px;gap:8px}
  .barra .nota{font-size:12px}
  h2{margin-top:20px}
  .rejilla{gap:8px}
  .ficha .inf b{font-size:12.5px}
  /* la ficha completa: hoja que sube desde abajo */
  dialog#ventana{max-width:100%;width:100%;margin:auto 0 0;max-height:94dvh}
  dialog#ventana .item.detalle{border-radius:18px 18px 0 0;max-height:94dvh;overflow:auto;border-bottom:0;
        grid-template-columns:110px 1fr;grid-template-areas:"g h" "c c" "b b";padding:16px 14px calc(18px + env(safe-area-inset-bottom))}
  dialog#ventana .item.detalle.con-video{grid-template-columns:1fr;grid-template-areas:"g" "h" "c" "b"}
  dialog#ventana .item.detalle .grande{max-width:none}
  dialog#ventana .item.detalle.con-video .grande{width:auto;max-height:56dvh;justify-self:center;border-radius:12px}
  dialog#ventana .item.detalle .hora{align-self:center;font-size:22px}
  dialog#ventana .item.detalle .cerrar{top:6px;right:8px;width:36px;height:36px;border-radius:50%;background:var(--paper-2)}
  dialog#ventana details.copy textarea{min-height:180px}
  dialog#ventana .botones .btn{flex:1 1 auto;justify-content:center;padding:10px 12px;font-size:14px}
  /* métricas: la columna de la publicación se queda fija al deslizar la tabla */
  .tabla td.post{min-width:168px}
  .tabla .cap{max-width:140px;font-size:12px}
  .tabla th:first-child,.tabla td:first-child{position:sticky;left:0;z-index:1;background:var(--card)}
  .tabla th:first-child{background:var(--ink)}
  .cal-dia.vacio{display:none}
  .cal-cab{flex-wrap:wrap}
  .cal-cab h2{white-space:nowrap}
  .cal-cab .cnt{flex-basis:100%;margin-left:0}
}

/* ---------- móvil (22/10/2026): tablas como tarjetas, sin deslizar de lado ---------- */
@media (max-width:700px){
  .envoltura{overflow:visible;border:0;background:none;box-shadow:none}
  .tabla{display:block;border:0;background:none;width:100%}
  .tabla thead{display:none}
  .tabla tbody{display:flex;flex-direction:column;gap:10px}
  .tabla tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;background:var(--card);border:2px solid var(--ink);border-radius:14px;padding:12px}
  .tabla td{display:block;padding:0;border:0;min-width:0;text-align:left}
  .tabla th:first-child,.tabla td:first-child{position:static;background:none}
  .tabla td.post{grid-column:1/-1;min-width:0;display:flex;gap:10px;align-items:flex-start}
  .tabla td.post img{flex:none}
  .tabla .cap{max-width:none;font-size:14px;line-height:1.3}
  .tabla td.mono{font-size:16px;font-weight:600}
  .tabla td[data-l]:not(.post)::before{content:attr(data-l);display:block;font:700 10.5px Manrope,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:2px}
  .tabla .barra-m{display:block;position:static;margin-top:4px}
}
@media (max-width:700px){
  .tabla td.mono{font-size:14.5px;overflow-wrap:anywhere}
  .tabla td{overflow:hidden}
}

/* L invertida (22/10/2026): matriz de reels de prueba, mensajes en columnas y estilos en filas.
   Fondo de cada reel según su puntuación: verde ganador, amarillo medio, rojo claro poco, blanco casi nada. */
.t-verde{--fondo:#7DD89A} .t-amarillo{--fondo:#FFE680} .t-rojo{--fondo:#F8C3BC} .t-blanco{--fondo:#FFFFFF}
.t-midiendo{--fondo:#FFFFFF} .t-programado{--fondo:var(--paper-2)}
.l-filtro{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}
.l-filtro .btn.on{background:var(--ink);color:var(--paper)}
.l-res{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:10px}
.l-res .n{font-size:17px;line-height:1.3}
.l-res .n small{font-size:13px;color:var(--ink-soft)}
.l-res .n a{text-decoration:none;border-bottom:2px solid var(--ok);margin-right:6px}
.l-ley{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;font-weight:700;color:var(--ink-soft);margin:6px 0 14px}
.l-ley i{display:inline-block;width:15px;height:15px;border-radius:4px;border:1.5px solid var(--ink);background:var(--fondo);vertical-align:-3px;margin-right:6px}
.l-ley i.t-midiendo,.l-ley i.t-programado{border-style:dashed}
.l-env{overflow-x:auto;padding:2px 2px 10px}
.l-mat{--c0:150px;--cw:86px;display:grid;grid-template-columns:var(--c0) repeat(var(--nm),var(--cw));gap:6px;width:max-content}
.l-esq{font-size:11px;font-weight:700;color:var(--ink-soft);align-self:end;padding:0 0 6px;position:sticky;left:0;z-index:3;background:var(--paper)}
.l-cm,.l-ce{font-size:12px;line-height:1.25;position:relative}
.l-cm{align-self:end;padding:0 2px 6px;border-bottom:2px solid var(--ink)}
.l-cm b,.l-ce b{display:block;font-weight:800}
.l-cm b{font-family:'JetBrains Mono',monospace}
.l-cm span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-soft);font-weight:600;font-size:11.5px}
.l-ce{position:sticky;left:0;z-index:2;background:var(--paper);padding:4px 8px 4px 0;display:flex;flex-direction:column;justify-content:center;border-right:2px solid var(--ink)}
.l-ce small{color:var(--ink-soft);font-size:11px}
.l-cm em,.l-ce em{font-style:normal;font-size:11px;font-weight:800;align-self:flex-start;display:inline-block;margin-top:3px;padding:0 6px;border-radius:99px;border:1.5px solid var(--ink);background:var(--fondo)}
.l-cm.ancla::before,.l-ce.ancla::before{content:"L";position:absolute;top:-2px;right:2px;font:800 10px/16px Manrope,sans-serif;width:16px;text-align:center;border-radius:4px;background:var(--ink);color:var(--paper)}
.l-ce.ancla::before{top:4px;right:6px}
.l-celda{border:1.5px dashed var(--line);border-radius:12px;min-height:70px}
.l-celda.en-l{background:rgba(10,10,10,.06);border-color:transparent}
.l-celda.con{border:0;display:flex;flex-direction:column;gap:4px}
.l-celda.en-l.con{padding:3px;border-radius:13px}
.l-reel{position:relative;display:block;width:100%;padding:5px;border:2px solid var(--ink);border-radius:11px;background:var(--fondo);color:var(--ink);text-decoration:none;cursor:pointer;text-align:center}
.l-reel:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--ink)}
.l-reel.t-midiendo,.l-reel.t-programado{border-style:dashed}
.l-reel .img{display:block;aspect-ratio:4/5;border-radius:7px;border:1.5px solid var(--ink);background:var(--paper-2) center/cover no-repeat}
.l-reel.t-programado .img{opacity:.55}
.l-reel .m{display:block;margin-top:4px;font-size:11px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.l-reel .copa{position:absolute;top:1px;right:2px;font-size:15px;line-height:1}
.l-var{display:flex;flex-wrap:wrap;gap:3px}
.l-v{font:700 10px/1.5 'JetBrains Mono',monospace;padding:0 4px;border:1.5px solid var(--ink);border-radius:5px;background:var(--fondo);color:var(--ink);text-decoration:none;cursor:pointer}
.l-v.t-midiendo,.l-v.t-programado{border-style:dashed}
@media (max-width:700px){
  .l-mat{--c0:104px;--cw:74px;gap:5px}
  .l-reel{padding:4px}
  .l-reel .m{font-size:10px;line-height:1.2;white-space:normal}
}

/* Ficha flotante de la L invertida (hover sobre un reel) */
#lFicha{position:fixed;z-index:30;width:270px;padding:12px 13px;background:var(--card);border:2px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 var(--ink);font-size:13px;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .12s,transform .12s}
#lFicha.on{opacity:1;transform:none}
#lFicha .lf-cab{display:flex;justify-content:space-between;align-items:center;gap:8px}
#lFicha .lf-cab b{font-size:14px}
#lFicha .lf-niv{font-size:11px;font-weight:800;padding:1px 8px;border:1.5px solid var(--ink);border-radius:99px;background:var(--fondo)}
#lFicha .lf-niv.t-midiendo,#lFicha .lf-niv.t-programado{border-style:dashed}
#lFicha .lf-tit{margin:5px 0 9px;font-weight:700;line-height:1.3}
#lFicha .lf-datos{display:grid;grid-template-columns:1fr 1fr;gap:5px}
#lFicha .lf-datos div{background:var(--paper);border-radius:7px;padding:4px 7px;display:flex;flex-direction:column}
#lFicha .lf-datos span{font-size:10.5px;color:var(--ink-soft);line-height:1.2}
#lFicha .lf-datos b{font:600 14px/1.3 'JetBrains Mono',monospace}
#lFicha .lf-punt{margin-top:8px;padding:6px 8px;border:1.5px solid var(--ink);border-radius:8px;display:flex;flex-direction:column;line-height:1.3}
#lFicha .lf-punt span{font-size:11px;color:var(--ink-soft)}
#lFicha .lf-pie{margin-top:8px;font-size:11px;color:var(--ink-soft);line-height:1.35}
.tabla tr.mejor{background:rgba(255,225,73,.18)}

/* ---------- Selector de cuenta (26/10/2026): un perfil por cuenta, cada uno con su tema ---------- */
.cuentas{display:inline-flex;gap:2px;padding:3px;border:2px solid var(--ink);border-radius:99px;background:var(--card);font-size:13px}
.cuentas button{border:0;background:none;border-radius:99px;padding:3px 11px;font-weight:800;cursor:pointer;color:var(--ink-soft);white-space:nowrap}
.cuentas button:hover{color:var(--ink)}
.cuentas button.on{background:var(--ink);color:var(--yellow)}
#tabs button[hidden]{display:none}
/* Borrar (26/10): reels flojos para borrar a mano desde la app; botón e instrucciones de «Instalar app» */
.btn[hidden]{display:none}
.borrar{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px;margin-top:10px}
.b-item{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:2px solid var(--line);border-radius:14px;padding:10px}
.b-item img,.b-sin{width:72px;aspect-ratio:9/16;object-fit:cover;border-radius:8px;background:var(--paper-2);flex:none}
.b-inf{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.b-inf small{color:var(--ink-soft);font-size:12px}
.b-dat{display:flex;gap:12px;font-size:13px}
.b-dat b{font-family:'JetBrains Mono',monospace}
.b-acc{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.borrar.hechos .b-item{align-items:center;padding:8px 10px;opacity:.75}
dialog.instalar{border:2px solid var(--ink);border-radius:16px;padding:18px 20px;max-width:min(420px,calc(100% - 32px));background:var(--card);color:inherit}
dialog.instalar::backdrop{background:rgba(10,10,10,.55)}
dialog.instalar h3{margin:0 0 10px}
dialog.instalar p{margin:0 0 10px;line-height:1.45}
dialog.instalar form{display:flex;justify-content:flex-end;margin-top:6px}
@media (max-width:700px){
  #btnInstalar span{display:none}
  #btnInstalar{padding:7px 9px}
  .borrar{grid-template-columns:1fr}
  .b-acc .btn{flex:1 1 auto;justify-content:center;padding:10px 12px}
}
@media (max-width:700px){
  .prog{display:none}
  .marca{gap:8px;min-width:0}
  .cuentas button{padding:4px 9px;font-size:12.5px}
}
@media (max-width:380px){
  .logo{display:none}
}

/* ---------- emma.creativo (26/10/2026): negro, grises muy oscuros y azul eléctrico ----------
   Mismo panel que Revolt, solo cambia la piel. En Revolt --ink es a la vez texto, borde y relleno oscuro; aquí el texto
   pasa a --txt y --ink se queda para los bordes, así que se reescriben las piezas que usaban --ink o --paper como relleno. */
:root[data-cuenta=emma_creativo]{
  --paper:#050608; --paper-2:#121620; --card:#0B0D13; --ink:#252B39; --ink-soft:#8A93A8; --line:#191D27;
  --txt:#E8EDF7; --azul:#2F6BFF; --azul-2:#00B4FF; --yellow:#2F6BFF; --vio:#00B4FF;
  --ok:#30C27B; --warn:#F0A73A; --bad:#FF5B61; --blue:#6E9BFF;
  --brillo:0 0 0 1px rgba(47,107,255,.55),0 0 22px -4px rgba(47,107,255,.65);
  --sh:0 12px 30px -16px rgba(0,0,0,.9);
  color-scheme:dark;
}
[data-cuenta=emma_creativo],[data-cuenta=emma_creativo] body{color:var(--txt)}
[data-cuenta=emma_creativo] body{background:radial-gradient(900px 420px at 88% -8%,rgba(47,107,255,.16),transparent 65%),radial-gradient(700px 380px at -10% 110%,rgba(0,180,255,.07),transparent 60%),var(--paper);background-attachment:fixed}
[data-cuenta=emma_creativo] ::selection{background:var(--azul);color:#fff}

/* cabecera y pestañas */
[data-cuenta=emma_creativo] .top{background:rgba(5,6,8,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
[data-cuenta=emma_creativo] .logo{background:linear-gradient(140deg,var(--azul),var(--azul-2));border:0;color:#fff;box-shadow:0 0 18px -2px rgba(47,107,255,.7);font-size:19px;line-height:1;padding-bottom:3px}
[data-cuenta=emma_creativo] .cuentas{border:1px solid var(--ink);background:#090B10}
[data-cuenta=emma_creativo] .cuentas button:hover{color:var(--txt)}
[data-cuenta=emma_creativo] .cuentas button.on{background:var(--azul);color:#fff;box-shadow:0 0 16px -3px rgba(47,107,255,.9)}
[data-cuenta=emma_creativo] #tabs button:hover{color:var(--txt)}
[data-cuenta=emma_creativo] #tabs button.on{background:rgba(47,107,255,.14);color:#fff;box-shadow:inset 0 0 0 1px rgba(47,107,255,.6)}
[data-cuenta=emma_creativo] #tabs b{background:var(--azul-2);color:#00131C}

/* botones */
[data-cuenta=emma_creativo] .btn{border:1px solid var(--ink);background:var(--card);color:var(--txt)}
[data-cuenta=emma_creativo] .btn:hover{background:#151A24;border-color:#39425A}
[data-cuenta=emma_creativo] .btn.primario{background:var(--azul);border-color:var(--azul);color:#fff;box-shadow:var(--brillo)}
[data-cuenta=emma_creativo] .btn.primario:hover{background:#4A7DFF}
[data-cuenta=emma_creativo] .btn.fantasma{border-color:transparent;background:transparent}
[data-cuenta=emma_creativo] .btn.peligro{border-color:rgba(255,91,97,.6);color:var(--bad);background:transparent}
[data-cuenta=emma_creativo] .btn[disabled]{box-shadow:none}

/* KPIs: tarjeta oscura con un filo azul arriba */
[data-cuenta=emma_creativo] .kpi{background:linear-gradient(180deg,#0E1118,#0A0C11);border:1px solid var(--ink);position:relative;overflow:hidden}
[data-cuenta=emma_creativo] .kpi::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--azul),var(--azul-2) 60%,transparent)}
[data-cuenta=emma_creativo] .kpi .n{color:#fff}

/* barras, formularios y avisos */
[data-cuenta=emma_creativo] .barra{background:linear-gradient(120deg,rgba(47,107,255,.17),rgba(0,180,255,.05) 70%),var(--card);border:1px solid rgba(47,107,255,.45);box-shadow:none}
[data-cuenta=emma_creativo] .barra.story{background:var(--card);border-color:var(--ink)}
[data-cuenta=emma_creativo] .barra input,[data-cuenta=emma_creativo] details.copy textarea,[data-cuenta=emma_creativo] .fila input[type=datetime-local]{background:#07080C;border:1px solid var(--ink);color:var(--txt)}
[data-cuenta=emma_creativo] .barra input:focus,[data-cuenta=emma_creativo] details.copy textarea:focus,[data-cuenta=emma_creativo] .fila input:focus{outline:0;border-color:var(--azul);box-shadow:0 0 0 3px rgba(47,107,255,.25)}
[data-cuenta=emma_creativo] details.plegable>summary{background:var(--card);border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .aviso{background:rgba(240,167,58,.09);border:1px solid rgba(240,167,58,.55)}
[data-cuenta=emma_creativo] .vacio{border:1px dashed var(--ink)}

/* chips de estado */
[data-cuenta=emma_creativo] .chip{border:1px solid var(--ink);background:var(--paper-2)}
[data-cuenta=emma_creativo] .chip[class*=" f-"]{background:var(--paper-2)}
[data-cuenta=emma_creativo] .chip.palabra{background:var(--azul);border-color:var(--azul);color:#fff}
[data-cuenta=emma_creativo] .chip.e-borrador{background:transparent}
[data-cuenta=emma_creativo] .chip.e-programado{background:rgba(47,107,255,.16);border-color:rgba(47,107,255,.7);color:#A9C2FF}
[data-cuenta=emma_creativo] .chip.e-procesando{background:rgba(240,167,58,.13);border-color:rgba(240,167,58,.6);color:#F6C77E}
[data-cuenta=emma_creativo] .chip.e-publicado{background:rgba(48,194,123,.13);border-color:rgba(48,194,123,.6);color:#7FE0AE}
[data-cuenta=emma_creativo] .chip.e-error{background:rgba(255,91,97,.13);border-color:rgba(255,91,97,.6);color:#FF9DA0}
[data-cuenta=emma_creativo] .chip.e-falta{background:transparent}

/* fichas de la cola y ventana */
[data-cuenta=emma_creativo] .ficha{border:1px solid var(--ink);box-shadow:none;transition:transform .12s,border-color .12s,box-shadow .12s}
[data-cuenta=emma_creativo] .ficha:hover{border-color:var(--azul);box-shadow:var(--brillo)}
[data-cuenta=emma_creativo] .ficha .img{border-bottom:1px solid var(--ink)}
[data-cuenta=emma_creativo] .ficha .chip.hora{background:var(--azul);border-color:var(--azul);color:#fff}
[data-cuenta=emma_creativo] .ficha.error{border-color:rgba(255,91,97,.7)}
[data-cuenta=emma_creativo] .item{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .item.publicado{background:#0A0C11;border-color:var(--line)}
[data-cuenta=emma_creativo] .item.detalle{box-shadow:0 30px 80px -20px rgba(0,0,0,.9),0 0 0 1px rgba(47,107,255,.25)}
[data-cuenta=emma_creativo] .item.detalle .grande{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .item.detalle video.grande{background:#000 !important}
[data-cuenta=emma_creativo] dialog#ventana::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}

/* tablas, comentarios, registro y aviso flotante */
[data-cuenta=emma_creativo] .tabla{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .tabla th{background:#0F121A;color:var(--ink-soft);border-bottom:1px solid var(--ink)}
[data-cuenta=emma_creativo] .tabla img{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .tabla tr.mejor{background:rgba(47,107,255,.14)}
[data-cuenta=emma_creativo] .barra-m{background:linear-gradient(90deg,var(--azul),var(--azul-2));opacity:1}
[data-cuenta=emma_creativo] .filtros button{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .filtros button.on{background:var(--azul);border-color:var(--azul);color:#fff}
[data-cuenta=emma_creativo] .com{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .com .resp{border-left-color:var(--azul)}
[data-cuenta=emma_creativo] .log{background:#07080C;border:1px solid var(--line);color:#A7B2C8}
[data-cuenta=emma_creativo] #toast{background:#10141C;color:var(--txt);border:1px solid rgba(47,107,255,.6);box-shadow:0 0 24px -6px rgba(47,107,255,.6)}

/* calendario */
[data-cuenta=emma_creativo] .cal-dia{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .cal-dia.fuera{border:1px dashed var(--line)}
[data-cuenta=emma_creativo] .cal-dia.hoy{border-color:var(--azul);box-shadow:var(--brillo)}
[data-cuenta=emma_creativo] .cal-it{background:#11141C;border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .cal-it:hover{border-color:var(--azul)}
[data-cuenta=emma_creativo] .cal-it.e-publicado{background:rgba(48,194,123,.1)}
[data-cuenta=emma_creativo] .cal-it.e-error{background:rgba(255,91,97,.1);border-color:rgba(255,91,97,.6)}
[data-cuenta=emma_creativo] .cal-it.e-procesando{background:rgba(240,167,58,.1)}
[data-cuenta=emma_creativo] .cal-it.story{background:rgba(0,180,255,.08)}

/* L invertida: los mismos cuatro niveles, en tonos oscuros */
[data-cuenta=emma_creativo] .t-verde{--fondo:#11502E} [data-cuenta=emma_creativo] .t-amarillo{--fondo:#4D420E}
[data-cuenta=emma_creativo] .t-rojo{--fondo:#4E1C20} [data-cuenta=emma_creativo] .t-blanco{--fondo:#171B25}
[data-cuenta=emma_creativo] .t-midiendo{--fondo:#11141C} [data-cuenta=emma_creativo] .t-programado{--fondo:#0B0D13}
[data-cuenta=emma_creativo] .l-filtro .btn.on{background:var(--azul);border-color:var(--azul);color:#fff}
[data-cuenta=emma_creativo] .l-cm{border-bottom:1px solid var(--ink)}
[data-cuenta=emma_creativo] .l-ce{border-right:1px solid var(--ink)}
[data-cuenta=emma_creativo] .l-cm em,[data-cuenta=emma_creativo] .l-ce em,[data-cuenta=emma_creativo] .l-ley i{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .l-cm.ancla::before,[data-cuenta=emma_creativo] .l-ce.ancla::before{background:var(--azul);color:#fff}
[data-cuenta=emma_creativo] .l-celda{border:1px dashed var(--ink)}
[data-cuenta=emma_creativo] .l-celda.en-l{background:rgba(47,107,255,.07);border-color:transparent}
[data-cuenta=emma_creativo] .l-reel,[data-cuenta=emma_creativo] .l-v{border:1px solid var(--ink);color:var(--txt)}
[data-cuenta=emma_creativo] .l-reel:hover{box-shadow:var(--brillo);border-color:var(--azul)}
[data-cuenta=emma_creativo] .l-reel .img{border:1px solid var(--ink)}
[data-cuenta=emma_creativo] .l-res .n a{border-bottom-color:var(--azul-2)}
[data-cuenta=emma_creativo] #lFicha{border:1px solid var(--ink);box-shadow:0 18px 40px -12px rgba(0,0,0,.9),0 0 0 1px rgba(47,107,255,.25)}
[data-cuenta=emma_creativo] #lFicha .lf-niv,[data-cuenta=emma_creativo] #lFicha .lf-punt{border:1px solid var(--ink)}

@media (max-width:700px){
  /* sin desenfoque en la cabecera: backdrop-filter haría que la barra de pestañas (fija, dentro de .top) se pegue a la cabecera */
  [data-cuenta=emma_creativo] .top{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--paper)}
  [data-cuenta=emma_creativo] #tabs{background:rgba(5,6,8,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  [data-cuenta=emma_creativo] .tabla tr{border:1px solid var(--ink)}
  [data-cuenta=emma_creativo] dialog#ventana .item.detalle .cerrar{background:var(--paper-2)}
}

/* 26/10 · reels de prueba que pasan del tope de vistas (emma.creativo: 2.000) y hay que compartir con los seguidores */
.aviso.graduar{background:#E3F6EA;border-color:#1f8a4c}
b.graduar{color:#1f8a4c}
[data-cuenta=emma_creativo] .aviso.graduar{background:rgba(48,194,123,.1);border:1px solid rgba(48,194,123,.6)}
[data-cuenta=emma_creativo] b.graduar{color:var(--ok)}

/* ---------- Magí (28/10/2026): programador-magi.revolt.video, blanco roto y los verdes de sus animaciones ----------
   La misma piel clara de Revolt; el amarillo pasa a verde (#27966a) y los botones principales llevan el texto en blanco. */
:root[data-cuenta=magi]{
  --paper:#F3F3F0; --paper-2:#E4E9E4; --card:#FFFFFF; --ink:#0D0D0D; --ink-soft:#4B524D; --line:#D2D9D3;
  --yellow:#2FAE78; --vio:#23533E; --ok:#27966A;
}
[data-cuenta=magi] .logo{background:#27966A;color:#F3F3F0}
[data-cuenta=magi] .btn.primario{background:#27966A;color:#fff}
[data-cuenta=magi] .btn.primario:hover{background:#23533E}
[data-cuenta=magi] .chip.palabra{background:#27966A;color:#fff}
.cuentas[hidden]{display:none}
