/**
 * Ketin 2.0 — Documents · kem2-documents.css · v1.0.0 · 2026-07-20
 * Defaults derivados del patrón .doc-row / .status-pill del design
 * system estático. SIN !important: los controles de Design (con
 * important => all de la base) ganan siempre. Identidades = carga
 * inicial editable.
 */

/* ---------- Variables por identidad ---------- */
.kem2-documents{
  --kem2-doc-ink: #0b0c1a;        /* navy-950 */
  --kem2-doc-soft: #7c7e8c;       /* gray-500 */
  --kem2-doc-accent: #4800fe;     /* ZIHT brand-600 */
  --kem2-doc-line: #e8e9f0;       /* line-soft */
  --kem2-doc-p-bg: #fff3e0;  --kem2-doc-p-c: #8a5a00;   /* pending */
  --kem2-doc-g-bg: #ece5ff;  --kem2-doc-g-c: #4800fe;   /* progress (brand-050/600) */
  --kem2-doc-r-bg: #e6f4ea;  --kem2-doc-r-c: #1e6b34;   /* ready */
}
.kem2-documents.kem-ptf{
  --kem2-doc-accent: #a9781f;
  --kem2-doc-g-bg: #f3ecdc;  --kem2-doc-g-c: #a9781f;
}

/* ---------- Título y pie ---------- */
.kem2-docs-title{ color: var(--kem2-doc-ink); font-size: 19px; margin: 0 0 14px; }
.kem2-docs-footer{ margin-top: 12px; }
.kem2-docs-note{ font-size: 12.5px; color: var(--kem2-doc-soft); margin: 0 0 2px; }
.kem2-docs-count{ font-size: 12px; color: var(--kem2-doc-soft); margin: 0; letter-spacing: .03em; }

/* ---------- Fila ---------- */
.kem2-doc-row{
  display: grid;
  grid-template-columns: 1fr var(--kem2-doc-statusw, 140px) var(--kem2-doc-filew, 130px);
  gap: 16px;
  align-items: center;
  padding: 18px 22px;
  font-size: 14px;
}
.kem2-docs-density-compacta .kem2-doc-row{ padding: 10px 16px; }

/* Fecha en columna propia */
.kem2-docs-date-column .kem2-doc-row{
  grid-template-columns: 1fr var(--kem2-doc-datew, 110px) var(--kem2-doc-statusw, 140px) var(--kem2-doc-filew, 130px);
}
.kem2-doc-datecell{ display: none; }
.kem2-docs-date-column .kem2-doc-datecell{ display: block; }
.kem2-docs-date-column .kem2-doc-date-inline{ display: none; }

/* Sin columna de estado */
.kem2-docs-nostatus .kem2-doc-row{ grid-template-columns: 1fr var(--kem2-doc-filew, 130px); }
.kem2-docs-nostatus.kem2-docs-date-column .kem2-doc-row{
  grid-template-columns: 1fr var(--kem2-doc-datew, 110px) var(--kem2-doc-filew, 130px);
}
.kem2-docs-nostatus .kem2-doc-statuscell{ display: none; }

/* ---------- Estilos de fila ---------- */
/* Separadores: primera fila sin línea */
.kem2-docs-style-sep .kem2-doc-row + .kem2-doc-row,
.kem2-docs-style-sep .et_pb_module.kem2-doc-row + .et_pb_module.kem2-doc-row{
  border-top: var(--kem2-doc-sw, 1px) var(--kem2-doc-sstyle, solid) var(--kem2-doc-sc, var(--kem2-doc-line));
}
/* Tarjetas con fondo */
.kem2-docs-style-cards .kem2-doc-row{
  background: var(--kem2-doc-rowbg, #f6f7fb);
  margin-bottom: var(--kem2-doc-rowgap, 8px);
}
.kem2-docs-style-cards .kem2-doc-row:last-child{ margin-bottom: 0; }
/* Cebra */
.kem2-docs-style-zebra .kem2-doc-row:nth-child(even){
  background: var(--kem2-doc-rowbg, #f6f7fb);
}

/* Fila clicable: el enlace crece a toda la fila */
.kem2-docs-rowclick .kem2-doc-row{ position: relative; }
.kem2-docs-rowclick .kem2-doc-file::after{
  content: '';
  position: absolute;
  inset: 0;
}
.kem2-docs-rowclick .kem2-doc-row:hover{ background: #f6f7fb; }

/* ---------- Celdas ---------- */
.kem2-doc-namecell{ display: flex; flex-direction: column; }
.kem2-doc-name{ font-weight: 600; color: var(--kem2-doc-ink); }
.kem2-doc-sub{ font-weight: 400; color: var(--kem2-doc-soft); font-size: 12px; margin-top: 2px; }
.kem2-doc-date{ color: var(--kem2-doc-soft); font-size: 12px; }
.kem2-doc-date-inline{ margin-top: 2px; }

/* ---------- Estado ---------- */
.kem2-doc-status{
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 4px 9px;
  border-radius: 12px;
  text-align: center;
}
.kem2-doc-status-pending { background: var(--kem2-doc-st-bg, var(--kem2-doc-p-bg)); color: var(--kem2-doc-st-c, var(--kem2-doc-p-c)); }
.kem2-doc-status-progress{ background: var(--kem2-doc-st-bg, var(--kem2-doc-g-bg)); color: var(--kem2-doc-st-c, var(--kem2-doc-g-c)); }
.kem2-doc-status-ready   { background: var(--kem2-doc-st-bg, var(--kem2-doc-r-bg)); color: var(--kem2-doc-st-c, var(--kem2-doc-r-c)); }
.kem2-doc-status-custom  { background: var(--kem2-doc-st-bg, #eceef4); color: var(--kem2-doc-st-c, #40424f); }

/* ---------- Archivo ---------- */
.kem2-doc-filecell{ text-align: right; }
.kem2-doc-file{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: var(--kem2-doc-accent);
  font-weight: 600;
  font-size: 13px;
  transition: opacity .15s ease;
}
.kem2-doc-file:hover{ opacity: .8; }
.kem2-doc-ext{
  display: inline-block;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .05em;
  padding: 3px 6px;
  border: 1px solid currentColor;
  border-radius: 3px;
  line-height: 1;
}
.kem2-docs-noicon .kem2-doc-ext{ display: none; }

/* ---------- Responsive ---------- */
@media (max-width: 700px){
  .kem2-doc-row,
  .kem2-docs-date-column .kem2-doc-row,
  .kem2-docs-nostatus .kem2-doc-row,
  .kem2-docs-nostatus.kem2-docs-date-column .kem2-doc-row{
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .kem2-doc-filecell{ text-align: left; }
  .kem2-docs-date-column .kem2-doc-datecell{ order: 3; }
}
