/* ============================================================
   SINABETH · estilos propios (complementan la plantilla de la Sección)
   ============================================================ */
:root{
  --sb-verde:#1b6b5f; --sb-verde-claro:#e8f3f1; --sb-borde:#dfe6ec;
  --sb-texto:#31404a; --sb-suave:#6b7b86; --sb-rojo:#c0392b;
  --sb-ambar:#b7791f; --sb-ambar-bg:#fdf6e3; --sb-azul:#2c5f8a;
}
/* overflow visible: si se recorta, las listas desplegables del tema
   (nice-select) quedan cortadas dentro de la tarjeta */
.sb-tarjeta{background:#fff;border:1px solid var(--sb-borde);border-radius:10px;
  box-shadow:0 2px 14px rgba(0,0,0,.05);overflow:visible;margin-bottom:26px}
.sb-tarjeta__cab{background:var(--sb-verde);color:#fff;padding:20px 26px;
  border-radius:9px 9px 0 0}
.sb-tarjeta__cab h3{color:#fff;margin:0 0 4px;font-size:21px}
.sb-tarjeta__cab p{margin:0;font-size:13px;opacity:.85}
.sb-tarjeta__cuerpo{padding:26px}

/* Pestañas */
.sb-pestanas{display:flex;border-bottom:1px solid var(--sb-borde);background:#f7fafb}
.sb-pestana{flex:1;padding:14px 10px;border:0;background:none;font-weight:600;
  font-size:14px;color:var(--sb-suave);cursor:pointer;border-bottom:3px solid transparent}
.sb-pestana.activa{color:var(--sb-verde);border-bottom-color:var(--sb-verde);background:#fff}
.sb-panel{display:none;padding:26px}
.sb-panel.activo{display:block}

/* Campos */
.sb-campo{margin-bottom:18px}
.sb-campo label{display:block;font-weight:600;font-size:13.5px;margin-bottom:6px;color:var(--sb-texto)}
.sb-campo input,.sb-campo select,.sb-campo textarea{width:100%;padding:11px 13px;
  border:1px solid var(--sb-borde);border-radius:6px;font-size:15px;color:var(--sb-texto);background:#fff}
.sb-campo input:focus,.sb-campo select:focus{outline:0;border-color:var(--sb-verde);
  box-shadow:0 0 0 3px rgba(27,107,95,.12)}
.sb-campo input[readonly]{background:#f2f5f7;color:var(--sb-suave)}
.sb-campo small{display:block;margin-top:5px;font-size:12px;color:var(--sb-suave)}
.sb-campo .sb-error{color:var(--sb-rojo);font-size:12.5px;margin-top:5px;display:block}
.sb-rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0 18px}
.sb-requerido{color:var(--sb-rojo)}

.sb-clave{position:relative}
.sb-clave input{padding-right:60px}
.sb-ojo{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;
  background:none;color:var(--sb-verde);font-size:12.5px;font-weight:600;cursor:pointer}

/* Bloques */
.sb-bloque{border:1px solid var(--sb-borde);border-radius:8px;padding:20px;margin-bottom:22px}
.sb-bloque__titulo{font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;
  color:var(--sb-verde);margin-bottom:16px;padding-bottom:9px;border-bottom:1px solid var(--sb-borde)}

/* Botones */
.sb-boton{display:inline-block;padding:12px 26px;border:0;border-radius:6px;
  font-weight:600;font-size:14.5px;cursor:pointer;text-decoration:none;text-align:center}
.sb-boton--primario{background:var(--sb-verde);color:#fff}
.sb-boton--primario:hover{background:#155248;color:#fff}
.sb-boton--secundario{background:#fff;color:var(--sb-verde);border:1px solid var(--sb-verde)}
.sb-boton--peligro{background:var(--sb-rojo);color:#fff}
.sb-boton[disabled]{opacity:.5;cursor:not-allowed}
.sb-liga{margin-top:14px;font-size:13.5px}

/* Alertas */
.sb-alerta{padding:14px 18px;border-radius:7px;margin-bottom:20px;font-size:14px;border-left:4px solid}
.sb-alerta--error{background:#fdecea;border-color:var(--sb-rojo);color:#8c2318}
.sb-alerta--info{background:var(--sb-verde-claro);border-color:var(--sb-verde);color:#14544a}
.sb-alerta--aviso{background:var(--sb-ambar-bg);border-color:var(--sb-ambar);color:#7d5310}
.sb-nota{font-size:13.5px;color:var(--sb-suave);margin-bottom:18px}

/* Pasos */
.sb-pasos{display:flex;gap:6px;margin-bottom:26px;flex-wrap:wrap}
.sb-paso{flex:1;min-width:120px;padding:12px 8px;text-align:center;font-size:12.5px;
  border-radius:6px;background:#f2f5f7;color:var(--sb-suave);font-weight:600}
.sb-paso.activo{background:var(--sb-verde);color:#fff}
.sb-paso.hecho{background:var(--sb-verde-claro);color:var(--sb-verde)}

/* Estatus */
.sb-estatus{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12.5px;font-weight:700}
.sb-estatus--BORRADOR{background:#eceff1;color:#546e7a}
.sb-estatus--DOCUMENTOS{background:#e3f2fd;color:#1565c0}
.sb-estatus--EN_REVISION{background:var(--sb-ambar-bg);color:var(--sb-ambar)}
.sb-estatus--APROBADA{background:#e6f4ea;color:#1b7332}
.sb-estatus--RECHAZADA{background:#fdecea;color:var(--sb-rojo)}

/* Documentos */
.sb-doc{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--sb-borde);
  border-radius:7px;margin-bottom:10px;background:#fff}
.sb-doc.cargado{border-color:var(--sb-verde);background:#f6fbfa}
.sb-doc__num{width:30px;height:30px;border-radius:50%;background:#f2f5f7;color:var(--sb-suave);
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:0 0 30px}
.sb-doc.cargado .sb-doc__num{background:var(--sb-verde);color:#fff}
.sb-doc__texto{flex:1;font-size:13.5px}
.sb-doc__texto small{display:block;color:var(--sb-suave);font-size:12px;margin-top:2px}
.sb-barra{height:7px;background:#eceff1;border-radius:4px;overflow:hidden;margin:16px 0 22px}
.sb-barra span{display:block;height:100%;background:var(--sb-verde);width:0;transition:width .3s}

/* Tablas (panel administrativo) */
.sb-tabla{width:100%;border-collapse:collapse;font-size:13.5px;background:#fff}
.sb-tabla th{background:var(--sb-verde);color:#fff;padding:11px 12px;text-align:left;font-size:12.5px}
.sb-tabla td{padding:10px 12px;border-bottom:1px solid var(--sb-borde)}
.sb-tabla tr:hover td{background:#f7fafb}
.sb-tabla--compacta td{padding:7px 10px}

/* Tarjetas de cifras */
.sb-cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:14px;margin-bottom:26px}
.sb-cifra{background:#fff;border:1px solid var(--sb-borde);border-left:4px solid var(--sb-verde);
  border-radius:7px;padding:16px 18px}
.sb-cifra__valor{font-size:26px;font-weight:700;color:var(--sb-verde);line-height:1.1}
.sb-cifra__etiqueta{font-size:12px;color:var(--sb-suave);text-transform:uppercase;letter-spacing:.5px;margin-top:5px}
.sb-cifra--ambar{border-left-color:var(--sb-ambar)}
.sb-cifra--ambar .sb-cifra__valor{color:var(--sb-ambar)}
.sb-cifra--rojo{border-left-color:var(--sb-rojo)}
.sb-cifra--rojo .sb-cifra__valor{color:var(--sb-rojo)}

.sb-ayuda{background:#f7fafb;border:1px solid var(--sb-borde);border-radius:8px;padding:20px 24px}
.sb-ayuda h4{font-size:15px;margin-bottom:12px;color:var(--sb-verde)}
.sb-ayuda ol{margin:0;padding-left:20px;font-size:13.5px;line-height:1.9;color:var(--sb-texto)}

@media(max-width:576px){
  .sb-panel,.sb-tarjeta__cuerpo{padding:18px}
  .sb-rejilla{grid-template-columns:1fr}
}

/* ============================================================
   Compatibilidad con el tema de la Sección
   El tema convierte los <select> en listas personalizadas
   (nice-select). Estas reglas evitan que queden por debajo
   de otros bloques o recortadas.
   ============================================================ */
.sb-campo .nice-select{width:100%;float:none;height:auto;line-height:1.4;
  padding:11px 34px 11px 13px;border:1px solid var(--sb-borde);border-radius:6px;
  font-size:15px;color:var(--sb-texto);background:#fff}
.sb-campo .nice-select .list{width:100%;z-index:50;max-height:260px;overflow-y:auto}
.sb-campo .nice-select .option{line-height:2.4;min-height:auto;font-size:14.5px}
.sb-tarjeta__cuerpo,.sb-panel,.sb-bloque{overflow:visible}
.sb-pestanas{border-radius:0}

/* ============================================================
   Carga de documentos por arrastre
   ============================================================ */
.sb-suelta{position:relative;transition:border-color .15s, background .15s;cursor:default}
.sb-suelta.encima{border-color:var(--sb-verde);background:var(--sb-verde-claro);
  border-style:dashed;border-width:2px}
.sb-suelta.encima .sb-doc__estado::after{content:" — suelte aquí";color:var(--sb-verde);font-weight:700}
.sb-suelta.subiendo{border-color:var(--sb-azul);background:#f4f8fb}
.sb-suelta.error{border-color:var(--sb-rojo);background:#fdf1ef}
.sb-suelta.error .sb-doc__num{background:var(--sb-rojo);color:#fff}
.sb-suelta.error .sb-doc__estado{color:var(--sb-rojo);font-weight:600}

.sb-progreso{height:4px;background:#e6ecf0;border-radius:3px;overflow:hidden;
  margin-top:7px;display:none}
.sb-suelta.subiendo .sb-progreso{display:block}
.sb-progreso span{display:block;height:100%;width:0;background:var(--sb-azul);
  transition:width .15s}

.sb-suelta label{cursor:pointer}
#pista-arrastre{background:#f7fafb;border:1px dashed var(--sb-borde);
  border-radius:7px;padding:12px 16px;margin-bottom:16px}

@media(max-width:576px){
  /* En celular no hay arrastre: el botón es el camino */
  #pista-arrastre{display:none}
}
