Files
fluxer/fluxer_app/src/features/emoji/components/stickers/StickerGridItem.module.css
T

130 lines
2.4 KiB
CSS

/* SPDX-License-Identifier: AGPL-3.0-or-later */
.container {
position: relative;
display: flex;
flex-direction: column;
gap: var(--sticker-card-gap, 0.75rem);
height: 100%;
min-height: 0;
border-radius: 0.5rem;
border: 0.0625rem solid var(--background-header-secondary);
padding: var(--sticker-card-padding, 0.75rem);
transition: box-shadow 0.15s ease-in-out;
cursor: pointer;
}
.container:hover {
box-shadow:
0 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1),
0 0.125rem 0.25rem -0.0625rem rgba(0, 0, 0, 0.06);
}
.stickerWrapper {
display: flex;
flex: 1 1 auto;
width: 100%;
max-height: 100%;
max-width: 100%;
min-height: 0;
aspect-ratio: 1 / 1;
align-items: center;
justify-content: center;
}
.stickerImage {
height: 100%;
width: 100%;
object-fit: contain;
}
.content {
display: flex;
flex-direction: column;
gap: 0.25rem;
min-height: 0;
}
.header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.5rem;
min-width: 0;
}
.stickerName {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
min-width: 0;
font-weight: 600;
font-size: 0.875rem;
}
.authorInfo {
margin-top: 0.25rem;
display: flex;
align-items: center;
gap: 0.375rem;
}
.authorAvatar {
height: 1rem;
width: 1rem;
border-radius: 50%;
}
.authorName {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--text-primary-muted);
font-size: 0.75rem;
line-height: 1rem;
max-height: 1rem;
}
.actions {
position: absolute;
top: 0.5rem;
right: 0.5rem;
display: flex;
gap: 0.25rem;
opacity: 0;
transition: none;
}
.container:hover .actions {
opacity: 1;
}
.actionButton {
composes: item roundItem from '@app/features/ui/action_toolbar/ActionToolbar.module.css';
--action-toolbar-item-size: 1.75rem;
--action-toolbar-item-border: var(--background-header-secondary);
--action-toolbar-item-background: var(--background-primary);
--action-toolbar-item-color: var(--text-primary-muted);
box-shadow:
0 0.25rem 0.375rem -0.0625rem rgba(0, 0, 0, 0.1),
0 0.125rem 0.25rem -0.0625rem rgba(0, 0, 0, 0.06);
transition: none;
}
.actionButton:hover {
border-color: var(--brand-primary);
background-color: var(--brand-primary);
color: var(--brand-primary-fill);
}
.deleteButton:hover {
border-color: var(--status-danger);
background-color: var(--status-danger);
color: white;
}
.icon {
height: 0.75rem;
width: 0.75rem;
}