
body {
  background-color: #f0f2f5;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  margin: 0;
  padding: 40px;
  color: #333;
}

.container {
  background: #fff;
  border-radius: 12px;
  padding: 30px;
  max-width: 1050px;
  margin: auto;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

h2, h3 {
  color: #222;
  margin-top: 0;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 25px;
}

th, td {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: left;
}

input, select, button {
  padding: 8px;
  margin: 6px 4px 10px 0;
  font-size: 14px;
}

input[type="text"], input[type="number"], select {
  border: 1px solid #ccc;
  border-radius: 4px;
}

input[type="text"]:focus, input[type="number"]:focus, select:focus {
  outline: none;
  border-color: #007BFF;
}

.btn-link {
  background-color: #007BFF;
  color: white;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
  padding: 10px 16px;
}

.btn-link:hover {
  background-color: #0056b3;
}

.supprimer-btn {
  background-color: #dc3545;
  color: white;
  border: none;
  border-radius: 4px;
  padding: 6px 10px;
  cursor: pointer;
}

.notification {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background-color: #007BFF;
  color: white;
  padding: 12px 18px;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  opacity: 0;
  animation: fadeIn 0.3s forwards;
  z-index: 999;
}

@keyframes fadeIn { to { opacity: 1; } }
@keyframes fadeOut { to { opacity: 0; } }
#admin-auth-overlay.auth-overlay{
  position:fixed; inset:0; background:rgba(17,24,39,0.6);
  display:flex; align-items:center; justify-content:center; z-index:9999;
}
#admin-auth-overlay.hidden{ display:none; }
/* Si hubiera guard externo, nosotros NO mostramos el local */
