photos/theme/static/css/main.css
2025-12-13 20:38:09 +01:00

168 lines
2.9 KiB
CSS

:root {
--textColor: #2a2a2a;
--linkColor: #050094;
--lightColor: #a8a8a8;
--backgroundColor: inherit;
font-size: clamp(1em, 0.9em + .25vw, 1.2em);
line-height: 1.7;
--background-colour: #fff;
--text-colour: #000;
--link-colour: #a4215e;
--accent-soft: #fba1c3;
--accent-softer: #ffedf4;
}
body[theme=dark] {
--background-colour: #372e3e;
--text-colour: #fff;
--link-colour: #ff98f4;
--accent-soft: #8919a8;
--accent-softer: #592051;
}
@media (prefers-color-scheme: dark) {
body:not([theme]), body[theme=dark] {
--textColor: #eaeaea;
--linkColor: #70B7FF;
--lightColor: #a8a8a8;
--backgroundColor: #2a2a2a;
}
body::after {
content: 'dark';
display: none;
}
}
html, body {
margin: 0;
}
body {
margin: 0;
color: var(--text-colour);
font-family: 'system-ui', 'sans';
background-color: var(--background-colour);
min-height: 100vh;
display: flex;
flex-direction: column;
gap: 2rem;
}
*, ::after, ::before {
box-sizing: border-box;
}
a {
color: var(--link-colour);
}
header[role="banner"] {
background-color: var(--accent-softer);
border-bottom: 1px solid var(--accent-soft);
padding: 1rem;
display: flex;
align-items: baseline;
a {
color: inherit;
text-decoration: none;
}
nav {
display: flex;
align-items: baseline;
}
ol.breadcrumb {
display: flex;
flex-wrap: wrap;
align-items: baseline;
padding: 0;
margin: 0;
a {
text-decoration: underline dotted;
}
li {
&:not(:first-of-type) {
margin-left: 1rem;
padding-left: .5rem;
&::marker {
content: '»';
}
}
&:first-of-type {
list-style: none;
}
}
}
h1 {
margin: 0;
font-size: 1em;
font-weight: bold;
}
}
footer {
text-align: center;
font-size: .8rem;
p {
margin: .5rem 0;
}
}
main {
width: 75%;
margin: auto;
flex-grow: 1;
ul {
display: flex;
justify-content: space-evenly;
list-style: none;
padding: 0;
margin: 0;
flex-wrap: wrap;
.thumbnail {
display: flex;
justify-content: center;
align-items: center;
margin: 1em;
width: 250px;
height: 250px;
text-align: center;
}
}
}
main ul .thumbnail img {
max-width: 250px;
max-height: 250px;
}
img:target {
animation-name: highlight;
animation-duration: 3s;
}
@keyframes highlight {
from {
border: #ffffa0 solid 5px
}
to {
border: #ffffa000 solid 5px;
}
}