/* Web navigation and language controls. */
html, body, button, input, select, textarea { -webkit-app-region: no-drag; }
.menu-back-btn {
    position: fixed;
    top: 1.25rem;
    left: 1.5rem;
    z-index: 5;
    padding: .65rem 1.1rem;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 999px;
    background: rgba(255,255,255,.07);
    color: inherit;
    text-decoration: none;
}
.session-appearance {
    display: grid;
    gap: .6rem;
    width: min(100%, 340px);
    margin-top: 1.5rem;
    text-align: center;
}
.storage-notice {
    position: fixed;
    bottom: 1rem;
    left: 1rem;
    right: 1rem;
    z-index: 10000;
    padding: 1rem;
    border: 1px solid #fbbf24;
    border-radius: 10px;
    background: #422006;
    color: white;
}
@media (max-width: 1000px) {
    /* Let touch swipes reach the document after scrolling the shock results;
       a second body scroll container traps them under mobile overscroll rules. */
    body.odds-reroll-page { overflow: visible; }
    html.mobile-app, html.mobile-app body,
    html.mobile-app button, html.mobile-app input, html.mobile-app select {
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", sans-serif;
    }
    html.mobile-app .session-appearance { flex: none; margin: 1rem auto; }
    html.mobile-app body > .container {
        height: auto !important;
        min-height: 100dvh !important;
        overflow-y: auto !important;
        justify-content: safe center !important;
        padding-top: 4rem !important;
        padding-bottom: 3rem !important;
    }
    html.mobile-app .menu-back-btn { top: .7rem; left: .7rem; }
}
