.gallery-enlarge { position: absolute; right: 16px; top: 16px; z-index: 2; min-height: 44px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--perla-raised); font-size: 14px; }
.gallery-enlarge:hover { border-color: var(--tinta); }
.product-tools { margin-top: 24px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; }
.product-tools .text-link { min-height: 44px; }
.product-link-status { color: var(--texto-2); font-size: 14px; }
.product-link-fallback { flex-basis: 100%; }
.product-link-fallback input { display: block; width: 100%; padding: 12px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--perla-raised); font-size: 14px; }
.info-content > .text-link { margin-top: 20px; }
.image-dialog { width: min(1100px, calc(100vw - 24px)); max-width: none; max-height: calc(100dvh - 24px); margin: auto; padding: 16px; border: 1px solid var(--line); border-radius: 22px; background: var(--perla-raised); color: var(--tinta); }
.image-dialog::backdrop { background: rgba(24, 21, 25, .78); }
.image-dialog__head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-left: 8px; }
.image-dialog__head h2 { font-size: 18px; }
.image-dialog__stage { display: flex; align-items: center; justify-content: center; min-height: 200px; }
.image-dialog img { width: 100%; height: min(68dvh, 780px); object-fit: contain; }
.image-dialog__controls { display: flex; align-items: center; justify-content: center; gap: 24px; padding-block: 8px; }
.image-dialog__controls .icon-button { border: 1px solid var(--line); }
.image-dialog__controls [data-gallery-direction="-1"] .icon { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
