/**
 * Phase 1 -- listing layout CSS extracted from products.php inline style blocks.
 * Cached via .htaccess (30d) + filemtime query. Do NOT use .shop-products-grid here;
 * that class is owned by assets/custom/shop.css for homepage cards.
 */

.shop-products-shell {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
        padding:0px 15px 10px;
        box-sizing: border-box;
      }
      .shop-listing-layout {
        display: grid !important;
        grid-template-columns: minmax(260px, 300px) minmax(0, 1fr) !important;
        gap: 40px !important;
        align-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
      }
      .shop-listing-layout > .shop-autima-sidebar,
      .shop-listing-layout > .shop-autima-main {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        float: none !important;
        left: auto !important;
        right: auto !important;
        position: relative !important;
        box-sizing: border-box !important;
      }
      .shop-listing-layout > .shop-autima-sidebar {
        padding: 0 !important;
        margin: 0 !important;
      }
      .shop-listing-layout > .shop-autima-main {
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
      }

      /* Priority #1: keep product results visible */
      body.shop-site.shop-autima-shell .shop-autima-list #shop-results-wrap,
      body.shop-site.shop-autima-shell .shop-autima-list #results,
      body.shop-site.shop-autima-shell .shop-autima-list #results .product-container {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        width: 100% !important;
        min-height: 0 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #results .product-container {
        float: none !important;
        clear: both !important;
        margin: 0 0 20px !important;
        padding: 0 !important;
      }
      /* 3-column grid layout */
      body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results {
        display: flex !important;
        flex-wrap: wrap !important;
        margin-left: -10px !important;
        margin-right: -10px !important;
        width: auto !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results .product-container {
        float: none !important;
        clear: none !important;
        width: 33.333% !important;
        max-width: 33.333% !important;
        padding: 0 2px !important;
        margin: 0 0 5px !important;
        box-sizing: border-box !important;
      }

      body.shop-site.shop-autima-shell .shop-autima-list .shop-autima-product {
      border: 1px solid #f0f0f0 !important;
      border-radius: 3px !important;
      background: #fff !important;
      padding: 8px 8px 2px 8px !important;
      margin: 1px 0 0px !important;
      text-align: left !important;
      
      }
    .shop-card__img-link img {
        display: block;
        width: 100%;
        height: 100%;
        max-width: 100%;
        max-height: 100%;
        -o-object-fit: contain;
        object-fit: contain;
        -o-object-position: center center;
        object-position: center center;
        box-sizing: border-box;
        padding: 0px;
        background: transparent;
        transition: transform .25s ease;
    }

    body.shop-site.shop-autima-shell #shop-results-wrap.grid_list .shop-autima-product .cart_links_btn a {
    display: block !important;
    max-width: 100% !important;
    width: 160px;
    text-align: center !important;
    line-height: 40px !important;
    border-radius: 25px !important;
    background: #ffd54c !important;
    color: #333 !important;
    font-size: 15px !important;
    text-transform: capitalize !important;
    }
    body.shop-site.shop-autima-shell #shop-results-wrap.grid_3 .shop-autima-product .grid_name h3 a, body.shop-site.shop-autima-shell #shop-results-wrap.grid_4 .shop-autima-product .grid_name h3 a {
    color: #333 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-weight: bold;
}


      /* Mobile benefit: roomier 2-col cards on mid phones; single-col only under 575px. */
      @media (max-width: 992px) {
        body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results .product-container {
          width: 50% !important;
          max-width: 50% !important;
          padding-left: 8px !important;
          padding-right: 8px !important;
          margin-bottom: 18px !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results .product_name.grid_name h3 a {
          font-size: 14px !important;
          line-height: 1.35 !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results .price_box .current_price {
          font-size: 15px !important;
        }
      }
      @media (max-width: 575px) {
        body.shop-site.shop-autima-shell .shop-autima-list.is-grid-3 #results .product-container {
          width: 50% !important;
          max-width: 50% !important;
          padding-left: 6px !important;
          padding-right: 6px !important;
        }
      }
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #results {
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #results .product-container {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px !important;
        padding: 0 !important;
      }
      /* Neutralize homepage .shop-card rules — grid mode only */
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-grid .shop-autima-product.shop-card,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-grid .shop-autima-product {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        overflow: visible !important;
        transform: none !important;
      }

      /* ========== VIEW MODE: GRID vs LIST (bulletproof) ========== */
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-grid .sp-list-row {
        display: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-grid .sp-grid-block {
        display: block !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-grid-block {
        display: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #results {
        display: block !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #results .product-container {
        display: block !important;
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        padding: 0 !important;
        margin: 0 0 16px !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .shop-autima-product {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 20px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 18px 20px !important;
        margin: 0 !important;
        border: 1px solid #f0f0f0 !important;
        background: #fff !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-thumb {
        flex: 0 0 180px !important;
        width: 180px !important;
        max-width: 28% !important;
        margin: 0 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-thumb img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-height: 160px !important;
        object-fit: contain !important;
        margin: 0 auto !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-info {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        padding-right: 20px !important;
        border-right: 1px solid #ddd !important;
        text-align: left !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-info .product_name h3 {
        margin: 0 0 10px !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-info .product_desc p {
        margin: 8px 0 0 !important;
        color: #777 !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action {
        flex: 0 0 200px !important;
        width: 200px !important;
        max-width: 30% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        text-align: right !important;
        gap: 10px !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action .price_box,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action .cart_links_btn,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action .action_links_btn,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action .text_available {
        width: 100% !important;
        text-align: right !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action .action_links_btn ul {
        display: inline-flex !important;
        justify-content: flex-end !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 8px !important;
      }
      @media (max-width: 767px) {
        body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-row {
          flex-wrap: wrap !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-thumb {
          flex: 0 0 100% !important;
          width: 100% !important;
          max-width: 100% !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-info {
          flex: 1 1 100% !important;
          border-right: 0 !important;
          padding-right: 0 !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action {
          flex: 1 1 100% !important;
          width: 100% !important;
          max-width: 100% !important;
          align-items: flex-start !important;
          text-align: left !important;
        }
      }

      /* Sidebar filter panel */
      body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout .shop-filter-panel,
      body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout .sidebar_widget {
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout #sticky-con,
      body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout #sticky-con.widget_inner {
        padding: 32px 28px !important;
        background: #f4f4f4 !important;
        border: 1px solid #e1e1e1 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        box-sizing: border-box !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout #sticky-con > * {
        border: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        overflow: visible !important;
        background: transparent !important;
      }

      /* Dual price slider: only thumbs capture pointer (fixes stuck max thumb) */
      body.shop-site.shop-autima-shell .shop-price-slider__input {
        pointer-events: none !important;
      }
      body.shop-site.shop-autima-shell .shop-price-slider__input::-webkit-slider-thumb,
      body.shop-site.shop-autima-shell .shop-price-slider__input::-moz-range-thumb {
        pointer-events: auto !important;
      }
      body.shop-site.shop-autima-shell .shop-price-slider__input.is-active {
        z-index: 6 !important;
      }

      /* Toolbar — List + Grid (3-col) only */
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_wrapper {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
        gap: 20px 32px !important;
        padding: 10px 12px !important;
        margin: 0 0 15px !important;
        border: 1px solid #ddd !important;
        background: #fff !important;
        border-radius: 20px !important;
        box-shadow: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 0 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button.btn-grid-4,
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button.four-col,
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button.btn-grid-2,
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button.two-col {
        display: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid #ddd !important;
        border-radius: 4px !important;
        background: #fff !important;
        background-image: none !important;
        color: #9e9e9e !important;
        font-size: 18px !important;
        opacity: 1 !important;
        padding: 0 !important;
        line-height: 1 !important;
        box-shadow: none !important;
        transition: color .15s ease, border-color .15s ease;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button i {
        color: inherit !important;
        font-size: 18px !important;
        line-height: 1 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button.active,
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar_btn > button:hover {
        color: #333 !important;
        border-color: #333 !important;
        background: #fff !important;
        background-image: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop-toolbar-sort {
        margin: 0 !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list .shop-toolbar-count {
        margin-left: auto !important;
        text-align: right !important;
        color: #757575 !important;
        font-size: 14px !important;
      }

      @media (max-width: 991px) {
        .shop-products-shell { padding: 8px 16px 40px; }
        .shop-listing-layout {
          display: block !important;
          gap: 0 !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout > .shop-filter-panel.shop-autima-sidebar {
          position: fixed !important;
          top: 0 !important;
          left: 0 !important;
          width: min(320px, 88vw) !important;
          height: 100vh !important;
          z-index: 1050 !important;
          padding: 20px 16px !important;
          background: #fff !important;
          overflow-y: auto !important;
          transform: translateX(-105%) !important;
          transition: transform 0.22s ease !important;
          box-shadow: 4px 0 24px rgba(15, 23, 42, 0.12) !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout > .shop-filter-panel.shop-autima-sidebar.is-open {
          transform: translateX(0) !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list .shop-listing-layout > .shop-filter-panel #sticky-con {
          padding: 0 !important;
          border: 0 !important;
          background: transparent !important;
        }
        body.shop-site.shop-autima-shell .shop-autima-list .shop-toolbar-count {
          margin-left: 0 !important;
          width: 100% !important;
          text-align: left !important;
        }
      }

/* Beat #shop-results-wrap.grid_list ID rules from shop-ui.css that break List view */
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap.grid_list .shop-autima-product,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #shop-results-wrap.grid_list .shop-autima-product,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap .shop-autima-product {
        display: block !important;
        flex-direction: unset !important;
        align-items: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap.grid_list .sp-grid-block,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #shop-results-wrap.grid_list .sp-grid-block,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-grid-block {
        display: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap.grid_list .sp-list-row,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #shop-results-wrap.grid_list .sp-list-row,
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-row,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view .sp-list-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 15px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 8px 8px !important;
        margin: 0 !important;
        border: 1px solid #f0f0f0 !important;
        background: #fff !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        max-height: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #results .product-container,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #results .product-container {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 0 16px !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-thumb {
        flex: 0 0 180px !important;
        width: 180px !important;
        max-width: 28% !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-info {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        padding-right: 20px !important;
        border-right: 1px solid #ddd !important;
        max-height: 100% !important;
        height: 160px;
        vertical-align: top;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list .sp-list-action {
        flex: 0 0 200px !important;
        max-width: 30% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        text-align: right !important;
        gap: 10px !important;
      }
      /* Neutralize legacy list_content / product_thumb flex from shop-ui in list mode */
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap.grid_list .list_content,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #shop-results-wrap.grid_list .list_content {
        display: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list.view-mode-list #shop-results-wrap.grid_list .product_thumb,
      body.shop-site.shop-autima-shell .shop-autima-list.is-list-view #shop-results-wrap.grid_list .product_thumb {
        flex: none !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
      }

      /* Pagination footer always visible */
      body.shop-site.shop-autima-shell .shop-autima-list .shop_toolbar.t_bottom {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        clear: both !important;
        width: 100% !important;
        margin-top: 16px !important;
        padding: 12px 18px !important;
        border-radius: 18px;
        border: 1px solid #e5e5e5 !important;
        background: #fff !important;
        box-sizing: border-box !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #pagination,
      body.shop-site.shop-autima-shell .shop-autima-list .pagination-right {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        text-align: right !important;
        min-height: 36px !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination {
        display: inline-flex !important;
        flex-wrap: wrap !important;
        gap: 4px !important;
        margin: 0 !important;
        visibility: visible !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination > li {
        display: inline-block !important;
        float: none !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination > li > a,
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination > li > span {
        display: inline-block !important;
        visibility: visible !important;
        min-width: 36px !important;
        height: 36px !important;
        line-height: 34px !important;
        padding: 0 12px !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 3px !important;
        background: #fff !important;
        color: #333 !important;
        text-align: center !important;
      }
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination > .active > a,
      body.shop-site.shop-autima-shell .shop-autima-list #pagination ul.pagination > .active > span {
        background: var(--ds-yellow, #f5c518) !important;
        border-color: var(--ds-yellow, #f5c518) !important;
        color: #111 !important;
      }
