/* Product details panel - contraste em tema claro */
html:not(.dark) .product-details-panel #productName {
    color: #1c1917;
}
html.dark .product-details-panel #productName {
    color: #fff;
}

/* Placeholder styles for product detail page */
/* Keep visual rules minimal; real design CSS provided separately */
/* Scrollbar styling moved here (was inline in designer HTML) */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #221e10; }
::-webkit-scrollbar-thumb { background: rgba(244,192,37,0.35); }
::-webkit-scrollbar-thumb:hover { background: #f4c025; }

.sticky-panel { top: 2rem; height: calc(100vh - 4rem); }

.product-gallery img { transition: transform 0.5s ease; }
.product-gallery .group:hover img { transform: scale(1.02); }

/* Ensure images fill their containers */
.object-cover { object-fit: cover; }

/* Add to Cart Animation */
@keyframes flyToCart {
    0% { transform: scale(1) translate(0, 0); opacity: 1; }
    20% { transform: scale(1.1) translate(0, -20px); opacity: 0.9; }
    100% { transform: scale(0.1) translate(var(--target-x), var(--target-y)); opacity: 0; }
}

.anim-fly-item {
    position: fixed;
    z-index: 9999;
    pointer-events: none;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(212,175,55,0.4);
    animation: flyToCart 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

#jsAddToBag.loading {
    pointer-events: none;
    opacity: 0.8;
}

#jsAddToBag.loading span:first-child {
    display: none;
}

#jsAddToBag.loading::after {
    content: "Adicionando...";
}

/* Acordeão nativo <details> (página do produto) */
details.product-accordion summary {
    list-style: none;
}
details.product-accordion summary::-webkit-details-marker {
    display: none;
}
details.product-accordion[open] .product-accordion__chevron {
    transform: rotate(180deg);
}

/* Lightbox — % + flex quebrava em imagens muito altas; vh/dvh + min-height:0 encaixa na tela */
.lightbox-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    background: rgba(0, 0, 0, 0.85);
    overscroll-behavior: contain;
}

.lightbox-modal__stage {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding:
        max(1.25rem, env(safe-area-inset-top, 0px))
        max(4.5rem, env(safe-area-inset-right, 0px))
        max(1.25rem, env(safe-area-inset-bottom, 0px))
        max(4.5rem, env(safe-area-inset-left, 0px));
    min-height: 0;
}

.lightbox-modal__img {
    display: block;
    margin: auto;
    width: auto;
    height: auto;
    max-width: min(92vw, 100%);
    max-height: 85vh;
    max-height: 85dvh;
    min-width: 0;
    min-height: 0;
    object-fit: contain;
    object-position: center;
    flex-shrink: 1;
    align-self: center;
    box-sizing: border-box;
    border: 3px solid #d4af37;
    box-shadow: 0 0 40px rgba(212, 175, 55, 0.5);
}

