:root { --lg-credit-height: calc(48px + env(safe-area-inset-bottom, 0px)); }
html, body { height: 100%; }
body { box-sizing: border-box; padding-bottom: var(--lg-credit-height) !important; }
body > #root, body > #app { height: calc(100dvh - var(--lg-credit-height)); min-height: 0; }
#lg-development-credit {
  box-sizing: border-box; position: fixed; inset: auto 0 0; z-index: 1000;
  height: var(--lg-credit-height); padding-bottom: env(safe-area-inset-bottom, 0px);
  display: flex; align-items: center; justify-content: center;
  background: #102335; color: #fff; font: 12px/1.3 system-ui, sans-serif;
}
#lg-development-credit a { display: inline-flex; gap: 10px; align-items: center;
  min-height: 44px; padding: 0 12px; color: inherit; text-decoration: none; }
#lg-development-credit a:focus-visible { outline: 2px solid #f5c264; outline-offset: -3px; }
#lg-development-credit img { height: auto; object-fit: contain; }
/* Chatwoot's fixed mobile menu must remain above the shared credit. */
#mobile-sidebar-launcher { bottom: calc(var(--lg-credit-height) + 16px) !important; }
/* Twenty's mobile navigation uses an absolute wrapper, not position: fixed. */
@media (max-width: 767px) {
  #root div:has(> nav[aria-hidden]) { bottom: var(--lg-credit-height) !important; }
}
