/**
 * Capacitor Native App Styles v1.0
 * Applied only when running inside Capacitor iOS/Android shell.
 * Detection: body.capacitor-ios or body.capacitor-android (set by capacitor-init.js)
 */

/* ==================== Global Native Overrides ==================== */

/* Prevent rubber-band bounce on the whole page (native apps don't bounce) */
body.capacitor-ios {
    overscroll-behavior: none;
    -webkit-overflow-scrolling: auto;
    /* Prevent text selection on structural elements */
    -webkit-user-select: none;
    user-select: none;
}

/* Re-enable text selection on content areas */
body.capacitor-ios .section-content,
body.capacitor-ios .message-content,
body.capacitor-ios .chat-messages,
body.capacitor-ios textarea,
body.capacitor-ios input {
    -webkit-user-select: text;
    user-select: text;
}

/* ==================== Status Bar Spacing ==================== */

/* Native app has a real status bar — add extra padding */
body.capacitor-ios .mobile-header {
    padding-top: calc(env(safe-area-inset-top, 44px) + 4px);
    min-height: calc(56px + env(safe-area-inset-top, 44px));
}

body.capacitor-ios .sidebar {
    padding-top: calc(env(safe-area-inset-top, 44px) + 8px);
}

/* ==================== Navigation Bar Spacing ==================== */

/* Bottom safe area for iPhone home indicator */
body.capacitor-ios .chat-input-container,
body.capacitor-ios .chat-input-area {
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 34px));
}

body.capacitor-ios .sidebar-footer {
    padding-bottom: calc(20px + env(safe-area-inset-bottom, 34px));
}

/* ==================== Native-Like Scrolling ==================== */

body.capacitor-ios .chat-messages {
    /* Momentum scrolling like native UIScrollView */
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
}

body.capacitor-ios .session-list {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
}

/* ==================== Native-Like Transitions ==================== */

/* Faster, snappier transitions for native feel */
body.capacitor-ios .sidebar.animating {
    transition: transform 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

body.capacitor-ios .menu-backdrop {
    transition: opacity 250ms ease;
}

/* ==================== Disable Web-Specific UI ==================== */

/* Hide PWA install prompts in native app */
body.capacitor-ios .pwa-install-prompt,
body.capacitor-ios .update-toast,
body.capacitor-ios #version-banner {
    display: none !important;
}

/* Hide "Add to Home Screen" hints */
body.capacitor-ios .add-to-homescreen {
    display: none !important;
}

/* ==================== Native Touch Feedback ==================== */

/* iOS-style tap highlight */
body.capacitor-ios button,
body.capacitor-ios .btn,
body.capacitor-ios .session-item,
body.capacitor-ios .template-card {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
}

/* Active state for native feel */
body.capacitor-ios button:active,
body.capacitor-ios .btn:active,
body.capacitor-ios .session-item:active {
    opacity: 0.7;
    transition: opacity 50ms ease;
}

/* ==================== Keyboard Adjustments ==================== */

/* When Capacitor keyboard plugin reports keyboard open */
body.capacitor-ios.keyboard-open .chat-input-area {
    padding-bottom: 8px;
}

body.capacitor-ios.keyboard-open .launchpad {
    padding-bottom: 20px;
}

/* ==================== Login Page Native Adjustments ==================== */

body.capacitor-ios .login-container {
    padding-top: calc(env(safe-area-inset-top, 44px) + 20px);
}

body.capacitor-ios .login-footer {
    padding-bottom: calc(env(safe-area-inset-bottom, 34px) + 16px);
}

/* ==================== Reduced Motion (respect system setting) ==================== */
@media (prefers-reduced-motion: reduce) {
    body.capacitor-ios * {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
}
