        /* ==============================================
           DIVI 5 COMPATIBILITY FIX
           Divi 5 injects overflow-y:hidden as an inline
           style on #page-container when animated content
           is present. This silently breaks position:sticky
           on all descendants including our sidebar scroll
           wrapper. Override required.
           ============================================== */
        #page-container.et-animated-content {
            overflow-y: initial !important;
        }

        /* =============================================
           CATALOG LISTING — FONT SCOPE
           ============================================= */
        .liveag-catalog-listing,
        .liveag-catalog-listing * {
            font-family: 'Poppins', sans-serif !important;
        }

        /* =============================================
           CATALOG LISTING — OUTER WRAPPER
           Default (mobile-first): single column
           25px breathing room on both sides at all sizes
           ============================================= */
        .liveag-catalog-listing {
            width: 100%;
            max-width: 1340px;
            margin-left: auto;
            margin-right: auto;
            padding: 0 25px;
            box-sizing: border-box;
        }

        /* =============================================
           SIDEBAR HEADER (title + close button)
           Base: hidden — shown only in full-page filter mode.
           MUST appear before any @media block so media query rules take precedence.
           ============================================= */
        .liveag-sidebar-header {
            display: none;
        }

        /* =============================================
           FULL-PAGE FILTER VIEW (below 1180px)
           Sidebar is a normal-flow block, hidden by default.
           Shown by JS toggling .liveag-filter-fullpage-active on the listing wrapper.
           No position:fixed, no 100vh, no body scroll lock, no z-index battles.
           ============================================= */

        .liveag-filter-sidebar {
            display: none;
        }

        /* When filter view is active, hide the catalog content and show the sidebar */
        .liveag-filter-fullpage-active .liveag-filter-sidebar {
            display: flex;
            flex-direction: column;
            width: 100%;
            background: #fff;
            border: 1px solid #e0e0e0;
            border-radius: 6px;
            margin-top: 7px;
        }

        .liveag-filter-fullpage-active .liveag-catalog-main {
            display: none;
        }

        /* Sidebar header visible in full-page mode */
        .liveag-filter-fullpage-active .liveag-sidebar-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 12px 14px;
            border-bottom: 1px solid #e0e0e0;
            flex-shrink: 0;
        }

        /* Close button at bottom visible in full-page mode */
        .liveag-filter-fullpage-active .liveag-sidebar-close-bottom {
            display: block;
        }

        /* Filter heading hidden in full-page mode (sidebar header shows "Filters" instead) */
        .liveag-filter-fullpage-active .liveag-filter-heading {
            display: none;
        }

        /* Tablet horizontal: center the filter panel so it doesn't stretch full width */
        @media (min-width: 768px) and (max-width: 1179px) {
            .liveag-filter-fullpage-active .liveag-filter-sidebar {
                max-width: 600px;
                margin-left: auto;
                margin-right: auto;
            }
        }

        /* =============================================
           PRINT CATALOG BUTTON
           Sits in the results count / top pagination row.
           Same green family as filter trigger.
           Hidden on touch-only devices; visible on any mouse/trackpad device.
           JS hides it via inline style when zero lots are displayed;
           sets style="" to clear and let CSS take over when lots exist.
           ============================================= */
        .liveag-print-btn {
            display: none;
            align-items: center;
            gap: 6px;
            padding: 6px 14px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 4px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
            white-space: nowrap;
            height: 32px;
            line-height: normal;
            box-sizing: border-box;
        }
        .liveag-print-btn:hover {
            background: #3a5c2b;
        }

        /* =============================================
           BUTTON1 — Configurable CTA link
           Desktop version: top-bar, visible at 1180px+.
           Mobile version: above search trigger, visible below 1180px
           (parent .liveag-filter-trigger-wrap is display:none at 1180px+).
           ============================================= */
        .liveag-button1-desktop {
            display: none;
            align-items: center;
            gap: 6px;
            padding: 6px 14px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 4px;
            font-size: 13px;
            font-weight: 600;
            font-family: 'Poppins', sans-serif;
            white-space: nowrap;
            text-decoration: none;
            cursor: pointer;
            line-height: normal;
            box-sizing: border-box;
            height: 32px;
        }
        .liveag-button1-desktop:hover {
            background: #3a5c2b;
            color: #fff;
        }

        .liveag-button1-mobile {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 8px 16px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 4px;
            font-size: 14px;
            font-weight: 600;
            font-family: 'Poppins', sans-serif;
            text-decoration: none;
            cursor: pointer;
            margin-left: auto;
            line-height: normal;
            box-sizing: border-box;
        }
        .liveag-button1-mobile:hover {
            background: #3a5c2b;
            color: #fff;
        }

        /* Hide print button during @media print */
        @media print {
            .liveag-print-btn {
                display: none !important;
            }
            .liveag-button1-desktop,
            .liveag-button1-mobile {
                display: none !important;
            }
        }

        /* =============================================
           DESKTOP LAYOUT: sidebar always visible (1180px+)
           ============================================= */
        @media (min-width: 1180px) {
            .liveag-catalog-listing {
                display: flex;
                align-items: flex-start;
                gap: 24px;
                width: 100%;
            }

            /* Wrapper is the flex item — owns width, sticky, and max-height */
            .liveag-sidebar-wrap {
                width: 300px;
                flex-shrink: 0;
                position: sticky;
                top: 80px;
                max-height: calc(100vh - 100px);
                display: flex;
                flex-direction: column;
            }

            .liveag-filter-sidebar {
                flex: 1;
                min-height: 0;   /* allow flex child to shrink */
                overflow: hidden;   /* sidebar clips — scroll wrapper handles scrolling */
                background: #fff;
                border: 1px solid #e0e0e0;
                border-radius: 6px;
                display: flex;
                flex-direction: column;
                margin-top: 7px;
            }

            .liveag-catalog-main {
                flex: 1;
                min-width: 0;
                max-width: 1010px;
            }

            /* Trigger button hidden on desktop — sidebar always visible */
            .liveag-filter-trigger-wrap {
                display: none;
            }

            /* Button1 desktop version visible at 1180px+ */
            .liveag-button1-desktop {
                display: inline-flex;
            }

            .liveag-sidebar-overlay {
                display: none !important;
            }

            /* Header bar hidden on desktop */
            .liveag-sidebar-header {
                display: none;
            }

            /* Search Filters heading visible on desktop */
            .liveag-filter-heading {
                display: block !important;
            }

        }

        /* Print button visible on any device with a mouse/trackpad, regardless of viewport width.
           (excludes touch-only devices — hover: hover and pointer: fine together target mouse/trackpad) */
        @media (hover: hover) and (pointer: fine) {
            .liveag-print-btn {
                display: inline-flex;
            }
        }

        /* =============================================
           SIDEBAR BOTTOM CLOSE BUTTON
           Hidden on desktop (sidebar always visible).
           Shown in overlay mode only (mobile + mid-size).
           ============================================= */
        .liveag-sidebar-close-bottom {
            display: none;
            width: 100%;
            padding: 10px 16px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 9px;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
            text-align: center;
        }
        .liveag-sidebar-close-bottom:hover {
            background: #3a5c2b;
        }

        /* =============================================
           MID-SIZE LAYOUT: filter trigger visible (768px–1179px)
           Full-page filter view handled by .liveag-filter-fullpage-active base rules above.
           ============================================= */
        @media (min-width: 768px) and (max-width: 1179px) {
            .liveag-filter-trigger-wrap {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                margin-bottom: 12px;
            }
            .liveag-active-chips-mobile {
                flex-basis: 100%;
            }
            .liveag-filter-heading {
                display: none;
            }
        }

        /* =============================================
           MOBILE LAYOUT: filter trigger visible (< 768px)
           Full-page filter view handled by .liveag-filter-fullpage-active base rules above.
           ============================================= */
        @media (max-width: 767px) {
            .liveag-filter-trigger-wrap {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                margin-bottom: 12px;
            }
            .liveag-active-chips-mobile {
                flex-basis: 100%;
            }
            .liveag-filter-heading {
                display: none;
            }
        }

        /* =============================================
           SIDEBAR HEADER — continued styles (title + close button)
           ============================================= */
        .liveag-sidebar-title {
            font-size: 15px;
            font-weight: 700;
            color: #2b2b2b;
            font-family: 'Poppins', sans-serif;
        }

        .liveag-sidebar-close {
            background: none;
            border: none;
            font-size: 18px;
            color: #444;
            cursor: pointer;
            padding: 4px 8px;
            line-height: 1;
            border-radius: 3px;
            min-width: 32px;
            min-height: 32px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        .liveag-sidebar-close:hover {
            background: #f0f0f0;
        }
        .liveag-sidebar-close {
            position: relative;
        }
        .liveag-sidebar-close::before,
        .liveag-sidebar-close::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 14px;
            height: 2px;
            background: #444;
            border-radius: 1px;
        }
        .liveag-sidebar-close::before {
            transform: translate(-50%, -50%) rotate(45deg);
        }
        .liveag-sidebar-close::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }

        /* =============================================
           SIDEBAR FILTER HEADING
           "Search Filters" h4 — sits above the scroll wrapper.
           Visible at all breakpoints.
           ============================================= */
        .liveag-filter-heading {
            font-family: 'Poppins', sans-serif;
            font-size: 13px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            color: #4a7436;
            margin: 0;
            padding: 12px 16px 8px;
        }

        /* =============================================
           SIDEBAR SCROLL WRAPPER
           Takes remaining flex space and scrolls internally
           Applies at ALL breakpoints — the key fix for sticky footer
           ============================================= */
        .liveag-sidebar-scroll {
            flex: 1;
            overflow-y: auto;
            min-height: 0;   /* CRITICAL: allows flex item to shrink below content height */
            padding: 8px 8px 4px;
        }

        /* =============================================
           OVERLAY (mobile / mid-size)
           ============================================= */
        .liveag-sidebar-overlay {
            display: none;
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.4);
            z-index: 9997;
        }
        .liveag-sidebar-overlay.liveag-overlay-active {
            display: block;
        }

        /* =============================================
           FILTER TRIGGER BUTTON (mobile / mid-size)
           ============================================= */
        .liveag-filter-trigger {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 8px 16px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 4px;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
        }
        .liveag-filter-trigger:hover {
            background: #3a5c2b;
        }

        .liveag-trigger-count {
            background: #fff;
            color: #4a7436;
            border-radius: 10px;
            padding: 0 6px;
            font-size: 11px;
            font-weight: 700;
        }

        /* =============================================
           KEYWORD SECTION — Always visible, not accordion
           ============================================= */
        .liveag-keyword-section {
            border: 2px solid #4a7436;
            border-radius: 6px;
            padding: 10px 12px;
            margin-bottom: 12px;
        }

        /* =============================================
           ACCORDION SECTION HEADERS (dropdown-style)
           ============================================= */
        .liveag-section-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            padding: 10px 14px;
            background: #f5f0e8;
            border: 1px solid #2b2b2b;
            border-radius: 6px;
            cursor: pointer;
            font-family: Poppins, sans-serif;
            font-size: 14px;
            font-weight: 600;
            color: #2b2b2b;
            text-align: left;
            margin-bottom: 0;
        }
        .liveag-section-header:hover {
            background: #ede8df;
        }
        .liveag-section-header[aria-expanded="true"] {
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
            background: #4a7436;
            color: #fff;
        }
        .liveag-section-chevron {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 16px;
            height: 16px;
            flex-shrink: 0;
        }
        .liveag-section-chevron::after {
            content: '';
            display: block;
            width: 0;
            height: 0;
            border-left: 5px solid transparent;
            border-right: 5px solid transparent;
            border-top: 6px solid currentColor;
            transition: transform 0.2s ease;
        }
        .liveag-section-header[aria-expanded="true"] .liveag-section-chevron::after {
            transform: rotate(180deg);
        }

        .liveag-section-count {
            background: #4a7436;
            color: #fff;
            border-radius: 10px;
            padding: 1px 6px;
            font-size: 11px;
            font-weight: 700;
            margin-left: 6px;
            margin-right: auto;
        }

        /* When header is expanded, invert count badge so it's visible on green */
        .liveag-section-header[aria-expanded="true"] .liveag-section-count {
            background: #fff;
            color: #4a7436;
        }

        /* =============================================
           ACCORDION SECTION CONTENT
           ============================================= */
        .liveag-section-content {
            border: 1px solid #2b2b2b;
            border-top: none;
            border-radius: 0 0 6px 6px;
            padding: 8px 0 4px;
            margin-bottom: 8px;
        }

        /* =============================================
           ACCORDION SECTION WRAPPER
           Margin between sections
           ============================================= */
        .liveag-accordion-section {
            margin-bottom: 4px;
        }

        /* =============================================
           SET BUTTON (inside accordion checkbox sections)
           Green fill, CSS checkmark via ::after, 33% width, right-aligned
           ============================================= */
        .liveag-set-btn {
            display: block;
            width: 33%;
            margin: 6px 8px 4px auto;
            padding: 5px 0;
            background: #4a7436;
            border: 1px solid #4a7436;
            border-radius: 4px;
            color: #fff;
            font-family: Poppins, sans-serif;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            text-align: center;
            position: relative;
            overflow: visible;
        }
        .liveag-set-btn:hover {
            background: #3a5c29;
            border-color: #3a5c29;
        }
        .liveag-set-btn::after {
            content: '';
            display: inline-block;
            width: 6px;
            height: 11px;
            border-right: 2.5px solid #fff;
            border-bottom: 2.5px solid #fff;
            transform: rotate(45deg) translate(-1px, -2px);
        }

        /* =============================================
           FILTER LISTS (checkbox groups)
           Inside .liveag-section-content
           ============================================= */
        .liveag-filter-list {
            list-style: none !important;
            margin: 0;
            padding: 0 8px;
            max-height: 220px;
            overflow-y: auto;
        }
        .liveag-filter-list li {
            padding: 3px 0;
        }

        /* Alternate row shading is applied via JS (restripeFilterList) so that
           hidden items do not break the even/odd pattern when filters are active. */

        .liveag-filter-list label {
            display: flex;
            align-items: flex-start;   /* top-align so checkbox stays with first line when text wraps */
            gap: 8px;
            font-size: 13px;
            color: #444;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
            padding: 2px 4px;
            border-radius: 3px;
        }
        .liveag-filter-list label:hover {
            color: #2b2b2b;
        }
        .liveag-filter-list input[type="checkbox"] {
            flex-shrink: 0;
            accent-color: #4a7436;
            width: 15px;
            height: 15px;
            cursor: pointer;
            margin: 0;
            margin-top: 2px;   /* nudge down slightly to align with text cap-height */
        }
        .liveag-filter-option-count {
            color: #999;
            font-size: 11px;
            margin-left: auto;
        }
        .liveag-filter-list input[type="checkbox"]:checked ~ .liveag-filter-option-count {
            color: #4a7436;
        }

        /* =============================================
           DATE + NUMBER RANGE INPUTS
           Side-by-side layout — inside section content padding
           ============================================= */
        .liveag-date-inputs {
            display: flex;
            flex-direction: row;
            gap: 8px;
            align-items: flex-end;
            padding: 0 8px;
        }
        .liveag-date-inputs .liveag-input-label {
            flex: 1;
            min-width: 0;
        }

        .liveag-range-inputs {
            display: flex;
            flex-direction: row;
            gap: 8px;
            align-items: flex-end;
            padding: 0 8px;
        }
        .liveag-range-inputs .liveag-input-label {
            flex: 1;
            min-width: 0;
        }

        .liveag-input-label {
            display: flex;
            flex-direction: column;
            gap: 3px;
            font-size: 12px;
            font-weight: 600;
            color: #555;
            font-family: 'Poppins', sans-serif;
        }

        .liveag-date-input {
            width: 100%;
            box-sizing: border-box;
            padding: 6px 4px;
            font-size: 12px;   /* slightly smaller to fit in 300px sidebar */
            border: 1px solid #ccc;
            border-radius: 4px;
            font-family: 'Poppins', sans-serif;
        }

        .liveag-number-input {
            width: 100%;
            box-sizing: border-box;
            padding: 6px 8px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-size: 13px;
            font-family: 'Poppins', sans-serif;
        }

        .liveag-text-input {
            padding: 6px 8px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-size: 13px;
            font-family: 'Poppins', sans-serif;
            width: 100%;
            box-sizing: border-box;
        }

        .liveag-date-input:focus,
        .liveag-number-input:focus,
        .liveag-text-input:focus {
            border-color: #4a7436;
            outline: none;
        }

        /* =============================================
           KEYWORD ROW (search input + Go button)
           Fix: input takes available space, button stays compact
           ============================================= */
        .liveag-keyword-row {
            display: flex;
            gap: 6px;
            align-items: center;
        }
        .liveag-keyword-row .liveag-text-input {
            flex: 1;
            min-width: 0;
        }
        .liveag-keyword-row .liveag-section-apply {
            flex-shrink: 0;
            width: auto;
            padding: 3px 16px;
            margin-top: 0;
            line-height: 1.1;
        }

        /* =============================================
           SEARCH CLEAR BUTTON (inside keyword row)
           CSS-only × drawn with ::before and ::after
           ============================================= */
        .liveag-search-clear-btn {
            position: relative;
            background: none;
            border: none;
            cursor: pointer;
            padding: 0;
            width: 20px;
            height: 20px;
            flex-shrink: 0;
            /* display controlled entirely by inline style in HTML and JS — no display:none here */
        }
        .liveag-search-clear-btn::before,
        .liveag-search-clear-btn::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            width: 12px;
            height: 2px;
            background: #888;
            border-radius: 1px;
        }
        .liveag-search-clear-btn::before {
            transform: translate(-50%, -50%) rotate(45deg);
        }
        .liveag-search-clear-btn::after {
            transform: translate(-50%, -50%) rotate(-45deg);
        }
        .liveag-search-clear-btn:hover::before,
        .liveag-search-clear-btn:hover::after {
            background: #2b2b2b;
        }

        /* =============================================
           LOT NOT FOUND MESSAGE
           ============================================= */
        #liveag-lot-not-found {
            margin-top: 6px;
            padding: 6px 10px;
            background: #fff3cd;
            border: 1px solid #ffc107;
            border-radius: 4px;
            font-size: 12px;
            font-family: Poppins, sans-serif;
            color: #856404;
        }

        /* =============================================
           NO RESULTS MESSAGE (filter combination)
           ============================================= */
        .liveag-no-results-msg {
            text-align: center;
            color: #666;
            font-size: 14px;
            padding: 32px 16px;
            font-family: 'Poppins', sans-serif;
        }

        /* =============================================
           SECTION-LEVEL APPLY BUTTONS
           ============================================= */
        .liveag-section-apply {
            margin-top: 8px;
            width: 100%;
            padding: 6px 12px;
            background: #4a7436;
            color: #fff;
            border: none;
            border-radius: 4px;
            font-size: 12px;
            font-weight: 600;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
        }
        .liveag-section-apply:hover {
            background: #3a5c2b;
        }

        /* Apply Dates / Apply Weight inside section content padding */
        .liveag-section-content .liveag-section-apply {
            display: block;
            width: calc(100% - 16px);
            margin: 8px 8px 4px;
            box-sizing: border-box;
        }

        /* =============================================
           SUPPLEMENTS ONLY CHECKBOX ROW
           ============================================= */
        .liveag-supplements-row {
            padding: 10px 12px 6px;
            border-top: 1px solid #e0dbd2;
            margin-top: 4px;
        }
        .liveag-supplements-label {
            display: flex;
            align-items: center;
            gap: 8px;
            font-family: Poppins, sans-serif;
            font-size: 13px;
            font-weight: 600;
            color: #2b2b2b;
            cursor: pointer;
        }
        .liveag-supplements-checkbox {
            width: 16px;
            height: 16px;
            accent-color: #4a7436;
            cursor: pointer;
            flex-shrink: 0;
        }

        /* =============================================
           SIDEBAR STICKY FOOTER (Reset All + mobile Close)
           flex-shrink: 0 so it never scrolls away
           ============================================= */
        .liveag-filter-footer {
            flex-shrink: 0;
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            padding: 12px 14px;
            background: #fff;
            border-top: 2px solid #e0e0e0;
            z-index: 1;
        }

        .liveag-filter-reset {
            width: 100%;
            padding: 8px 16px;
            background: none;
            border: 2px solid #4a7436;
            color: #4a7436;
            border-radius: 4px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            font-family: 'Poppins', sans-serif;
        }
        .liveag-filter-reset:hover {
            background: #f0f7ed;
        }

        /* =============================================
           ACTIVE FILTERS STRIP (desktop sidebar top)
           ============================================= */
        .liveag-active-filters {
            padding: 8px 14px;
            border-bottom: 1px solid #e0e0e0;
            display: flex;
            flex-wrap: wrap;
            gap: 4px;
            align-items: center;
            flex-shrink: 0;
        }

        .liveag-active-filters-label {
            font-size: 11px;
            font-weight: 700;
            color: #999;
            text-transform: uppercase;
            margin-right: 4px;
        }

        .liveag-active-chips-inner {
            display: flex;
            flex-wrap: wrap;
            gap: 4px;
        }

        /* =============================================
           ACTIVE FILTER CHIPS
           ============================================= */
        .liveag-active-chips-mobile {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            margin-top: 8px;
        }

        .liveag-filter-chip {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            background: #4a7436;
            color: #fff;
            border-radius: 4px;
            padding: 3px 8px;
            font-size: 12px;
            font-family: 'Poppins', sans-serif;
        }

        .liveag-chip-x {
            background: none;
            border: none;
            color: rgba(255,255,255,0.8);
            cursor: pointer;
            font-size: 13px;
            padding: 0;
            line-height: 1;
            font-weight: 700;
        }
        .liveag-chip-x:hover {
            color: #fff;
        }

        /* =============================================
           REP PHONE NO-WRAP
           ============================================= */
        .liveag-rep-line {
            white-space: nowrap;
            display: block;
        }

        /* =============================================
           RESULTS COUNT
           ============================================= */
        .liveag-results-count {
            font-family: Poppins, sans-serif;
            font-size: 13px;
            color: #2b2b2b;
            font-weight: 600;
        }

        /* =============================================
           CARD — OUTER CONTAINER
           ============================================= */
        .liveag-lot-card {
            display: flex;
            flex-direction: column;
            margin-bottom: 20px;
            border: 1px solid #333;
            border-radius: 9px;
            overflow: hidden;
            background: #fff;
        }

        /* =============================================
           CARD — BANNER BAR (full width: lot/pre # + seller)
           ============================================= */
        .liveag-card-banner {
            display: flex;
            align-items: stretch;
            width: 100%;
            border-bottom: 2px solid #2b2b2b;
            text-decoration: none;
            cursor: pointer;
        }

        /* -- Lot / Pre number box -- */
        .liveag-card-lot-id {
            background: #4a7436;
            color: #fff;
            font-weight: 700;
            font-size: 17px;
            width: 140px;
            min-height: 16px;
            padding: 3px 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            white-space: nowrap;
            box-sizing: border-box;
            flex-shrink: 0;
            text-decoration: none;
            cursor: pointer;
        }

        /* -- Full-banner hover: darken both children -- */
        .liveag-card-banner:hover .liveag-card-lot-id {
            background: #3a5c2b;
        }
        .liveag-card-banner:hover .liveag-card-seller {
            background: #d4cabb;
        }

        /* -- Seller name area -- */
        .liveag-card-seller {
            background: #EDE5D8;
            color: #2b2b2b;
            font-weight: 700;
            font-size: 17px;
            padding: 3px 14px;
            flex: 1;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        /* =============================================
           CARD — CONTENT AREA (below banner)
           Desktop: CSS Grid — title top-left, fields bottom-left, video right column
           Mobile: flex column — title, video, fields
           ============================================= */
        .liveag-card-content {
            display: grid;
            grid-template-columns: 1fr 400px;
            grid-template-rows: auto 1fr;
        }

        /* =============================================
           CARD — TITLE SECTION (top-left on desktop)
           ============================================= */
        .liveag-card-title-section {
            grid-column: 1;
            grid-row: 1;
            padding: 5px 10px 2px;
        }

        /* -- Display title (e.g. "95 Weaned Steers 540#") -- */
        .liveag-card-title {
            font-size: 17px;
            font-weight: 700;
            color: #2b2b2b;
            margin: 0 0 1px;
            line-height: 1.15;
            font-variant: small-caps;
        }
        .liveag-card-title a {
            color: inherit;
            text-decoration: none;
        }
        .liveag-card-title a:hover {
            text-decoration: underline;
        }

        /* -- Sold for / No Sale line — matches .liveag-card-title in size and weight; gold color -- */
        .liveag-sold-for { font-size: 17px; font-weight: 700; color: #D05045; margin: -10px 0 4px; line-height: 1.15; font-variant: small-caps; }

        /* -- Option lot (green text, flush left, no band) -- */
        .liveag-option-lot-banner {
            color: #4a7436;
            font-size: 14px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin: 1px 0 3px;
            padding: 0;
        }

        /* =============================================
           CARD — VIDEO COLUMN (right, spans both rows on desktop)
           ============================================= */
        .liveag-lot-card-video {
            grid-column: 2;
            grid-row: 1 / 3;
            width: 400px;
            flex-shrink: 0;
            position: relative;
        }

        /* -- Video wrapper (16:9 aspect) -- */
        .liveag-card-video-wrap {
            position: relative;
            width: 100%;
            aspect-ratio: 16/9;
            overflow: hidden;
            background: #000;
        }
        .liveag-card-video-wrap iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
        }

        /* -- No video layout: collapse grid to single column so content fills full width -- */
        .liveag-card-content.liveag-card-no-video-layout {
            grid-template-columns: 1fr;
        }
        .liveag-card-content.liveag-card-no-video-layout .liveag-card-title-section,
        .liveag-card-content.liveag-card-no-video-layout .liveag-card-fields-section {
            grid-column: 1;
        }

        /* =============================================
           CARD — FIELDS SECTION (bottom-left on desktop)
           ============================================= */
        .liveag-card-fields-section {
            grid-column: 1;
            grid-row: 2;
            padding: 0 10px 2px;
            display: flex;
            flex-direction: column;
        }

        /* =============================================
           CARD — ACTIONS (badges row)
           ============================================= */
        .liveag-card-actions {
            padding: 4px 0 8px;
            display: flex;
            align-items: center;
        }

        /* =============================================
           CARD — TITLE ROW (title left, Details link right)
           ============================================= */
        .liveag-card-title-row {
            display: flex;
            justify-content: space-between;
            align-items: baseline;
            gap: 8px;
        }

        .liveag-card-details-link {
            font-family: 'Poppins', sans-serif;
            font-size: 13px;
            font-weight: 600;
            color: #4a7436;
            text-decoration: underline;
            white-space: nowrap;
            flex-shrink: 0;
        }

        .liveag-card-details-link:hover {
            color: #3a5c2b;
        }

        /* =============================================
           PAGINATION — BOTTOM (full style)
           ============================================= */
        .liveag-catalog-pagination {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 4px;
            margin: 16px 0;
        }

        /* -- Prev / Next buttons (bottom) -- */
        .liveag-page-prev,
        .liveag-page-next {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 6px 14px;
            font-size: 13px;
            font-weight: 600;
            border-radius: 4px;
            text-decoration: none;
            cursor: pointer;
            transition: background 0.2s;
            background: #4a7436;
            color: #fff;
            border: none;
        }
        .liveag-page-prev:hover,
        .liveag-page-next:hover {
            background: #3a5c2b;
        }
        .liveag-page-prev:disabled,
        .liveag-page-next:disabled {
            background: #ccc;
            color: #888;
            cursor: default;
        }

        /* -- Page numbers (bottom) -- */
        .liveag-page-num {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 34px;
            height: 34px;
            padding: 0 6px;
            font-size: 13px;
            font-weight: 600;
            border-radius: 4px;
            text-decoration: none;
            cursor: pointer;
            transition: background 0.2s;
            background: #f5f0e8;
            color: #4a7436;
            border: none;
        }
        @media (hover: hover) {
            .liveag-page-num:hover:not(.active) {
                background: #4a7436;
                color: #fff;
            }
        }
        .liveag-page-num.active {
            background: #4a7436;
            color: #fff;
            cursor: default;
        }

        /* -- Dots (bottom) -- */
        .liveag-page-dots {
            color: #999;
            font-size: 13px;
            padding: 0 2px;
        }

        /* -- Page info text (bottom only) -- */
        .liveag-page-info {
            font-size: 12px;
            color: #666;
            margin-left: 12px;
            white-space: nowrap;
        }

        /* =============================================
           PAGINATION — TOP (compact Bootstrap-inspired)
           ============================================= */
        .liveag-pagination-top {
            justify-content: flex-end;
            align-items: center;
            margin: 0 0 12px;
            gap: 0;
        }
        .liveag-pagination-top .liveag-page-num,
        .liveag-pagination-top .liveag-page-dots {
            background: #fff;
            border: 1px solid #ccc;
            border-right: none;
            border-radius: 0;
            min-width: auto;
            height: 28px;
            padding: 0 8px;
            font-size: 12px;
            font-weight: 500;
            color: #4a7436;
            cursor: pointer;
            box-sizing: border-box;
            line-height: 26px;
        }
        /* -- First segment: round left corners -- */
        .liveag-pagination-top .liveag-page-num:first-child {
            border-radius: 3px 0 0 3px;
        }
        /* -- Last segment: round right corners + right border -- */
        .liveag-pagination-top .liveag-page-num:last-child,
        .liveag-pagination-top .liveag-page-dots:last-child {
            border-right: 1px solid #ccc;
            border-radius: 0 3px 3px 0;
        }
        /* -- Hover state -- */
        .liveag-pagination-top .liveag-page-num:hover:not(.active):not(.disabled) {
            background: #f5f0e8;
            color: #3a5c2b;
        }
        /* -- Active / current page -- */
        .liveag-pagination-top .liveag-page-num.active {
            background: #4a7436;
            color: #fff;
            border-color: #4a7436;
            cursor: default;
            height: 28px;
            line-height: 26px;
        }
        /* -- Disabled arrows (first/last page) -- */
        .liveag-pagination-top .liveag-page-num.disabled {
            color: #bbb;
            cursor: default;
            background: #f5f5f5;
        }
        /* -- Dots -- */
        .liveag-pagination-top .liveag-page-dots {
            cursor: default;
            color: #999;
        }
        /* -- Hide page info in top bar -- */
        .liveag-pagination-top .liveag-page-info {
            display: none;
        }

        /* =============================================
           CARDS CONTAINER (for AJAX swap)
           ============================================= */
        .liveag-catalog-cards {
            transition: opacity 0.2s ease;
        }

        /* =============================================
           RESPONSIVE — MOBILE (cards + pagination)
           ============================================= */
        @media (max-width: 767px) {
            /* Switch to flex column: title → video → fields */
            .liveag-card-content {
                display: flex;
                flex-direction: column;
            }
            .liveag-card-title-section {
                order: 1;
            }
            .liveag-lot-card-video {
                order: 2;
                width: 100%;
                grid-column: unset;
                grid-row: unset;
            }
            .liveag-card-fields-section {
                order: 3;
            }
            .liveag-card-lot-id {
                font-size: 15px;
                width: 120px;
            }
            .liveag-card-seller {
                font-size: 15px;
            }
            .liveag-card-actions {
                justify-content: flex-start;
            }
            .liveag-page-info {
                display: none;
            }
            .liveag-top-bar {
                justify-content: center !important;
            }
        }

        /* =============================================
           BROWSE CARD — v1.2 NEW FIELD STYLES
           ============================================= */

        /* -- Badge images (decorative, pipe-delimited list) -- */
        .liveag-badge { height: 45px; width: auto; margin: 0 8px 0 0; vertical-align: middle; }
        .liveag-card-badges { display: flex; flex-wrap: wrap; align-items: center; row-gap: 8px; }

        /* -- Browse card field rows (div-based, tight spacing) -- */
        .liveag-card-fields { margin: 2px 0 0; }
        .liveag-card-field { font-size: 14px; color: #444; line-height: 1.0; margin-bottom: 3px; }
        .liveag-card-label { font-weight: 600; color: #2b2b2b; margin-right: 3px; }

        /* -- Video coming soon flag — shown on browse cards when flagmissingvid is active and lot has no video -- */
        .liveag-card-video-coming {
            color: #D88942;
            font-family: 'Poppins', sans-serif;
            font-size: 14px;
            font-weight: 600;
            margin-top: -10px;
        }

        /* =============================================
           CLEAR ALL FILTERS LINK
           ============================================= */
        .liveag-clear-all-wrap {
            padding: 0 16px 8px;
            text-align: right;
        }

        .liveag-clear-all-btn {
            background: none;
            border: none;
            padding: 0;
            font-family: 'Poppins', sans-serif;
            font-size: 11px;
            font-weight: 500;
            color: #4a7436;
            text-decoration: underline;
            cursor: pointer;
            letter-spacing: 0.02em;
        }

        .liveag-clear-all-btn:hover {
            color: #2b2b2b;
        }

        /* Print spinner animation */
        @keyframes liveag-spin {
            to { transform: rotate(360deg); }
        }
        .liveag-print-spinner {
            width: 36px;
            height: 36px;
            margin: 0 auto;
            border: 4px solid #e0e0e0;
            border-top-color: #4a7436;
            border-radius: 50%;
            animation: liveag-spin 0.8s linear infinite;
        }
