.footer {
  background: #d9dde4;
  color: #4f5868;
  padding: 10px 20px;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0.5px;
  margin-top: 20px;
  border-radius: 0;
  border-top: 1px solid rgba(40, 50, 70, 0.16);
  width: 100%;
  position: static;
  box-shadow: none;
}

.shell > .footer,
.container > .footer {
  margin-top: auto;
}

body > .footer {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.portal-fixed-footer .footer {
  margin-top: 20px;
  position: static;
  left: auto;
  right: auto;
  bottom: auto;
  width: 100%;
  z-index: auto;
  box-shadow: none;
}

body.portal-fixed-footer .shell > .footer,
body.portal-fixed-footer .container > .footer {
  margin-top: auto;
}

.footer-brand {
  opacity: 0.92;
}

/* Debajo del pie gris: estado + rendimiento (Proyectos / v3) */
.portal-footer-route-meta {
  display: none;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 20px 12px;
  background: #e8ecf2;
  border-top: 1px solid rgba(40, 50, 70, 0.08);
  text-align: left;
  line-height: 1.45;
}

.portal-footer-route-meta.is-visible {
  display: block;
}

.portal-footer-status:empty,
.portal-footer-perf:empty {
  display: none;
}

.portal-footer-status,
.portal-footer-perf {
  font-size: 11px;
  color: #4f5868;
  margin: 0;
  padding: 2px 0;
}

.portal-footer-status.success-message {
  color: #2d7a4f;
}

.portal-footer-status.error-message {
  color: #b91c1c;
}

.portal-footer-status.warn-message {
  color: #92400e;
}

.portal-footer-perf {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
  opacity: 0.9;
  word-break: break-word;
}

.portal-footer-v3[hidden] {
  display: none !important;
}

.portal-footer-v3 {
  padding-bottom: 6px;
  margin-bottom: 4px;
  border-bottom: 1px solid rgba(40, 50, 70, 0.1);
  font-size: 11px;
  color: #1e3a5f;
  line-height: 1.4;
}

.portal-footer-v3 p {
  margin: 0 0 6px;
}

.portal-footer-v3 p:last-child {
  margin-bottom: 0;
}

.portal-footer-v3 code {
  font-size: 10px;
}

.portal-footer-v3-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.portal-footer-v3-actions .btn {
  font-size: 11px;
  padding: 4px 10px;
}

/* Proyectos / v3: estado y rendimiento solo debajo del pie gris */
body.proyectos-footer-mode #app-view #status,
body.proyectos-v3-mode #app-view #status {
  display: none !important;
}
