.app-bottom-nav{display:none}.app-button-row,.app-team-tabs{display:flex;gap:10px;flex-wrap:wrap}.app-team-tabs{margin:16px 0}.app-team-tabs a{color:var(--accent);padding:8px 12px}.app-install-menu{font-size:.9rem}.app-settings{margin:20px 0}.app-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.app-settings-form label{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-settings-form input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent)}.app-settings-form input:not([type=checkbox]){max-width:100%}.app-settings-form .footnote{grid-column:1/-1}.app-settings details,.app-admin details{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:12px}.app-settings summary,.app-admin summary{cursor:pointer}.app-admin>summary{font-size:1.4rem;font-weight:700}.app-admin>select{margin:20px 0}.app-admin table{width:100%;border-collapse:collapse}.app-admin th,.app-admin td{padding:10px 6px;border-bottom:1px solid var(--line);text-align:left}.app-admin label{display:grid;gap:6px;margin:16px 0;max-width:450px}.app-icon-preview{object-fit:contain;border-radius:24%;margin:10px;background:#222327}.new-icon-preview{padding:14px}.app-warning{color:var(--accent)}.app-install-invite{position:fixed;z-index:35;bottom:calc(80px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:480px;margin:auto;padding:18px;background:var(--panel);border:1px solid var(--accent);border-radius:16px;box-shadow:var(--shadow)}.app-install-invite p{font-size:.9rem}.app-install-invite button{font-size:.85rem;min-height:44px}.game-round{border:1px solid var(--line);border-radius:12px;padding:14px;margin:16px 0}.game-round progress{margin:8px 0;height:7px}.game-round-done{padding:20px;background:var(--accent-soft);border-radius:12px;margin:16px 0}.game-round-done[hidden]{display:none}.app-settings input[type=file],.app-admin input[type=file]{max-width:100%}
@media(max-width:850px){body{padding-bottom:calc(75px + env(safe-area-inset-bottom))}.app-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;z-index:20;bottom:0;left:0;right:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);gap:4px}.app-bottom-nav a{display:flex;align-items:center;justify-content:center;min-height:48px;text-decoration:none;border-radius:9px;font-size:.8rem;text-align:center}.app-bottom-nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}.app-settings-form{grid-template-columns:1fr}.app-admin table{font-size:.8rem}.app-admin .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-toast{bottom:calc(85px + env(safe-area-inset-bottom))!important}.installed-app .rating-game{padding-top:12px}.installed-app .rating-game h1{font-size:1.5rem}.installed-app .rating-game>.eyebrow,.installed-app .rating-game>.intro-note{display:none}.game-choices button{min-height:48px}.app-settings-form label{align-items:center}}

/* One navigation on phones; the existing links remain accessible through More. */
@media(min-width:851px){.app-install-menu{display:none!important}}
@media(max-width:850px){
 .app-navigation-ready .mobile-menu-toggle{display:none!important}
 .app-navigation-ready .archive-nav{display:none!important}
 .app-navigation-ready .archive-nav.menu-open{display:flex!important;position:fixed;z-index:24;bottom:calc(80px + env(safe-area-inset-bottom));right:12px;left:12px;max-width:440px;max-height:60dvh;overflow-y:auto;margin:0 0 0 auto;padding:12px;flex-direction:column;align-items:stretch;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
 .app-navigation-ready .archive-nav a[href="./"],.app-navigation-ready .archive-nav a[href="index.html"],.app-navigation-ready .archive-nav a[href="bewertungsspiel.html"],.app-navigation-ready .archive-nav a[data-community],.app-navigation-ready .archive-nav a[data-profile]{display:none!important}
 .app-navigation-ready .archive-nav a,.app-navigation-ready .archive-nav button{padding:12px;text-align:left;min-height:44px}
 .app-navigation-ready .app-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
 .app-bottom-nav .app-more{font-size:.8rem;padding:4px;min-width:0;border:0;background:transparent;color:var(--text);border-radius:9px;min-height:48px}
 .app-bottom-nav .app-more[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}
 .app-bottom-nav a{padding:4px;font-size:.76rem}
}

/* Reserve identity controls before the asynchronous account request finishes. */
.mod-bell-slot{display:block;width:42px;height:42px;flex:0 0 42px}
.archive-nav [data-profile]{min-width:126px;box-sizing:border-box}
html.app-navigation-ready:not(.account-ready) .archive-nav [data-profile],html.app-navigation-ready:not(.account-ready) .app-bottom-nav a[href="profil.html"]{visibility:hidden}
.mod-bell-slot .mod-notifications{animation:proky-control-in .2s ease-out both}
@keyframes proky-control-in{from{opacity:0}to{opacity:1}}
@media(max-width:520px){.topbar .mod-bell-slot{grid-column:2;grid-row:2;justify-self:end}}
@media(prefers-reduced-motion:reduce){.mod-bell-slot .mod-notifications{animation:none}}

/* Presentation is selected by the early script, before modules or account requests. */
html:not(.app-install-available) .app-mobile-only,html:not(.app-install-available) [data-app-install],html:not(.app-install-available) .app-install-invite{display:none!important}
html.app-install-available .app-notifications-only{display:none!important}
