/**
 * Lilith product and cart form layout.
 *
 * Migrated from wpo-lilith-product-form-layout.php. Keep selectors scoped
 * to WooCommerce product/cart screens until the old mu-plugin is disabled.
 */

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
      body.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button,
      body.woocommerce-cart a.checkout-button.button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 56px !important;
        padding: 0 28px !important;
        border: 1px solid #050505 !important;
        border-radius: 0 !important;
        background: #050505 !important;
        color: #fff !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        text-align: center !important;
        box-shadow: none !important;
        text-decoration: none !important;
      }

      body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
      body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus {
        background: #202020 !important;
        border-color: #202020 !important;
        color: #fff !important;
      }

      body.single-product form.variations_form.cart > div,
      body.single-product form.cart .single_variation_wrap,
      body.single-product form.cart .woocommerce-variation,
      body.single-product form.cart .woocommerce-variation-add-to-cart,
      body.single-product .elementor-add-to-cart .variations_form.cart > div,
      body.single-product .elementor-add-to-cart .single_variation_wrap {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
      }

      body.single-product form.variations_form.cart table.variations,
      body.single-product form.variations_form.cart table.variations tbody,
      body.single-product form.variations_form.cart table.variations tr,
      body.single-product form.variations_form.cart table.variations th,
      body.single-product form.variations_form.cart table.variations td,
      body.single-product .variable-items-wrapper,
      body.single-product .woo-variation-items-wrapper {
        background: transparent !important;
        background-color: transparent !important;
      }

      body.single-product form.cart .woocommerce-variation-add-to-cart,
      body.single-product form.cart .single_variation_wrap .woocommerce-variation-add-to-cart {
        display: flex !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        max-width: 490px !important;
        margin-top: 16px !important;
        gap: 0 !important;
        background: transparent !important;
      }

      body.single-product form.cart .woocommerce-variation-add-to-cart::before,
      body.single-product form.cart .woocommerce-variation-add-to-cart::after {
        content: none !important;
        display: none !important;
      }

      body.single-product form.cart .quantity {
        display: flex !important;
        flex: 0 0 58px !important;
        width: 58px !important;
        min-width: 58px !important;
        max-width: 58px !important;
        height: 38px !important;
        margin: 0 !important;
        float: none !important;
      }

      body.single-product form.cart .quantity .qty,
      body.single-product form.cart input.qty {
        width: 100% !important;
        min-width: 0 !important;
        height: 38px !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 0 8px !important;
        border: 1px solid #050505 !important;
        border-right: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #050505 !important;
        font-size: 14px !important;
        line-height: 38px !important;
        text-align: center !important;
        box-shadow: none !important;
        -moz-appearance: textfield !important;
        appearance: textfield !important;
      }

      body.single-product form.cart input.qty::-webkit-outer-spin-button,
      body.single-product form.cart input.qty::-webkit-inner-spin-button {
        margin: 0 !important;
        -webkit-appearance: none !important;
        appearance: none !important;
      }

      body.single-product form.cart .quantity.lilith-quantity-stepper {
        display: grid !important;
        grid-template-columns: 38px 48px 38px !important;
        flex: 0 0 124px !important;
        width: 124px !important;
        min-width: 124px !important;
        max-width: 124px !important;
        height: 38px !important;
        border: 1px solid #050505 !important;
        background: #fff !important;
      }

      body.single-product form.cart .quantity.lilith-quantity-stepper .qty {
        grid-column: 2 !important;
        width: 48px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 !important;
        border: 0 !important;
        color: #050505 !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 36px !important;
        text-align: center !important;
      }

      body.single-product form.cart .quantity .lilith-qty-button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        height: 36px !important;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #050505 !important;
        box-shadow: none !important;
        font-family: Quicksand, sans-serif !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 1 !important;
        cursor: pointer !important;
        transition: background-color .16s ease, color .16s ease !important;
      }

      body.single-product form.cart .quantity .lilith-qty-button.lilith-qty-minus {
        grid-column: 1 !important;
        border-right: 1px solid #ececec !important;
      }

      body.single-product form.cart .quantity .lilith-qty-button.lilith-qty-plus {
        grid-column: 3 !important;
        border-left: 1px solid #ececec !important;
      }

      body.single-product form.cart .quantity .lilith-qty-button:hover,
      body.single-product form.cart .quantity .lilith-qty-button:focus {
        background: #050505 !important;
        color: #fff !important;
        outline: none !important;
      }

      body.single-product form.cart .quantity .lilith-qty-button:disabled {
        color: #b8b8b8 !important;
        background: #fff !important;
        cursor: not-allowed !important;
      }

      body.single-product form.cart .single_add_to_cart_button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 auto !important;
        min-width: 132px !important;
        width: auto !important;
        height: 38px !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 0 24px !important;
        border: 1px solid #050505 !important;
        border-radius: 0 !important;
        background: #050505 !important;
        color: #fff !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        text-align: center !important;
        white-space: nowrap !important;
        box-shadow: none !important;
        transform: none !important;
      }

      body.single-product form.cart .single_add_to_cart_button:hover,
      body.single-product form.cart .single_add_to_cart_button:focus {
        background: #202020 !important;
        border-color: #202020 !important;
        color: #fff !important;
      }

      body.single-product form.cart .single_add_to_cart_button.disabled,
      body.single-product form.cart .single_add_to_cart_button.wc-variation-selection-needed {
        opacity: .55 !important;
        cursor: not-allowed !important;
      }

      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-close,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-nav,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-control {
        width: 42px !important;
        min-width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        border: 1px solid rgba(120,82,72,.28) !important;
        border-radius: 0 !important;
        background: rgba(176,128,116,.92) !important;
        background-color: rgba(176,128,116,.92) !important;
        color: #fff !important;
        box-shadow: 0 8px 22px rgba(120,82,72,.24) !important;
        text-shadow: none !important;
        opacity: 1 !important;
      }

      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-nav {
        width: 44px !important;
        min-width: 44px !important;
        height: 54px !important;
        min-height: 54px !important;
        font: 300 34px/1 Arial, sans-serif !important;
      }

      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-close {
        font: 300 30px/1 Arial, sans-serif !important;
      }

      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-control {
        font: 400 22px/1 Arial, sans-serif !important;
      }

      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-close:hover,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-close:focus,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-nav:hover,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-nav:focus,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-control:hover,
      body.single-product .lilith-immersive-loupe-overlay.is-active .lilith-immersive-loupe-control:focus {
        background: #9f6f64 !important;
        background-color: #9f6f64 !important;
        color: #fff !important;
        outline: 1px solid rgba(255,255,255,.65) !important;
        outline-offset: -3px !important;
      }

      body.single-product .lilith-featured-nav,
      body.single-product .lilith-carousel-nav {
        background: transparent !important;
        background-color: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        color: #fff !important;
        text-shadow: 0 1px 3px rgba(0,0,0,.55) !important;
      }

      body.single-product .lilith-featured-nav:hover,
      body.single-product .lilith-featured-nav:focus,
      body.single-product .lilith-carousel-nav:hover,
      body.single-product .lilith-carousel-nav:focus {
        background: transparent !important;
        background-color: transparent !important;
        color: #fff !important;
        box-shadow: none !important;
      }

      @media (max-width: 767px) {
        body.single-product form.cart .woocommerce-variation-add-to-cart,
        body.single-product form.cart .single_variation_wrap .woocommerce-variation-add-to-cart {
          max-width: 100% !important;
        }

        body.single-product form.cart .quantity {
          flex-basis: 56px !important;
          width: 56px !important;
          min-width: 56px !important;
          max-width: 56px !important;
        }

        body.single-product form.cart .quantity.lilith-quantity-stepper {
          grid-template-columns: 34px 42px 34px !important;
          flex-basis: 110px !important;
          width: 110px !important;
          min-width: 110px !important;
          max-width: 110px !important;
        }

        body.single-product form.cart .quantity.lilith-quantity-stepper .qty {
          width: 42px !important;
        }

        body.single-product form.cart .quantity .lilith-qty-button {
          width: 34px !important;
          font-size: 17px !important;
        }

        body.single-product form.cart .single_add_to_cart_button {
          flex: 1 1 auto !important;
          min-width: 0 !important;
          padding-left: 18px !important;
          padding-right: 18px !important;
        }
      }

      body.single-product .lilith-thumbnails-gallery .lilith-nav,
      body.single-product .lilith-thumbnails-gallery .lilith-nav:hover,
      body.single-product .lilith-thumbnails-gallery .lilith-nav:focus,
      body.single-product .lilith-thumbnails-gallery .lilith-nav:focus-visible,
      body.single-product .lilith-thumbnails-gallery .lilith-nav:active {
        width: 22px !important;
        min-width: 22px !important;
        max-width: 22px !important;
        height: 44px !important;
        min-height: 44px !important;
        padding: 0 !important;
        border: 0 !important;
        outline: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        color: #fff !important;
        text-shadow: 0 1px 4px rgba(0,0,0,.6) !important;
        appearance: none !important;
      }

      body.single-product .lilith-thumbnails-gallery .lilith-prev {
        left: 8px !important;
      }

      body.single-product .lilith-thumbnails-gallery .lilith-next {
        right: 8px !important;
      }

      body.single-product ul.products li.product.content-bg.loop-entry,
      body.single-product .woocommerce ul.products li.product.content-bg.loop-entry,
      body.single-product ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.single-product .woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.single-product ul.products li.product .product-details.content-bg.entry-content-wrap,
      body.single-product .woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
      }

      body.single-product ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.single-product .woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image {
        display: block !important;
        line-height: 0 !important;
        margin-bottom: 0 !important;
        overflow: hidden !important;
      }

      body.single-product ul.products li.product .product-details.content-bg.entry-content-wrap,
      body.single-product .woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: -28px 0 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
      }

      body.single-product ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta),
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta) {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
      }

      body.archive.woocommerce ul.products li.product.content-bg.loop-entry,
      body.tax-product_cat.woocommerce ul.products li.product.content-bg.loop-entry,
      body.archive.woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.tax-product_cat.woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.archive.woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap,
      body.tax-product_cat.woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
      }

      body.archive.woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body.tax-product_cat.woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image {
        display: block !important;
        line-height: 0 !important;
        margin-bottom: 0 !important;
        overflow: hidden !important;
      }

      body.archive.woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap,
      body.tax-product_cat.woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: -8px 0 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta),
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta) {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta,
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        min-height: 22px !important;
        margin-top: 0 !important;
        width: 100% !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link,
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        padding-right: 6px !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .woocommerce-loop-product__title,
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .woocommerce-loop-product__title {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action,
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action {
        flex: 0 0 18px !important;
        width: 18px !important;
        min-width: 18px !important;
        height: 18px !important;
        min-height: 18px !important;
        margin: 0 0 0 4px !important;
      }

      body.archive.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .price,
      body.tax-product_cat.woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .price {
        flex: 0 0 auto !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.content-bg.loop-entry,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.content-bg.loop-entry,
      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product .product-details.content-bg.entry-content-wrap,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product .wpcbm-wrapper.wpcbm-wrapper-archive-image {
        display: block !important;
        line-height: 0 !important;
        margin-bottom: 0 !important;
        overflow: hidden !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product .product-details.content-bg.entry-content-wrap,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product .product-details.content-bg.entry-content-wrap {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: -28px 0 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta),
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .product-details.content-bg.entry-content-wrap > :not(.lilith-archive-meta) {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .lilith-archive-meta,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta,
      body.single-product ul.products li.product.lilith-archive-card .lilith-archive-meta,
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 6px !important;
        min-height: 22px !important;
        margin-top: 0 !important;
        width: 100% !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .lilith-archive-meta,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta {
        gap: 10px !important;
        column-gap: 10px !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        padding-right: 6px !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action {
        flex: 0 0 18px !important;
        width: 18px !important;
        min-width: 18px !important;
        margin-left: 4px !important;
      }

      body:not(.single-product) .elementor-widget-woocommerce-products ul.products li.product.lilith-archive-card .lilith-archive-meta .price,
      body:not(.single-product) .elementor-widget-woocommerce-products .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .price {
        flex: 0 0 auto !important;
        margin-left: 0 !important;
        white-space: nowrap !important;
      }

      body.single-product ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link,
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta > .lilith-archive-title-link {
        order: 1 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        align-self: center !important;
      }

      body.single-product ul.products li.product.lilith-archive-card .lilith-archive-meta .woocommerce-loop-product__title,
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .woocommerce-loop-product__title {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
      }

      body.single-product ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action,
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .lilith-archive-action {
        order: 2 !important;
        flex: 0 0 18px !important;
        width: 18px !important;
        min-width: 18px !important;
        height: 18px !important;
        min-height: 18px !important;
        align-self: center !important;
        margin: 0 !important;
      }

      body.single-product ul.products li.product.lilith-archive-card .lilith-archive-meta .price,
      body.single-product .woocommerce ul.products li.product.lilith-archive-card .lilith-archive-meta .price {
        order: 3 !important;
        flex: 0 0 auto !important;
        display: inline-flex !important;
        align-items: center !important;
        align-self: center !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        text-align: right !important;
      }

/* Lilith immersive loupe restore. */
.lilith-featured-image .lilith-featured-link { cursor: zoom-in !important; }
      .lilith-immersive-loupe-overlay { position: fixed; inset: 0; z-index: 999999; background: rgba(248,248,248,.92); backdrop-filter: blur(10px); display: grid; grid-template-columns: minmax(78px,108px) minmax(0,1fr); gap: 22px; padding: min(4vw,42px); opacity: 0; visibility: hidden; transition: opacity .22s ease, visibility .22s ease; }
      .lilith-immersive-loupe-overlay.is-active { opacity: 1; visibility: visible; }
      .lilith-immersive-loupe-main { position: relative; min-width: 0; min-height: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
      .lilith-immersive-loupe-image { max-width: 100%; max-height: 100%; object-fit: contain; transform: scale(1); transform-origin: center center; transition: transform .16s ease; user-select: none; -webkit-user-drag: none; cursor: zoom-in; }
      .lilith-immersive-loupe-thumbs { display: flex; flex-direction: column; gap: 10px; overflow: auto; scrollbar-width: none; }
      .lilith-immersive-loupe-thumbs::-webkit-scrollbar { display: none; }
      .lilith-immersive-loupe-thumb { appearance: none; border: 1px solid transparent; background: transparent; padding: 0; cursor: pointer; opacity: .68; transition: opacity .18s ease, border-color .18s ease; }
      .lilith-immersive-loupe-thumb.is-active { opacity: 1; border-color: #222; }
      .lilith-immersive-loupe-thumb img { display: block; width: 100%; height: auto; object-fit: cover; }
      .lilith-immersive-loupe-close, .lilith-immersive-loupe-nav, .lilith-immersive-loupe-control { appearance: none; border: 0; border-radius: 0; background: rgba(30,30,30,.12); color: #1f1f1f; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .18s ease; }
      .lilith-immersive-loupe-close:hover, .lilith-immersive-loupe-nav:hover, .lilith-immersive-loupe-control:hover { background: rgba(30,30,30,.2); }
      .lilith-immersive-loupe-close { position: absolute; top: 0; right: 0; width: 44px; height: 44px; font: 300 30px/1 Arial,sans-serif; z-index: 3; }
      .lilith-immersive-loupe-nav { position: absolute; top: 50%; transform: translateY(-50%); width: 46px; height: 52px; font: 300 34px/1 Arial,sans-serif; z-index: 2; }
      .lilith-immersive-loupe-prev { left: 0; }
      .lilith-immersive-loupe-next { right: 0; }
      .lilith-immersive-loupe-toolbar { position: absolute; top: 0; right: 58px; z-index: 3; display: flex; align-items: center; gap: 10px; }
      .lilith-immersive-loupe-control { width: 38px; height: 38px; font: 400 22px/1 Arial,sans-serif; }
      .lilith-immersive-loupe-counter { min-width: 44px; text-align: center; color: #222; font: 500 13px/1 Arial,sans-serif; }
      body.lilith-immersive-loupe-open { overflow: hidden !important; }
      @media (max-width: 780px) { .lilith-immersive-loupe-overlay { grid-template-columns: 1fr; grid-template-rows: minmax(0,1fr) auto; gap: 14px; padding: 18px; } .lilith-immersive-loupe-thumbs { order: 2; flex-direction: row; } .lilith-immersive-loupe-thumb { flex: 0 0 64px; width: 64px; } .lilith-immersive-loupe-nav { display: none; } .lilith-immersive-loupe-toolbar { right: 54px; } }
