/**
 * PWA standalone polish — safe areas, fixed UI, touch targets.
 * Requires viewport-fit=cover (see scripts/pwa-standalone-init.js).
 */

/* Installed / home-screen display mode */
html.pwa-standalone header.header {
    padding-top: env(safe-area-inset-top, 0px);
}

@media (max-width: 768px) {
    html.pwa-standalone .main-content {
        padding-left: max(1rem, env(safe-area-inset-left, 0px));
        padding-right: max(1rem, env(safe-area-inset-right, 0px));
        padding-bottom: max(1rem, env(safe-area-inset-bottom, 0px));
    }

    html.pwa-standalone .toast-container {
        top: max(80px, calc(env(safe-area-inset-top, 0px) + 4.5rem));
        right: max(10px, env(safe-area-inset-right, 0px));
        left: max(10px, env(safe-area-inset-left, 0px));
    }

    html.pwa-standalone .scroll-to-top-btn {
        bottom: max(2rem, calc(env(safe-area-inset-bottom, 0px) + 1rem));
        right: max(2rem, env(safe-area-inset-right, 0px));
    }

    html.pwa-standalone .pull-to-refresh-indicator {
        padding-top: env(safe-area-inset-top, 0px);
    }

    html.pwa-standalone .version-update-notification {
        bottom: max(10px, env(safe-area-inset-bottom, 0px));
    }
}

/* Coarse pointers: reduce tap delay without blocking scroll on containers */
@media (hover: none) and (pointer: coarse) {
    button,
    a,
    [role='button'],
    input[type='submit'],
    input[type='button'],
    input[type='reset'],
    .btn,
    .action-button,
    .hamburger-menu {
        touch-action: manipulation;
    }
}
