body {
  margin: 0;
  padding: 0;
  background: #f2f2f2;
  font-family: 'Segoe UI', sans-serif;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
}

.contador-container {
  background: white;
  border-radius: 20px;
  padding: 30px;
  max-width: 1000px; /* Aumentado para más columnas */
  width: 95%;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
  text-align: center;
  overflow-x: auto; /* Scroll horizontal en pantallas pequeñas */
}

.logo {
  width: 250px;
  margin-bottom: 20px;
}

h1 {
  color: #1e88e5;
  margin-bottom: 10px;
}

.visitas-numero {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 20px;
  color: #333;
}

footer {
  margin-top: 30px;
  font-size: 13px;
  color: #777;
}

.tabla-visitas {
  max-height: 300px;
  overflow-y: auto;
  margin-top: 20px;
  border: 1px solid #ddd;
  border-radius: 10px;
}

table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  min-width: 800px; /* Asegura espacio suficiente para columnas */
}

thead {
  background: #1e88e5;
  color: white;
  position: sticky;
  top: 0;
  z-index: 1;
}

td, th {
  padding: 10px;
  border-bottom: 1px solid #ccc;
  text-align: left;
}

tr:nth-child(even) {
  background-color: #f9f9f9;
}

/* Responsive design para pantallas pequeñas */
@media screen and (max-width: 768px) {
  .contador-container {
    padding: 20px;
  }

  table {
    font-size: 12px;
    min-width: unset;
  }

  .logo {
    width: 180px;
  }
}
