/* PWA & Mobile-First Overrides for FuchaWeb3 */

:root {
    --pwa-bottom-nav-height: 65px;
    --ds-blue: #6576ff;
    --ds-blue-dim: rgba(101, 118, 255, 0.1);
}

/* Rubber-band & Scroll Management */
@media (max-width: 991px) {

    html,
    body {
        overflow-x: hidden;
        overscroll-behavior-y: auto;
        min-height: 100%;
    }

    body {
        padding-bottom: var(--pwa-bottom-nav-height) !important;
        -webkit-overflow-scrolling: touch;
    }

    /* Hide standard desktop elements on small screens */
    .header-stats,
    .header-bottom,
    .header-ticker,
    .partials-footer {
        display: none !important;
    }

    /* Simplified Sticky Header for Mobile */
    .header-main {
        position: sticky;
        top: 0;
        background: #fff;
        z-index: 1030;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    }

    /* Touch Target Optimization */
    .btn,
    .nav-link,
    .dropdown-item {
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .form-control,
    .form-select {
        min-height: 48px;
    }

    /* PWA Navigation Bar */
    .pwa-bottom-nav {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        height: var(--pwa-bottom-nav-height);
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        display: flex;
        justify-content: space-around;
        align-items: center;
        border-top: 1px solid #e5e9f2;
        padding-bottom: env(safe-area-inset-bottom);
        z-index: 2000;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.05);
    }

    .pwa-nav-item {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        color: #8094ae;
        transition: all 0.2s;
        gap: 2px;
    }

    .pwa-nav-item i {
        font-size: 20px;
    }

    .pwa-nav-item span {
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.02em;
    }

    .pwa-nav-item.active {
        color: var(--ds-blue);
    }

    /* Segmented Control (Tabs) */
    .segmented-control {
        background: #f1f3f7;
        border-radius: 12px;
        padding: 4px;
        display: flex;
        margin-bottom: 20px;
    }

    .segmented-item {
        flex: 1;
        border: none;
        background: none;
        padding: 8px;
        font-size: 13px;
        font-weight: 700;
        color: #526484;
        border-radius: 10px;
        transition: all 0.2s;
    }

    .segmented-item.active {
        background: #fff;
        color: var(--ds-blue);
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    }

    /* Full-screen Auth Pages */
    .auth-fullscreen {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background: #fff;
        padding: 30px;
    }
}