/* ============================
   Fuente Global
   ============================ */
body, html {
  height: 100%;
  margin: 0;
  font-family: "Faculty Glyphic", sans-serif !important;
  font-weight: 400;
  font-style: normal;
  color: #fff;
  background: linear-gradient(-45deg, #1a2a6c, #b21f1f, #fdbb2d, #0f9b0f);
  background-size: 400% 400%;
  animation: gradientBG 15s ease infinite;
}

/* ============================
   Fondo degradado animado
   ============================ */
@keyframes gradientBG {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* ============================
   Navbar
   ============================ */
.navbar {
  background: rgba(0, 0, 0, 0.85) !important;
  backdrop-filter: blur(6px);
}

.navbar-brand {
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 1px;
}

/* ============================
   Tablas
   ============================ */
.table {
  background-color: rgba(255, 255, 255, 0.9);
  color: #000;
  border-radius: 10px;
  overflow: hidden;
}

.table thead {
  background-color: #222;
  color: #fff;
}

.table-hover tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

/* ============================
   Botones personalizados
   ============================ */
.btn-primary {
  background: linear-gradient(135deg, #1a2a6c, #b21f1f);
  border: none;
  transition: all 0.3s ease;
}

.btn-primary:hover {
  background: linear-gradient(135deg, #0f9b0f, #fdbb2d);
  transform: scale(1.05);
}

.btn-success {
  background: linear-gradient(135deg, #0f9b0f, #56ab2f);
  border: none;
}

.btn-success:hover {
  background: linear-gradient(135deg, #11998e, #38ef7d);
}

.btn-danger {
  background: linear-gradient(135deg, #b21f1f, #ff4e50);
  border: none;
}

.btn-danger:hover {
  background: linear-gradient(135deg, #f12711, #f5af19);
}

/* ============================
   Formularios y modales
   ============================ */
.form-control, .form-select, textarea {
  border-radius: 10px;
  border: 1px solid #ccc;
}

.modal-content {
  background-color: #f8f9fa;
  color: #000;
  border-radius: 15px;
}

/* ============================
   Estilos generales
   ============================ */
h2 {
  font-weight: bold;
  margin-bottom: 20px;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.4);
}

.container {
  background: rgba(0, 0, 0, 0.35);
  padding: 20px;
  border-radius: 15px;
}

.footer-card {
  background: linear-gradient(135deg, #141414 0%, #222 100%);
  box-shadow: 0 8px 30px rgba(0,0,0,0.6);
  border: 1px solid rgba(255,255,255,0.04);
  padding: 1rem 1.25rem;
}
.footer-card .footer-logo i {
  transition: transform .45s ease, filter .45s ease;
  color: #fff;
}
.footer-card .footer-logo:hover i {
  transform: translateY(-6px) rotate(-6deg) scale(1.08);
  filter: drop-shadow(0 8px 18px rgba(0,255,200,0.06));
}
.footer-text { font-weight:600; letter-spacing:0.6px; }
@keyframes floatY {
  0% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
  100% { transform: translateY(0); }
}
.footer-card .animate__pulse { animation-duration: 2.3s; }
.footer-card .footer-logo { display:inline-block; margin:0 .5rem; animation: floatY 3.2s ease-in-out infinite; }
