<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/photoswipe@5.3.8/dist/photoswipe.css">
<style>
.preview-img {
max-width: 400px;
max-height: 400px;
width: auto;
height: auto;
object-fit: contain;
}
.card {
margin-bottom: 0.5rem !important;
}
.card-body {
padding: 0.5rem;
}
.row {
margin: 0;
}
.col-lg-8,
.col-lg-4 {
padding: 0.25rem;
}
.mb-3 {
margin-bottom: 0.5rem !important;
}
.mb-4 {
margin-bottom: 0.5rem !important;
}
dl.row {
margin-bottom: 0 !important;
}
.container {
padding: 0.5rem;
}
.magnifier-container {
position: fixed;
right: 20px;
top: 50%;
transform: translateY(-50%);
width: 450px;
height: 900px;
background: #fff;
border: 1px solid #ddd;
border-radius: 4px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
display: none;
z-index: 1000;
}
.magnifier-view {
width: 100%;
height: 33.33%;
position: relative;
overflow: hidden;
border-bottom: 1px solid #ddd;
}
.magnifier-view:last-child {
border-bottom: none;
}
.magnifier-img {
position: absolute;
transform-origin: 0 0;
}
.magnifier-label {
position: absolute;
top: 5px;
left: 5px;
background: rgba(0, 0, 0, 0.7);
color: white;
padding: 2px 6px;
border-radius: 3px;
font-size: 12px;
z-index: 1;
}
.image-container {
position: relative;
display: inline-block;
}
.image-container img {
max-width: 100%;
height: auto;
}
@media (max-width: 576px) {
.preview-img {
max-width: 100%;
height: auto;
}
.magnifier-container {
width: 90%;
height: auto;
left: 5%;
top: auto;
bottom: 10px;
transform: none;
}
}
</style>