1
0
mirror of https://github.com/s427/MARL.git synced 2025-01-31 11:34:46 +01:00
Vincent CLAVIEN 4f55d08740 dark theme
2024-12-28 01:27:59 +01:00

427 lines
7.7 KiB
SCSS

.actor {
position: relative;
&::before {
content: "";
position: absolute;
right: 0;
top: 0;
bottom: 0;
z-index: 1;
width: 2rem;
box-shadow: -1.5rem 0 2rem -2rem #000 inset;
}
a {
color: var(--actor-fg0);
}
h1,
h2,
h3,
h4 {
color: inherit;
}
summary {
padding: 1rem;
svg {
fill: var(--actor-fg1);
}
&:hover,
&:focus {
color: var(--actor-fg0);
svg {
fill: var(--actor-fg0);
}
}
}
details:not(.comment) summary:focus-visible {
outline-offset: -6px;
border-radius: 10px;
}
}
.actors-wrapper {
height: 100%;
display: flex;
flex-direction: column;
justify-content: flex-start;
}
.actor-panel {
flex-grow: 1;
height: 100%;
container-type: inline-size;
display: flex;
flex-direction: column;
justify-content: flex-start;
overflow-y: auto;
overflow-x: hidden;
color: var(--actor-fg1);
background: var(--actor-bg3);
}
.actor-pretty {
flex-grow: 1;
flex-shrink: 0;
padding: 1rem 1rem 2rem;
}
.actor-banner,
.actor-id {
button {
padding: 0;
background: transparent;
box-shadow: none;
border-radius: 0;
cursor: pointer;
&:active {
top: 0;
}
}
}
.actor-banner {
margin: -1rem -1rem 0;
button:focus-visible {
outline-offset: -4px;
border-radius: 8px;
overflow: visible;
img {
border-radius: 0;
}
}
}
.actor-id {
position: relative;
z-index: 1;
display: grid;
grid-template-areas:
"img name"
"img url";
grid-template-columns: 100px 1fr;
grid-template-rows: min-content 1fr;
button {
border-radius: 0.5rem;
}
& > * {
position: relative;
top: -2rem !important;
}
}
.actor-avatar {
grid-area: img;
width: 100px;
border-radius: 0.5rem;
cursor: pointer;
img {
width: 100px;
height: auto;
border-radius: 0.5rem;
}
&.no-avatar {
cursor: default;
}
}
.actor-name {
grid-area: name;
margin: 2.4rem 0 0;
padding-left: 1rem;
font-weight: normal;
}
.actor-url {
grid-area: url;
padding-left: 1rem;
}
.actor-summary {
margin: 2rem 0;
padding: 1rem;
color: var(--actor-fg0);
line-height: 1.3;
background: var(--actor-bg4);
background: radial-gradient(
circle at 200% 150%,
var(--actor-bg3),
var(--actor-bg4)
);
border-radius: 0.5rem;
box-shadow: 0 0.3rem 0.4rem -0.2rem rgba(0, 0, 0, 0.3);
}
.actor-infos {
display: grid;
grid-template-columns: minmax(0, max-content) minmax(50%, 1fr);
margin: 2rem 0;
dl {
grid-column: span 2;
display: grid;
grid-template-columns: subgrid;
}
dt {
padding: 0.5rem 1rem;
font-weight: normal;
}
dd {
padding: 0.5rem 1rem;
color: var(--actor-fg0);
border-left: 1px solid var(--actor-bg4);
}
@container (width < 340px) {
display: block;
dl {
display: block;
padding: 0.5rem 1rem;
border-bottom: 1px solid var(--actor-bg4);
&:last-child {
border-bottom: none;
}
}
dt {
padding: 0;
margin-bottom: 0.5rem;
}
dd {
padding: 0;
border-left: none;
}
}
}
.actor-posts-count {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 2rem 0 0;
gap: 1rem;
.count {
display: block;
color: var(--actor-fg0);
font-size: 1.6em;
font-weight: bold;
}
.total,
.archive {
flex: 0 0 calc(50% - 0.5rem);
padding: 1rem;
text-align: center;
border-radius: 0.5rem;
background-color: rgba(0, 0, 0, 0.25);
@media (forced-colors: active) {
border: 1px dotted CanvasText;
}
}
.comment {
flex: 0 0 100%;
font-size: 0.8em;
summary {
padding: 0;
font-weight: bold;
&:hover,
&:focus-visible {
color: var(--actor-fg0);
}
}
&[open] summary {
color: var(--actor-fg0);
}
p {
margin-top: 0.5rem;
padding-left: 2.05rem;
}
}
}
.actor-raw {
background: var(--actor-bg2);
box-shadow: 0 0.75rem 0.75rem -1rem #000 inset;
.details-content {
padding: 1rem 1rem 2rem;
overflow: auto;
overflow-wrap: break-word;
}
textarea {
color: var(--actor-fg0);
}
}
.actor-likes-bookmarks {
background: var(--actor-bg0);
overflow-wrap: anywhere;
h2 {
display: inline;
font-size: inherit;
font-weight: normal;
}
ul {
font-size: 0.9em;
padding: 0 1rem 2rem;
}
li {
margin: 0 -0.25rem;
padding: 0.25rem 0;
list-style: none;
}
a {
display: inline-block;
padding: 0.25rem;
line-height: 1.1;
text-decoration: none;
&:hover {
text-decoration: underline;
}
.url-instance {
padding-right: 1ch;
color: var(--actor-fg1);
&::after {
padding-left: 1ch;
content: "»";
}
}
.url-actor {
padding-right: 1ch;
color: var(--actor-fg0);
font-weight: bold;
&::after {
padding-left: 1ch;
content: "»";
}
}
.url-post-id {
color: var(--actor-fg1);
}
}
.no-content {
padding: 0 1rem 2rem;
text-align: center;
font-style: italic;
}
}
.actor-likes {
background: var(--actor-bg1);
box-shadow: 0 0.75rem 0.75rem -1rem #000 inset;
}
.actor-bookmarks {
padding-bottom: 1rem;
box-shadow: 0 0.75rem 0.75rem -1rem #000 inset;
}
.multiple-actors {
.actors-tabs {
flex-grow: 0;
flex-shrink: 0;
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
padding: 0.75rem 1rem;
background-color: var(--actor-tabs-bg);
overflow: hidden;
user-select: none;
button {
all: unset;
padding: 0.35rem 0.7rem 0.4rem;
font-size: 0.85em;
font-family: inherit;
border-radius: 0.25rem;
color: #fff;
background: var(--actor-accent2-ok, transparent);
cursor: pointer;
span {
display: inline-block;
padding: 0 0 0.3rem;
border-bottom: 0.1rem solid transparent;
}
&:hover {
span {
border-bottom-color: rgba(255, 255, 255, 0.5);
}
}
&[aria-selected="true"] {
box-shadow: none;
span {
border-bottom-color: #fff;
}
}
&:focus-visible {
outline: 2px solid hsl(var(--actor-hue), 50%, 80%);
outline: 2px solid var(--actor-accent-ok, var(--actor-accent));
outline-offset: 2px;
}
@media (forced-colors: active) {
border: 1px solid ButtonText;
span {
border-bottom-color: Canvas;
}
&[aria-selected="true"] span {
border-bottom-color: Highlight;
}
}
}
}
// color variations
.actor {
*:focus-visible {
outline-color: var(--actor-accent-ok, var(--accent-light));
}
}
.actor summary svg {
fill: var(--actor-fg1-ok, var(--actor-fg1));
}
.actor-panel {
color: var(--actor-fg1-ok, var(--actor-fg1));
background: var(--actor-bg3-ok, var(--actor-bg3));
}
.actor-summary {
background: var(--actor-bg4-ok, var(--actor-bg4));
background: radial-gradient(
circle at 200% 150%,
var(--actor-bg3-ok, var(--actor-bg3)),
var(--actor-bg4-ok, var(--actor-bg4))
);
}
.actor-infos {
dd {
border-left-color: var(--actor-bg4-ok, var(--actor-bg4));
}
@container (width < 340px) {
dl {
border-bottom-color: var(--actor-bg4-ok, var(--actor-bg4));
}
}
}
.actor-raw {
background: var(--actor-bg2-ok, var(--actor-bg2));
}
.actor-likes-bookmarks {
background: var(--actor-bg0-ok, var(--actor-bg0));
}
.actor-likes {
background: var(--actor-bg1-ok, var(--actor-bg1));
}
.actor-likes-bookmarks a {
.url-instance,
.url-post-id {
color: var(--actor-fg1-ok, var(--actor-fg1));
}
}
}