/**
 * WP Image Zoom PRO Features Styles
 * Additional CSS for PRO functionality
 */

/* Custom text overlay */
.zoom-custom-text {
    position: absolute;
    pointer-events: none;
    z-index: 10000;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.8);
    font-weight: bold;
    padding: 5px;
    white-space: nowrap;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* Title overlay for zoom window */
.zoom-title-overlay {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    z-index: 10001;
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* Positioning classes for zoom windows */
.zoomContainer[data-position="left_top"] {
    left: auto !important;
    right: calc(100% + 10px);
    top: 0 !important;
}

.zoomContainer[data-position="left_center"] {
    left: auto !important;
    right: calc(100% + 10px);
    top: 50% !important;
    transform: translateY(-50%);
}

.zoomContainer[data-position="left_bottom"] {
    left: auto !important;
    right: calc(100% + 10px);
    bottom: 0 !important;
    top: auto !important;
}

.zoomContainer[data-position="right_top"] {
    left: calc(100% + 10px) !important;
    top: 0 !important;
}

.zoomContainer[data-position="right_center"] {
    left: calc(100% + 10px) !important;
    top: 50% !important;
    transform: translateY(-50%);
}

.zoomContainer[data-position="right_bottom"] {
    left: calc(100% + 10px) !important;
    bottom: 0 !important;
    top: auto !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .zoomContainer[data-position*="left_"],
    .zoomContainer[data-position*="right_"] {
        left: 0 !important;
        right: auto !important;
        top: calc(100% + 10px) !important;
        transform: none !important;
    }
}

/* Click activation indicator */
img[data-zoom-activation="click"] {
    cursor: pointer;
}

img[data-zoom-activation="click"]:hover {
    opacity: 0.8;
}

/* Lens overflow support */
.zoomLens.overflow {
    overflow: visible !important;
}

/* Enhanced zoom window styles */
.zoomWindow {
    border-radius: inherit;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
}

/* Responsive zoom adjustments */
.zoom-responsive-disabled {
    display: none !important;
}

/* Loading state */
.zoom-loading {
    opacity: 0.5;
    pointer-events: none;
}

/* Custom text positioning animations */
.zoom-custom-text {
    transition: opacity 0.3s ease;
}

.zoom-custom-text.fade-in {
    opacity: 1;
}

.zoom-custom-text.fade-out {
    opacity: 0;
}
