/**
 * Digitnet Store Core Theme V2.0.2.7.7
 * Sticky Boundary Controller — gallery/product sticky correction.
 *
 * Critical fix:
 * - The product gallery/side panel must NOT inherit or calculate a top offset
 *   from the sticky header height.
 * - Sticky Header controls only the global header.
 * - Sticky Product Panel controls only product sticky areas.
 * - Product sticky remains normal CSS sticky, so it holds position while scrolling
 *   and naturally releases when the product container ends.
 */

:root{
  --dn-product-sticky-top:18px;
}

/* -----------------------------
   HEADER SCOPE ONLY
------------------------------ */
.dn-home-header-shell[data-dn-sticky-scope="header"][data-dn-sticky-header="enabled"],
.dn-global-header-shell[data-dn-sticky-scope="header"][data-dn-sticky-header="enabled"]{
  position:-webkit-sticky !important;
  position:sticky !important;
  top:var(--wp-admin--admin-bar--height, 0px) !important;
  z-index:9990 !important;
  background:#fff;
  width:100%;
  isolation:isolate;
  box-shadow:0 8px 24px rgba(16,24,40,.08);
}

.dn-home-header-shell[data-dn-sticky-scope="header"][data-dn-sticky-header="disabled"],
.dn-global-header-shell[data-dn-sticky-scope="header"][data-dn-sticky-header="disabled"]{
  position:relative !important;
  top:auto !important;
  z-index:1000 !important;
  box-shadow:none !important;
  will-change:auto !important;
}

/* -----------------------------
   PRODUCT SCOPE ONLY
   Works for both:
   1. Live WooCommerce single product page.
   2. Existing v16.2 preview/product route inside template-parts/static-home.php.
------------------------------ */
#dnProductPage,
#dnProductPage .dn-sp-shell,
#dnProductPage .dn-product-sidebar-layout{
  overflow:visible !important;
}

#dnProductPage{
  --dn-product-sticky-top:18px;
}

@media(min-width:981px){
  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"],
  #dnProductPage.dn-product-sticky-enabled{
    overflow:visible !important;
  }

  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"] .dn-sp-shell,
  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"] .dn-product-sidebar-layout,
  #dnProductPage.dn-product-sticky-enabled .dn-sp-shell,
  #dnProductPage.dn-product-sticky-enabled .dn-product-sidebar-layout{
    overflow:visible !important;
    align-items:start !important;
  }

  /* Main image/gallery column — independent of Sticky Header. */
  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"] .dn-sp-gallery,
  #dnProductPage.dn-product-sticky-enabled .dn-sp-gallery{
    position:-webkit-sticky !important;
    position:sticky !important;
    top:var(--dn-product-sticky-top,18px) !important;
    align-self:start !important;
    height:max-content !important;
    z-index:2 !important;
  }

  /* Product side/buy panel — independent of Sticky Header. */
  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"] .dn-sp-side,
  #dnProductPage.dn-product-sticky-enabled .dn-sp-side,
  #dnProductPage[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"] .dn-sidebar-product,
  #dnProductPage.dn-product-sticky-enabled .dn-sidebar-product,
  .dn-sidebar-product[data-dn-sticky-scope="product"][data-dn-product-sticky="enabled"]{
    position:-webkit-sticky !important;
    position:sticky !important;
    top:var(--dn-product-sticky-top,18px) !important;
    align-self:start !important;
    height:max-content !important;
    z-index:3 !important;
  }

  /* Prevent nested panels from creating double-sticky movement. */
  #dnProductPage[data-dn-product-sticky="enabled"] .dn-sidebar-product .digitnet-sidebar-core-panel,
  #dnProductPage[data-dn-product-sticky="enabled"] .dn-sidebar-product .right_details,
  .dn-sidebar-product[data-dn-product-sticky="enabled"] .digitnet-sidebar-core-panel,
  .dn-sidebar-product[data-dn-product-sticky="enabled"] .right_details{
    position:static !important;
    top:auto !important;
    align-self:auto !important;
    transform:none !important;
  }
}

/* Product sticky OFF disables only product sticky elements. */
#dnProductPage[data-dn-product-sticky="disabled"] .dn-sp-gallery,
#dnProductPage[data-dn-product-sticky="disabled"] .dn-sp-side,
#dnProductPage[data-dn-product-sticky="disabled"] .dn-sidebar-product,
#dnProductPage.dn-product-sticky-disabled .dn-sp-gallery,
#dnProductPage.dn-product-sticky-disabled .dn-sp-side,
#dnProductPage.dn-product-sticky-disabled .dn-sidebar-product,
.dn-sidebar-product[data-dn-product-sticky="disabled"]{
  position:static !important;
  top:auto !important;
  align-self:auto !important;
  height:auto !important;
  transform:none !important;
}

@media(max-width:980px){
  #dnProductPage .dn-sp-gallery,
  #dnProductPage .dn-sp-side,
  #dnProductPage .dn-sidebar-product,
  .dn-sidebar-product{
    position:static !important;
    top:auto !important;
    align-self:auto !important;
    height:auto !important;
    transform:none !important;
  }
}
