
/* ---------- Administración (alta/baja/modificación) ---------- */
.admin-envoltura{max-width:980px;margin:0 auto;padding:40px 20px 70px}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}
.admin-header h1{font-family:"Archivo";font-size:1.4rem;font-weight:800;margin:0}
.quien{font-size:.85rem;color:var(--tinta-suave)}
.quien b{color:var(--tinta)}
.salir{background:none;border:1px solid var(--linea);border-radius:7px;color:var(--tinta);padding:7px 14px;font-size:.85rem;cursor:pointer}

.tarjeta-login{max-width:360px;margin:80px auto;background:var(--tarjeta);border:1px solid var(--linea);border-radius:10px;padding:28px}
.tarjeta-login h1{font-family:"Archivo";font-size:1.2rem;font-weight:800;margin:0 0 18px}
.campo{margin-bottom:14px}
.campo label{display:block;font-size:.85rem;color:var(--tinta-suave);margin-bottom:5px}
.campo input{width:100%;padding:10px 11px;border:1px solid var(--linea);border-radius:7px;background:var(--papel);color:var(--tinta);font:inherit}
.entrar{width:100%;margin-top:6px;padding:11px;border:0;border-radius:7px;background:var(--tinta);color:var(--papel);font-weight:700;cursor:pointer}
.error-login{color:var(--rojo);font-size:.85rem;margin:10px 0 0;min-height:1.2em}

.form-articulo{background:var(--tarjeta);border:1px solid var(--linea);border-radius:10px;padding:20px;margin-bottom:26px}
.form-articulo h2{font-family:"Archivo";font-size:1rem;font-weight:800;margin:0 0 4px}
.nota-clave{font-size:.8rem;color:var(--tinta-suave);margin:0 0 14px}
.rejilla-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.rejilla-form .ancho{grid-column:1/-1}
.rejilla-form label{display:block;font-size:.82rem;color:var(--tinta-suave);margin-bottom:5px}
.rejilla-form input,.rejilla-form textarea{width:100%;padding:9px 10px;border:1px solid var(--linea);border-radius:7px;background:var(--papel);color:var(--tinta);font:inherit;font-size:.92rem}
.rejilla-form textarea{resize:vertical;min-height:56px}
.previa-imagen{display:flex;align-items:center;gap:12px;margin-top:10px}
.previa-imagen img{width:64px;height:64px;object-fit:cover;border-radius:7px;border:1px solid var(--linea);cursor:zoom-in}
.miniatura{width:36px;height:36px;object-fit:cover;border-radius:6px;display:block;cursor:zoom-in}
.miniatura-vacia{width:36px;height:36px;border-radius:6px;background:var(--linea)}
.acciones-form{display:flex;gap:10px;margin-top:16px}
.guardar{padding:10px 18px;border:0;border-radius:7px;background:var(--teal);color:#fff;font-weight:700;cursor:pointer;font-size:.9rem}
.cancelar-edicion{padding:10px 18px;border:1px solid var(--linea);border-radius:7px;background:transparent;color:var(--tinta);cursor:pointer;font-size:.9rem}
.mensaje-form{font-size:.85rem;margin-top:10px;min-height:1.2em}
.mensaje-form.error{color:var(--rojo)}
.mensaje-form.ok{color:var(--teal)}

.controles-tabla{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.controles-tabla .chips{margin-right:auto}
.buscador-admin input{
  padding:8px 12px;border:1px solid var(--linea);border-radius:8px;
  background:var(--tarjeta);color:var(--tinta);font:inherit;font-size:.9rem;min-width:220px;
}

.tabla-articulos{width:100%;border-collapse:collapse;background:var(--tarjeta);border:1px solid var(--linea);border-radius:10px;overflow:hidden}
.tabla-articulos th,.tabla-articulos td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--linea);font-size:.88rem}
.tabla-articulos th{color:var(--tinta-suave);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}
.tabla-articulos tr:last-child td{border-bottom:0}
.tabla-articulos td.num{font-variant-numeric:tabular-nums}
.acciones-fila{display:flex;gap:8px}
.acciones-fila button{border:1px solid var(--linea);background:transparent;color:var(--tinta);border-radius:6px;padding:5px 10px;font-size:.8rem;cursor:pointer}
.acciones-fila .eliminar{color:var(--rojo);border-color:transparent}

/* Ficha de detalle en el formulario y en la tabla */
.sub-form{font-family:"Archivo";font-size:.92rem;font-weight:800;margin:8px 0 0;padding-top:14px;border-top:1px solid var(--linea)}
.sub-form small{font-family:inherit;font-weight:400;color:var(--tinta-suave);font-size:.78rem}
.checks{display:flex;flex-wrap:wrap;gap:8px 20px}
.rejilla-form .checks label{display:flex;align-items:center;gap:7px;color:var(--tinta);margin:0}
.rejilla-form .checks input{width:auto}
.ficha-resumen{font-size:.8rem;color:var(--tinta-suave);white-space:nowrap}

/* Usuarios */
.estado-activo{color:var(--teal);font-weight:600;font-size:.85rem}
.estado-inactivo{color:var(--rojo);font-weight:600;font-size:.85rem}
