/* ============================================================
   AUTOMART V42.0
   MOBILE FLOATING SEARCH / FUNCTIONAL FILTER UI
   ------------------------------------------------------------
   - Search page only
   - Header remains sticky
   - Search panel hidden by default
   - Opens from header search icon
   - Make / Model / Year use selector sheets
   - More Filters uses real existing filter form
   - Desktop untouched
   - V41.9 vehicle-card design untouched
   ============================================================ */


/* ------------------------------------------------------------
   MOBILE ONLY
   ------------------------------------------------------------ */

@media screen and (max-width:767px){

    /* ========================================================
       1. ONLY HEADER / LOGO BAR IS STICKY
       Sticky instead of fixed = page content will not slide
       underneath the header.
       ======================================================== */

    body.am-vehicles-page-v42
    header.premium-topbar,
    body.am-vehicles-page-v42
    header.premium-topbar.is-scrolled{

        position:sticky!important;

        top:0!important;
        left:auto!important;
        right:auto!important;

        width:100%!important;

        z-index:1600!important;

        transform:none!important;
    }


    /* ========================================================
       2. GLOBAL SEARCH TAKES NO PAGE HEIGHT WHEN CLOSED
       ======================================================== */

    body.am-vehicles-page-v42
    .am-global-search-v18{

        position:relative!important;

        top:auto!important;
        left:auto!important;
        right:auto!important;

        width:100%!important;

        height:0!important;
        min-height:0!important;
        max-height:0!important;

        margin:0!important;
        padding:0!important;

        overflow:visible!important;

        border:0!important;
        box-shadow:none!important;

        background:transparent!important;

        z-index:1500!important;

        pointer-events:none!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18
    .am-global-search-shell-v18{

        visibility:hidden!important;

        opacity:0!important;

        transform:
            translate3d(0,-18px,0)
            scale(.975)!important;

        transform-origin:
            top center!important;

        pointer-events:none!important;

        transition:
            opacity .22s ease,
            transform .32s cubic-bezier(.2,.9,.25,1.14)!important;
    }


    /* ========================================================
       3. OPEN FLOATING SEARCH PANEL
       ======================================================== */

    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open{

        position:fixed!important;

        top:var(--am-v42-search-top,76px)!important;

        left:12px!important;
        right:12px!important;

        width:auto!important;

        height:auto!important;
        min-height:0!important;
        max-height:calc(100dvh - var(--am-v42-search-top,76px) - 16px)!important;

        padding:0!important;

        overflow:visible!important;

        pointer-events:auto!important;

        z-index:1500!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-search-shell-v18{

        visibility:visible!important;

        opacity:1!important;

        transform:
            translate3d(0,0,0)
            scale(1)!important;

        pointer-events:auto!important;

        width:100%!important;
        max-width:none!important;

        margin:0!important;

        padding:12px!important;

        border:
            1px solid rgba(217,227,222,.96)!important;

        border-radius:22px!important;

        background:
            rgba(255,255,255,.965)!important;

        box-shadow:
            0 24px 60px rgba(10,31,22,.19),
            0 3px 12px rgba(10,31,22,.08)!important;

        backdrop-filter:
            blur(22px)
            saturate(1.15)!important;

        -webkit-backdrop-filter:
            blur(22px)
            saturate(1.15)!important;

        overflow:auto!important;
    }


    /* ========================================================
       4. REFERENCE SEARCH GRID
       Search input
       Make | Model
       Year | More Filters
       Search button
       ======================================================== */

    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-search-form-v18{

        display:grid!important;

        grid-template-columns:
            minmax(0,1fr)
            minmax(0,1fr)!important;

        gap:10px!important;

        width:100%!important;

        margin:0!important;
        padding:0!important;

        background:transparent!important;

        border:0!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-search-main-v18{

        grid-column:1 / -1!important;

        display:flex!important;

        width:100%!important;

        min-height:54px!important;

        margin:0!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-search-main-v18 input{

        width:100%!important;

        min-width:0!important;
        min-height:54px!important;

        padding-right:16px!important;

        border-radius:15px!important;

        font-size:16px!important;

        background:#fff!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-filter-v18{

        display:flex!important;

        width:100%!important;
        min-width:0!important;

        min-height:48px!important;

        margin:0!important;

        border-radius:999px!important;

        background:#fff!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-filter-v18 select{

        width:100%!important;
        min-width:0!important;

        min-height:48px!important;

        cursor:pointer!important;
    }


    /* Location belongs in More Filters on mobile */
    body.am-vehicles-page-v42
    .am-global-search-v18
    .am-global-filter-v18.am-v42-location-filter{

        display:none!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-more-v18{

        display:flex!important;

        width:100%!important;
        min-width:0!important;

        min-height:48px!important;

        align-items:center!important;
        justify-content:center!important;

        gap:7px!important;

        margin:0!important;
        padding:0 11px!important;

        border:
            1px solid #dce6e1!important;

        border-radius:999px!important;

        background:#fff!important;

        box-shadow:
            0 3px 10px rgba(14,42,31,.04)!important;

        font-size:13px!important;
        font-weight:700!important;

        white-space:nowrap!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18
    [data-am-filter-count]{

        min-width:22px!important;
        height:22px!important;

        padding:0 6px!important;

        display:inline-flex!important;

        align-items:center!important;
        justify-content:center!important;

        border-radius:999px!important;

        background:#0ba567!important;

        color:#fff!important;

        font-size:11px!important;
        font-weight:800!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18
    [data-am-filter-count][hidden]{

        display:none!important;
    }


    body.am-vehicles-page-v42
    .am-global-search-v18.am-v42-open
    .am-global-submit-v18{

        grid-column:1 / -1!important;

        display:flex!important;

        width:100%!important;

        min-height:50px!important;

        margin:2px 0 0!important;

        border-radius:14px!important;

        font-size:14px!important;

        box-shadow:
            0 9px 22px rgba(6,146,88,.18)!important;
    }


    /* old internal mobile-toggle is replaced by header search icon */
    body.am-vehicles-page-v42
    .am-global-mobile-toggle-v18{

        display:none!important;
    }


    /* ========================================================
       5. BACKDROP
       ======================================================== */

    .am-v42-backdrop{

        position:fixed;

        inset:0;

        z-index:1400;

        opacity:0;

        visibility:hidden;

        pointer-events:none;

        background:
            rgba(5,18,13,.20);

        backdrop-filter:
            blur(3px);

        -webkit-backdrop-filter:
            blur(3px);

        transition:
            opacity .2s ease,
            visibility .2s ease;
    }


    body.am-v42-overlay-open
    .am-v42-backdrop{

        opacity:1;

        visibility:visible;

        pointer-events:auto;
    }


    /* ========================================================
       6. HEADER SEARCH ACTIVE INDICATOR
       ======================================================== */

    body.am-vehicles-page-v42
    .am-v42-search-trigger{

        position:relative!important;
    }


    body.am-vehicles-page-v42
    .am-v42-search-trigger
    .am-v42-search-count{

        position:absolute;

        top:-3px;
        right:-3px;

        display:none;

        min-width:18px;
        height:18px;

        padding:0 4px;

        align-items:center;
        justify-content:center;

        border-radius:999px;

        border:2px solid #fff;

        background:#ef4444;

        color:#fff;

        font-size:9px;
        line-height:1;

        font-weight:800;

        z-index:5;
    }


    body.am-vehicles-page-v42
    .am-v42-search-trigger.am-v42-has-filter
    .am-v42-search-count{

        display:flex;
    }


    /* ========================================================
       7. MAKE / MODEL / YEAR BOTTOM SELECTOR
       ======================================================== */

    .am-v42-select-sheet{

        position:fixed;

        left:8px;
        right:8px;
        bottom:8px;

        z-index:1900;

        display:flex;

        flex-direction:column;

        max-height:min(74dvh,650px);

        border:
            1px solid #dfe8e3;

        border-radius:
            24px 24px 18px 18px;

        background:#fff;

        box-shadow:
            0 30px 80px rgba(7,26,18,.30);

        opacity:0;

        visibility:hidden;

        pointer-events:none;

        transform:
            translate3d(0,105%,0)
            scale(.985);

        transition:
            opacity .18s ease,
            transform .34s cubic-bezier(.2,.9,.25,1.08),
            visibility .18s ease;

        overflow:hidden;
    }


    body.am-v42-select-open
    .am-v42-select-sheet{

        opacity:1;

        visibility:visible;

        pointer-events:auto;

        transform:
            translate3d(0,0,0)
            scale(1);
    }


    .am-v42-sheet-handle{

        width:42px;
        height:4px;

        flex:0 0 4px;

        margin:8px auto 2px;

        border-radius:999px;

        background:#d5ddd9;
    }


    .am-v42-sheet-head{

        display:flex;

        align-items:center;
        justify-content:space-between;

        gap:14px;

        padding:13px 16px;

        border-bottom:
            1px solid #edf1ef;

        background:
            rgba(255,255,255,.97);
    }


    .am-v42-sheet-head strong{

        font-size:16px;
        line-height:1.2;

        color:#101c2d;
    }


    .am-v42-sheet-close{

        width:36px;
        height:36px;

        display:grid;
        place-items:center;

        padding:0;

        border:
            1px solid #e0e7e3;

        border-radius:50%;

        background:#fff;

        color:#182536;

        font-size:20px;

        cursor:pointer;
    }


    .am-v42-sheet-search{

        padding:10px 14px 4px;
    }


    .am-v42-sheet-search input{

        width:100%;

        height:44px;

        padding:0 13px;

        border:
            1px solid #dde6e2;

        border-radius:12px;

        outline:0;

        background:#fafcfb;

        color:#172334;

        font-size:14px;
    }


    .am-v42-sheet-search input:focus{

        border-color:#12a267;

        box-shadow:
            0 0 0 3px rgba(18,162,103,.09);
    }


    .am-v42-sheet-options{

        overflow:auto;

        padding:8px 14px 18px;

        overscroll-behavior:contain;
    }


    .am-v42-option{

        width:100%;

        min-height:49px;

        display:flex;

        align-items:center;
        justify-content:space-between;

        gap:12px;

        margin:0;

        padding:8px 4px;

        border:0;
        border-bottom:
            1px solid #eef2f0;

        background:#fff;

        color:#162233;

        text-align:left;

        font-size:14px;
        font-weight:600;

        cursor:pointer;
    }


    .am-v42-option:last-child{

        border-bottom:0;
    }


    .am-v42-option-mark{

        width:22px;
        height:22px;

        display:grid;

        place-items:center;

        flex:0 0 22px;

        border:
            1.5px solid #cad7d1;

        border-radius:50%;

        color:transparent;

        font-size:11px;
    }


    .am-v42-option.is-selected
    .am-v42-option-mark{

        border-color:#0ca366;

        background:#0ca366;

        color:#fff;
    }


    /* ========================================================
       8. REAL EXISTING FILTER SIDEBAR -> MOBILE BOTTOM SHEET
       ======================================================== */

    body.am-vehicles-page-v42
    .premium-filter-v14-1{

        display:none!important;
    }


    body.am-vehicles-page-v42.am-v42-filter-open
    .premium-filter-v14-1{

        position:fixed!important;

        left:8px!important;
        right:8px!important;
        bottom:8px!important;
        top:auto!important;

        z-index:1850!important;

        display:block!important;

        width:auto!important;
        min-width:0!important;
        max-width:none!important;

        max-height:88dvh!important;

        margin:0!important;

        padding:0!important;

        overflow:auto!important;

        overscroll-behavior:contain!important;

        border:
            1px solid #dfe8e3!important;

        border-radius:
            24px 24px 18px 18px!important;

        background:#fff!important;

        box-shadow:
            0 30px 80px rgba(7,26,18,.30)!important;

        animation:
            amV42SheetUp
            .34s
            cubic-bezier(.2,.9,.25,1.08)
            both!important;
    }


    @keyframes amV42SheetUp{

        from{
            opacity:0;
            transform:
                translate3d(0,70px,0)
                scale(.985);
        }

        to{
            opacity:1;
            transform:
                translate3d(0,0,0)
                scale(1);
        }
    }


    .am-v42-filter-sheet-head{

        position:sticky;

        top:0;

        z-index:10;

        display:flex;

        align-items:center;
        justify-content:space-between;

        gap:12px;

        padding:
            10px 14px 11px;

        border-bottom:
            1px solid #e9efec;

        background:
            rgba(255,255,255,.97);

        backdrop-filter:
            blur(12px);

        -webkit-backdrop-filter:
            blur(12px);
    }


    .am-v42-filter-sheet-title{

        display:flex;

        flex-direction:column;

        gap:2px;
    }


    .am-v42-filter-sheet-title strong{

        font-size:16px;

        color:#111d2d;
    }


    .am-v42-filter-sheet-title span{

        font-size:12px;

        color:#718095;
    }


    .am-v42-filter-close{

        width:37px;
        height:37px;

        display:grid;

        place-items:center;

        flex:0 0 37px;

        padding:0;

        border:
            1px solid #dee7e2;

        border-radius:50%;

        background:#fff;

        color:#152131;

        font-size:20px;

        cursor:pointer;
    }


    body.am-vehicles-page-v42.am-v42-filter-open
    .premium-filter-form-v14-1{

        padding-bottom:
            calc(18px + env(safe-area-inset-bottom))!important;
    }


    /* ========================================================
       9. RESULTS TOOLBAR / FIRST CARD SPACING
       ======================================================== */

    body.am-vehicles-page-v42
    .premium-listing-v14-1{

        padding-top:12px!important;
    }


    body.am-vehicles-page-v42
    .market-title-row{

        margin-top:0!important;
        margin-bottom:10px!important;
    }


    body.am-vehicles-page-v42
    .premium-listing-layout-v14-1{

        margin-top:0!important;
    }


    body.am-vehicles-page-v42
    .premium-search-results-v15{

        margin-top:0!important;
    }


    body.am-vehicles-page-v42
    .premium-search-grid-v15{

        margin-top:0!important;

        gap:14px!important;
    }


    /* old separate filter button not needed */
    body.am-vehicles-page-v42
    .premium-search-results-v15
    > .filter-toggle{

        display:none!important;
    }


    /* ========================================================
       10. RESTORE SECOND VEHICLE BADGE
       Desktop card data must remain visible on mobile.
       ======================================================== */

    body.am-vehicles-page-v42
    .premium-search-results-v15:not(.view-mode-list-v17)
    .premium-card-badges{

        display:flex!important;

        flex-wrap:nowrap!important;

        max-width:
            calc(100% - 58px)!important;

        overflow:visible!important;
    }


    body.am-vehicles-page-v42
    .premium-search-results-v15:not(.view-mode-list-v17)
    .premium-card-badges
    .premium-badge,

    body.am-vehicles-page-v42
    .premium-search-results-v15:not(.view-mode-list-v17)
    .premium-card-badges
    .premium-badge.verified{

        display:inline-flex!important;

        visibility:visible!important;

        opacity:1!important;
    }

}


/* Desktop/tablet deliberately untouched. */
