body.has-app-footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}.app-footer-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:center;gap:4px;margin:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e7dfed;box-shadow:0 -3px 18px #51346308}.app-footer-nav a{flex:1;max-width:180px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 3px;border-radius:12px;color:#594d68;text-decoration:none;font:500 12px/1.25 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center}.app-footer-nav svg{width:24px;height:24px;flex-shrink:0}.app-footer-nav a[aria-current=page]{color:#7641a5;background:#f0e8f8;font-weight:700}.app-footer-nav a:hover{background:#f4eef8}.app-footer-nav a:focus-visible{outline:3px solid #79509d;outline-offset:-2px}@media(max-width:800px){.has-app-footer .sidebar nav{display:none}.app-footer-nav a{font-size:10px}}@media print{.app-footer-nav{display:none!important}body.has-app-footer{padding-bottom:0}}
.app-footer-nav a>span{font:inherit;width:auto;max-width:100%;line-height:1.25;text-align:center}

/* Shared decorative landscape; Today and sign-in already include this image. */
body.has-app-footer main:not(.auth-welcome):not(:has(.home-hero))::before {
  content: "";
  display: block;
  width: 100%;
  height: clamp(150px, 22vw, 230px);
  flex: 0 0 auto;
  order: -1;
  margin: 0 0 24px;
  border-radius: 22px;
  background: url('/morgenlandschaft.png') center 48% / cover no-repeat;
}
@media (max-width: 600px) {
  body.has-app-footer main:not(.auth-welcome):not(:has(.home-hero))::before {
    height: 160px;
    margin-bottom: 20px;
    border-radius: 18px;
    background-position: 65% 48%;
  }
}
@media print {
  body.has-app-footer main:not(.auth-welcome):not(:has(.home-hero))::before { display: none; }
}
