/* Gallery image interactivity styles */
.gallery-image.clickable {
    cursor: pointer !important;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.gallery-image.clickable:hover {
    opacity: 0.8;
    transform: scale(1.02);
}

/* Specifications container styling */
.product-detail-specs-container {
    margin-top: 20px;
    min-height: 100px; /* Prevent layout shift when specs change */
}

.product-detail-specs-container .product-detail-specs {
    animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
    from { 
        opacity: 0; 
        transform: translateY(10px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

/* Enhanced gallery dots to show image titles and IDs */
.product-detail-dot[data-image-id]:hover::after {
    content: attr(title);
    position: absolute;
    bottom: -25px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 4px 8px;
    border-radius: 3px;
    font-size: 11px;
    white-space: nowrap;
    z-index: 1000;
    max-width: 200px;
    text-overflow: ellipsis;
    overflow: hidden;
}

/* Make it more obvious that images are clickable */
.gallery-image.clickable::after {
    content: "Click to view specifications";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 10;
}

.gallery-image.clickable:hover::after {
    opacity: 1;
}

.product-detail-slide {
    position: relative;
}

/* For single image display */
.product-detail-media > .gallery-image.clickable {
    position: relative;
}

/* Product title animation when switching images */
.product-detail-title {
    transition: all 0.3s ease-in-out;
}

/* Admin interface styling for image titles */
.gallery-item-wrapper .image-details {
    background: #fff;
    border-radius: 4px;
    padding: 8px;
}

.gallery-item-wrapper .image-details label {
    color: #333;
    font-size: 12px;
}

.gallery-item-wrapper .image-details input[type="text"] {
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 12px;
}

.gallery-item-wrapper .image-details input[type="text"]:focus,
.gallery-item-wrapper .image-details textarea:focus {
    border-color: #0073aa;
    box-shadow: 0 0 0 1px #0073aa;
    outline: none;
}