/* Estilos propios de «reportes» en la maqueta. */
.rep-titulo { font-size: 15px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.rep-tipos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rep-tipo { text-align: left; display: grid; gap: 4px; align-content: start; padding: 10px 12px; border-radius: var(--radio); }
.rep-tipo b { font-size: 15px; }
.rep-tipo span { color: var(--suave); font-size: 13px; }
.rep-tipo[aria-selected="true"] { border-color: var(--marca); background: var(--marca-suave); box-shadow: inset 0 0 0 1px var(--marca); }
.rep-tipo[aria-selected="true"] b { color: var(--marca); }
.rep-periodos { display: flex; gap: 6px; flex-wrap: wrap; }
.rep-periodo[aria-pressed="true"] { background: var(--marca); border-color: var(--marca); color: #fff; font-weight: 600; }
.rep-proyecto { display: flex; gap: 6px; align-items: center; color: var(--suave); }
.rep-elegir .barra-de-acciones { flex-wrap: wrap; }
.rep-texto { width: 100%; min-height: 300px; resize: vertical; line-height: 1.5; font-family: ui-monospace, Consolas, "Courier New", monospace; font-size: 13.5px; white-space: pre-wrap; }
.rep-medio { align-items: start; }
.rep-reporte { min-width: 0; }
.rep-lado { display: grid; gap: 16px; min-width: 0; }
.rep-canales { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.rep-canal.apagado { color: var(--suave); border: 1px dashed var(--borde); border-radius: 8px; padding: 6px 8px; font-size: 13.5px; }
.rep-canal small { display: block; margin-left: 22px; font-size: 12px; }
.rep-enlace { border: 0; background: none; padding: 0; color: var(--marca); text-decoration: underline; text-align: left; }
.rep-programado { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; border-top: 1px dashed var(--borde); padding-top: 10px; }
.rep-casilla { display: flex; gap: 6px; align-items: center; font-weight: 600; }
.rep-auto { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; font-size: 14px; }
.rep-auto li { padding: 4px 8px; border-radius: 6px; }
.rep-auto li.actual { background: var(--marca-suave); }
.rep-palabras { border: 1px solid var(--borde); border-radius: 8px; padding: 8px 10px; }
.rep-palabras summary { cursor: pointer; font-weight: 600; }
.rep-palabras-rejilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin: 10px 0; }
.rep-palabras-rejilla label { display: grid; gap: 2px; font-size: 12.5px; color: var(--suave); }
.rep-ventana { width: min(640px, 100%); }
.rep-previa { margin: 0; white-space: pre-wrap; word-break: break-word; background: var(--fondo); border: 1px solid var(--borde); border-radius: 8px; padding: 10px 12px; max-height: 42vh; overflow: auto; font: 13px/1.5 ui-monospace, Consolas, "Courier New", monospace; }
.rep-acciones .botones { flex-wrap: nowrap; }

@media (max-width: 860px) {
  .rep-tipos { grid-template-columns: minmax(0, 1fr); }
  .rep-canales { grid-template-columns: minmax(0, 1fr); }
  .rep-texto { min-height: 260px; }
  .rep-acciones .botones { flex-wrap: wrap; }
}
