.msfe-site-footer {
  padding: 0.55rem 1rem 0.65rem;
  background: linear-gradient(135deg, #1e3a5f 0%, #0f172a 100%);
  color: #cbd5e1;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Keep footer at the bottom on short pages (home, admin hub, etc.). */
body.msfe-has-site-footer {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

body.msfe-has-site-footer > .msfe-site-footer {
  margin-top: auto;
  flex-shrink: 0;
}

.msfe-site-footer-inner {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
  font-size: 0.78rem;
  line-height: 1.25;
}

.msfe-site-footer p {
  margin: 0.12rem 0;
}

.msfe-site-footer p:first-child {
  margin-top: 0;
}

.msfe-site-footer p:last-child {
  margin-bottom: 0;
}

.msfe-footer-copy {
  color: #e2e8f0;
  font-weight: 600;
}

.msfe-site-footer a {
  color: #93c5fd;
  text-decoration: none;
}

.msfe-site-footer a:hover {
  text-decoration: underline;
}

.msfe-footer-meta {
  color: #94a3b8;
  font-size: 0.74rem;
  line-height: 1.2;
}
