/* Herramienta de configuración (también se empaqueta en la copia de doble clic) */
.herramienta { display: grid; gap: 28px; }
.pestanas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.pestanas button {
  min-height: 52px; padding: 0 20px; cursor: pointer; background: none; color: var(--texto);
  border-style: solid; border-width: 10px 16px;
  border-image: url("/assets/img/tex/k_tab_off.png") 18 28 fill / 10px 16px stretch;
  font: 700 19px/1.1 var(--display);
}
.pestanas button[aria-selected="true"] { border-image-source: url("/assets/img/tex/k_tab_on.png"); color: #fff; }
.pestanas button:hover { color: var(--oro); }
.panel-h { display: grid; gap: 18px; }
.pasos-h { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; counter-reset: paso; }
.paso { display: grid; gap: 12px; padding: 18px 24px; counter-increment: paso; }
.paso h2 { display: flex; align-items: baseline; gap: 14px; font-size: 25px; color: var(--oro); }
.paso h2::before {
  content: counter(paso); flex: none; display: inline-grid; place-items: center; width: 36px; height: 36px;
  background: url("/assets/img/tex/k_iconframe.png") center / contain no-repeat; color: var(--oro-palido); font-size: 19px;
}
.paso.apagado { pointer-events: none; }
.paso.apagado h2::before, .paso.apagado button, .paso.apagado select, .paso.apagado input { opacity: .4; }
.ayuda { color: var(--texto-2); max-width: 75ch; }
.nota { padding: 12px 18px; max-width: 80ch; color: var(--texto);
  border-style: solid; border-width: 10px 22px; border-image: url("/assets/img/tex/k_paper.png") 14 34 fill / 10px 22px stretch; color: var(--tinta-pergamino); }
.nota b { color: #1d1206; }
.fila { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.fila label { display: inline-flex; align-items: center; gap: 8px; font-family: var(--display); font-weight: 700; color: var(--texto); }
select {
  min-height: 44px; min-width: 200px; padding: 0 12px; font: 400 17px var(--texto-fam); color: var(--texto); background: #07080d;
  border-style: solid; border-width: 6px 10px; border-image: url("/assets/img/tex/k_tile2.png") 18 28 fill / 6px 10px stretch;
}
.estado { color: var(--texto-2); font-size: 16px; }
.estado .ok, .ok { color: #8fe07a; }
.aviso, .estado .aviso { color: #ffb44a; }
.mal, .estado .mal { color: #ff7a6a; }
.archivo { position: relative; overflow: hidden; }
.archivo input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.enlace-boton { background: none; border: 0; padding: 4px 2px; color: var(--oro-palido); font: 700 17px var(--display); text-decoration: underline; text-underline-offset: .18em; cursor: pointer; }
.lista { max-height: 380px; overflow: auto; background: #07080d; padding: 6px 4px; }
.lista:empty { display: none; }
.casilla { display: flex; gap: 12px; align-items: flex-start; padding: 8px 10px; cursor: pointer; }
.casilla input { margin-top: 5px; width: 18px; height: 18px; accent-color: var(--oro); flex: none; }
.casilla:hover { background: #10121a; }
.casilla .etq { margin-left: auto; font-size: 14px; white-space: nowrap; }
.modos { border: 0; margin: 0; padding: 0; display: grid; gap: 4px; }
.recuento { display: flex; flex-wrap: wrap; gap: 8px 22px; font: 700 18px/1.3 var(--display); }
.filas-t { width: 100%; border-collapse: collapse; font-size: 16px; }
.filas-t td { padding: 6px 10px; vertical-align: top; }
.filas-t tr:nth-child(even) td { background: #0b0d14; }
.filas-t td:first-child { font-weight: 700; white-space: nowrap; color: var(--oro-palido); }
.registro { font: 400 15px/1.55 var(--texto-fam); background: #07080d; padding: 12px 14px; max-height: 280px; overflow: auto; white-space: pre-wrap; }
.descarga-local { color: var(--texto-2); }
@media (max-width: 600px) {
  .paso { padding: 14px 12px; }
  select { min-width: 0; width: 100%; }
  .fila label { width: 100%; }
}
.nota code { background: #e9d6a8; color: #2b1d0e; }

.vacio { display: none; }
.paso.apagado .vacio { display: block; }
