/* Shared footer: follows all tabs and uses the existing light/dark palette. */
#app-shell { display: flex; flex-direction: column; }
.dashboard-body { flex: 1 0 auto; }
.dashboard-footer {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: auto 12px 0;
  padding: 14px 4px 18px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
.footer-analyst-label { color: var(--text); }
.footer-analyst-label strong { font-weight: 700; }
.footer-divider { opacity: .55; }
.footer-profile-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--text);
  text-decoration: none;
  white-space: nowrap;
  border-radius: 3px;
}
.footer-profile-link:hover { color: var(--blue); text-decoration: underline; }
.footer-profile-link:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
/* The uploaded artwork includes white outer padding: keep the visible logo
   around 18px while clipping only that padding in a 24px image box. */
.footer-brand-logo {
  display: block; width: 24px; height: 24px; object-fit: contain;
  flex: 0 0 24px; margin: -3px;
  clip-path: inset(13% round 4px);
}
/* Leave scrollable space below wrapped links for Studio's floating launcher. */
@media (max-width: 768px) {
  .dashboard-footer { padding-bottom: calc(120px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 480px) {
  .dashboard-footer { column-gap: 7px; row-gap: 8px; font-size: 12px; }
}
