/*!
 * Mobile / touch polish for OPD themes.
 * Load AFTER idds-nav-place.css so drawer wins over desktop isolation.
 */
@media (max-width: 991.98px) {
    /* Let Magz hamburger drawer own the nav list — no horizontal max-content bar */
    body.skin-magz[data-opd-theme] nav.menu #menu-list {
        overflow: visible !important;
        min-width: 0 !important;
        width: 100% !important;
    }
    body.skin-magz[data-opd-theme] nav.menu .nav-list {
        flex-wrap: nowrap !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
    body.skin-magz[data-opd-theme] nav.menu .nav-list > li > a {
        height: auto !important;
        min-height: 48px !important;
        white-space: normal !important;
        padding: .75rem 1rem !important;
    }

    /* Clearance so float CTA does not cover footer / last cards */
    body.skin-magz[data-opd-theme] {
        padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px));
    }

    body.skin-magz[data-opd-theme] .opd-float-cta {
        right: max(.55rem, env(safe-area-inset-right, 0px));
        bottom: max(.65rem, env(safe-area-inset-bottom, 0px));
        gap: .55rem;
    }
    body.skin-magz[data-opd-theme] .opd-float-cta__btn {
        min-width: 48px;
        min-height: 48px;
        justify-content: center;
        padding: .7rem .85rem;
    }

    body.skin-magz[data-opd-theme] .opd-net__grid {
        grid-template-columns: 1fr;
    }
    body.skin-magz[data-opd-theme] .opd-net__card {
        min-height: 52px;
    }

    body.skin-magz[data-opd-theme] .opd-fold-cta__btn {
        min-height: 44px;
        padding: .7rem 1.1rem;
    }
}

@media (max-width: 900px) {
    body.skin-magz[data-opd-theme] .opd-net__tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        padding-bottom: .15rem;
        margin-inline: -.15rem;
        padding-inline: .15rem;
    }
    body.skin-magz[data-opd-theme] .opd-net__tab {
        flex: 0 0 auto;
        min-height: 44px;
        padding: .55rem 1rem;
    }
}

/* Focus rings for keyboard / a11y */
body.skin-magz[data-opd-theme] .opd-fold-cta__btn:focus-visible,
body.skin-magz[data-opd-theme] .opd-float-cta__btn:focus-visible,
body.skin-magz[data-opd-theme] .opd-net__tab:focus-visible,
body.skin-magz[data-opd-theme] .opd-net__card:focus-visible,
body.skin-magz[data-opd-theme] .opd-svc__card:focus-visible,
body.skin-magz[data-opd-theme] nav.menu .nav-list > li > a:focus-visible {
    outline: 3px solid var(--color-secondary, #FCA416);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    body.skin-magz[data-opd-theme] .opd-float-cta__btn,
    body.skin-magz[data-opd-theme] .opd-fold-cta__btn,
    body.skin-magz[data-opd-theme] .opd-net__card {
        transition: none !important;
        transform: none !important;
    }
}
