/* Layout general */
html, body {
  height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column; /* vertical: header - app - footer */
}

/* El contenedor principal ocupa todo el espacio restante */
.app {
  flex: 1;
  display: flex; /* para sidebar + content */
}

/* El contenido crece para empujar el footer */
.content {
  flex: 1;
  padding: 40px 20px;
  background: #f4f6f9;
  overflow-y: auto;
}

/* Footer siempre abajo */
.app-footer {
  flex-shrink: 0;
  text-align: center;
  padding: 15px;
  background: #fff;
  font-size: 13px;
  border-top: 1px solid #eaeaea;
  color: #666;
}
