.mobile-app { height: 100%; display: grid; grid-template-rows: auto minmax(0,1fr) auto; background: var(--surface); color: var(--text); overflow: hidden; }
.app-header { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 18px 16px 10px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.97); }
.space-heading { min-width: 0; display: grid; gap: 1px; }
.space-heading strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; }
.space-heading small { color: var(--muted); font-size: var(--font-meta); }
.header-action { width: var(--touch); min-width: var(--touch); border: 1px solid var(--line); border-radius: 14px; background: var(--surface-strong); color: var(--text); }
.app-content { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 18px 16px 28px; }
.bottom-nav { min-height: 72px; display: grid; grid-template-columns: repeat(5,1fr); padding: 6px 8px 8px; border-top: 1px solid var(--line); background: rgba(255,255,255,.98); }
.bottom-nav button { min-height: var(--touch); min-width: var(--touch); display: grid; place-items: center; gap: 2px; padding: 4px; border: 0; border-radius: 12px; background: transparent; color: var(--muted); font-size: 12px; }
.bottom-nav button[aria-current="page"] { background: rgba(227,110,104,.12); color: #9e3e3a; font-weight: 800; }
.bottom-nav .nav-icon { font-size: 18px; line-height: 1; }
.app-content h1, .app-content h2, .app-content h3 { color: inherit; }
.mobile-app[data-complexity="erweitert"] { --advanced-visible: block; }
[data-app-root] { height: 100%; overflow: hidden; }
