.upload-picture-preview {
    width: var(--upload-preview-size, 120px);
    height: var(--upload-preview-size, 120px);
    min-width: var(--upload-preview-size, 120px);
    min-height: var(--upload-preview-size, 120px);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--mud-palette-lines-default, #e0e0e0);
    border-radius: 8px;
    background: #fafafa;
    margin-bottom: 12px;
}

.upload-picture-preview .mud-image,
.upload-picture-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.image-crop-dialog-container {
    max-height: 60vh;
    min-height: 280px;
    background: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
}

.image-crop-dialog-container img {
    display: block;
    max-width: 100%;
    max-height: 60vh;
}

.image-crop-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-top: 12px;
}

.upload-picture-centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    padding: 8px 0 20px;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--mud-palette-lines-default, #e8e8e8);
}

.upload-picture-centered .upload-picture-preview {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 16px;
}

.upload-picture-actions {
    margin-top: 4px;
}

.upload-picture-actions-centered {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    width: 100%;
}

.product-list-photo-clickable {
    cursor: zoom-in;
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.product-list-photo-clickable:hover {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
    transform: scale(1.05);
}

.image-preview-dialog-content {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 200px;
    max-height: 70vh;
    padding: 8px;
}

.image-preview-dialog-img,
.image-preview-dialog-img img {
    max-width: min(400px, 90vw);
    max-height: 65vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
}
