w-lab-app/src/components/domains/portraits/PortraitView/PortraitView.module.scss
2025-10-13 18:32:31 +02:00

116 lines
1.7 KiB
SCSS

.container {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
display: flex;
flex-direction: column;
overflow: hidden;
}
.header {
display: flex;
align-items: center;
gap: 12px;
padding: 16px;
background: var(--background);
position: relative;
flex-shrink: 0;
}
.backButton {
width: 40px;
height: 40px;
border-radius: 50%;
background: #f5f5f5;
display: flex;
align-items: center;
justify-content: center;
border: none;
cursor: pointer;
flex-shrink: 0;
transition: background 0.2s ease;
&:hover {
background: #e0e0e0;
}
&:active {
background: #d0d0d0;
}
}
.title {
flex: 1;
text-align: center;
padding-right: 40px; // Compensate for back button width
}
.imageWrapper {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
padding: 24px;
overflow-y: auto;
gap: 32px;
}
.imageContainer {
position: relative;
width: 100%;
max-width: 500px;
aspect-ratio: 3 / 4;
border-radius: 24px;
overflow: visible;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.imageInner {
position: relative;
width: 100%;
height: 100%;
border-radius: 24px;
overflow: hidden;
}
.image {
object-fit: cover;
object-position: center;
}
.downloadButton {
position: absolute;
right: 8px;
bottom: 8px;
width: 52px;
height: 52px;
background: none;
border: none;
cursor: pointer;
padding: 0;
z-index: 10;
transition: transform 0.2s ease;
&:hover {
transform: scale(1.05);
}
&:active {
transform: scale(0.95);
}
svg {
width: 100%;
height: 100%;
display: block;
}
}
.descriptionWrapper {
width: 100%;
max-width: 500px;
padding: 0;
}