duckquill/sass/_comments.scss

230 lines
4.4 KiB
SCSS
Raw Normal View History

2023-08-31 00:38:44 +00:00
section#comments {
.comment {
display: grid;
column-gap: 1rem;
grid-template-areas:
"avatar name"
"avatar time"
"avatar post"
"...... card"
"...... interactions";
grid-template-columns: min-content;
justify-items: start;
margin: 2rem auto 2rem -1rem;
padding: 1rem;
.avatar-link {
grid-area: avatar;
2023-10-13 00:55:20 +00:00
width: 4rem;
2023-08-31 00:38:44 +00:00
height: 4rem;
position: relative;
.avatar {
2023-10-13 00:55:20 +00:00
all: unset;
display: block;
2023-10-15 23:10:55 +00:00
background-color: var(--fg05);
2023-10-15 23:39:24 +00:00
border-radius: var(--rounded-corner);
2023-08-31 00:38:44 +00:00
box-shadow: var(--shadow);
height: 100%;
width: 100%;
}
&.op::after {
2023-10-15 23:10:55 +00:00
background-color: var(--primary-color);
2023-08-31 00:38:44 +00:00
border-radius: 50%;
bottom: -0.25rem;
2023-08-31 03:51:01 +00:00
color: var(--light2);
2023-08-31 00:38:44 +00:00
content: "";
display: block;
font-size: 1.25rem;
font-weight: bold;
height: 1.5rem;
line-height: 1.5rem;
position: absolute;
right: -0.25rem;
text-align: center;
width: 1.5rem;
}
}
.author {
align-items: center;
cursor: default;
display: flex;
font-weight: bold;
gap: 0.5rem;
grid-area: name;
.instance {
2023-10-15 23:10:55 +00:00
background-color: var(--fg05);
2023-08-31 00:38:44 +00:00
border-radius: 9999px;
2023-10-15 23:10:55 +00:00
color: var(--fg-color);
font-size: 0.8rem;
2023-08-31 00:38:44 +00:00
font-weight: normal;
padding: 0.25rem 0.75rem;
&:hover {
opacity: 0.8;
text-decoration: none;
}
&.op {
2023-10-15 23:10:55 +00:00
background-color: var(--primary-color);
2023-08-31 03:51:01 +00:00
color: var(--light2);
2023-08-31 00:38:44 +00:00
&::before {
content: "";
font-weight: bold;
margin-inline-end: 0.25rem;
margin-inline-start: -0.25rem;
}
}
}
}
time {
@extend small;
font-size: 0.8rem;
2023-08-31 00:38:44 +00:00
grid-area: time;
&.edited::after {
content: " *";
}
}
main {
grid-area: post;
justify-self: stretch;
p:first-child {
margin-top: 0.25rem;
}
p:last-child {
margin-bottom: 0;
}
}
.card {
color: inherit;
grid-area: card;
max-width: 400px;
&:hover {
text-decoration: none;
}
figure {
2023-10-15 23:39:24 +00:00
border-radius: var(--rounded-corner);
2023-10-15 23:10:55 +00:00
background-color: var(--fg05);
2023-08-31 00:38:44 +00:00
box-shadow: var(--shadow);
margin-left: 0;
margin-right: 0;
overflow: hidden;
transition: var(--transition);
img {
2023-10-13 00:55:20 +00:00
all: unset;
display: block;
2023-10-15 23:10:55 +00:00
max-width: 100%;
2023-08-31 00:38:44 +00:00
}
&:hover {
transform: translateY(-0.5rem);
}
}
figcaption {
2023-10-15 23:10:55 +00:00
color: var(--fg-color);
2023-08-31 00:38:44 +00:00
display: grid;
gap: 0.5rem;
margin: 0;
padding: 1rem;
text-align: left;
* {
display: inline-block;
margin: 0;
padding: 0;
2023-10-14 15:31:41 +00:00
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
2023-08-31 00:38:44 +00:00
}
}
}
2023-10-15 23:10:55 +00:00
// hide the card from the shared post
2023-08-31 00:38:44 +00:00
&:first-of-type .card {
display: none;
}
footer {
@extend small;
display: flex;
gap: 0.4rem;
grid-area: interactions;
margin-top: 0.925rem;
.boosts {
cursor: default;
font-weight: 600;
font-size: 0.9rem;
2023-08-31 00:38:44 +00:00
padding: 0.4rem 1rem;
2023-10-15 23:39:24 +00:00
border-radius: var(--rounded-corner);
2023-08-31 00:38:44 +00:00
background-color: var(--orange-bg);
color: var(--orange-fg);
&::before {
color: var(--orange2);
content: "🔁";
margin-inline-end: 0.25rem;
}
}
.faves {
cursor: default;
font-weight: 600;
font-size: 0.9rem;
2023-08-31 00:38:44 +00:00
padding: 0.4rem 1rem;
2023-10-15 23:39:24 +00:00
border-radius: var(--rounded-corner);
2023-08-31 00:38:44 +00:00
background-color: var(--red-bg);
color: var(--red-fg);
&::before {
color: var(--red2);
content: "❤️";
margin-inline-end: 0.25rem;
}
}
}
.emoji {
2023-10-13 00:55:20 +00:00
all: unset;
2023-08-31 00:38:44 +00:00
display: inline;
2023-10-13 00:55:20 +00:00
width: 1.25rem;
2023-08-31 00:38:44 +00:00
height: 1.25rem;
vertical-align: middle;
}
.invisible {
display: none;
}
.ellipsis::after {
content: "";
}
details {
summary {
2023-10-14 15:31:41 +00:00
color: var(--yellow-fg);
2023-08-31 00:38:44 +00:00
}
2023-10-14 15:31:41 +00:00
margin-top: 1rem;
background-color: var(--yellow-bg);
2023-08-31 00:38:44 +00:00
}
}
}