283 lines
No EOL
5.2 KiB
CSS
283 lines
No EOL
5.2 KiB
CSS
:root {
|
||
--soft-color-rgba: rgba(var(--on-surface-color), 0.5);
|
||
|
||
--font-family: "Letter Extended", Roboto Mono, monospace;
|
||
|
||
--line-thickness: 1px;
|
||
|
||
--animation-duration: 0.3s;
|
||
}
|
||
|
||
/* Color scheme */
|
||
:root {
|
||
--primary-color: #03FCBAFF;
|
||
/*--primary-variant-color: */
|
||
/*--secondary-color: */
|
||
/*--secondary-variant-color: */
|
||
|
||
--primary-color-rgb: rgb(3, 252, 186);
|
||
|
||
--background-color: white;
|
||
--surface-color: white;
|
||
--error-color: red;
|
||
--on-primary-color: white;
|
||
--on-secondary-color: black;
|
||
--on-background-color: black;
|
||
--on-surface-color: 0, 0, 0; /* black #000000 */
|
||
--on-error-color: white;
|
||
}
|
||
|
||
@media (prefers-color-scheme: dark) {
|
||
:root {
|
||
--primary-color: #03FCBAFF;
|
||
/*--primary-variant-color: */
|
||
/*--secondary-color: */
|
||
/*--secondary-variant-color: */
|
||
|
||
--background-color: #181a1b;
|
||
--surface-color: black;
|
||
--error-color: red;
|
||
--on-primary-color: black;
|
||
--on-secondary-color: black;
|
||
--on-background-color: white;
|
||
--on-surface-color: 255, 255, 255; /* white #FFFFFF */
|
||
--on-error-color: black;
|
||
}
|
||
}
|
||
|
||
@media (prefers-color-scheme: dark) {
|
||
.icon {
|
||
filter: invert(100%);
|
||
}
|
||
}
|
||
|
||
/* Main styling */
|
||
body {
|
||
font-family: var(--font-family);
|
||
|
||
line-height: 1.4rem;
|
||
|
||
margin: 0;
|
||
padding: 0;
|
||
|
||
min-height: 100vh;
|
||
|
||
display: flex;
|
||
flex-direction: column;
|
||
/* To show elements below each other */
|
||
align-items: center;
|
||
|
||
background-color: var(--background-color);
|
||
}
|
||
|
||
body.scroll-lock {
|
||
/* To disable scrolling when a modal is open */
|
||
overflow: hidden;
|
||
}
|
||
|
||
h1 {
|
||
text-transform: uppercase;
|
||
|
||
/*!* When wrapping to multiple lines, some padding between the lines *!*/
|
||
line-height: 1;
|
||
}
|
||
|
||
h2 {
|
||
text-transform: uppercase;
|
||
|
||
border-bottom: var(--line-thickness) solid;
|
||
padding-bottom: 0.2em;
|
||
margin-bottom: inherit;
|
||
|
||
/* When wrapping to multiple lines, some padding between the lines */
|
||
line-height: 1;
|
||
}
|
||
|
||
a {
|
||
text-underline-offset: 0.2em;
|
||
text-decoration-thickness: var(--line-thickness);
|
||
text-decoration-color: var(--soft-color-rgba);
|
||
}
|
||
|
||
a:link,
|
||
a:visited {
|
||
color: unset;
|
||
}
|
||
|
||
button {
|
||
font-family: var(--font-family), monospace;
|
||
font-size: 1rem;
|
||
|
||
display: block;
|
||
width: 100%;
|
||
padding: 0.5em 1em;
|
||
|
||
background-color: var(--background-color);
|
||
border: var(--line-thickness) solid;
|
||
cursor: pointer;
|
||
|
||
vertical-align: center;
|
||
}
|
||
|
||
.badge {
|
||
max-height: 1em;
|
||
|
||
vertical-align: middle;
|
||
margin-left: 0.3em;
|
||
}
|
||
|
||
.wrapper {
|
||
/* Wrapper to center the content */
|
||
flex: 1;
|
||
display: flex;
|
||
flex-direction: column;
|
||
/* To show elements below each other */
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
|
||
.landing {
|
||
text-align: center;
|
||
}
|
||
|
||
footer {
|
||
max-width: 80%;
|
||
bottom: 2vh;
|
||
padding-bottom: 5%;
|
||
|
||
opacity: 0.6;
|
||
font-size: small;
|
||
|
||
text-align: center;
|
||
}
|
||
|
||
.heart {
|
||
color: #CD001A;
|
||
/* Cherry red */
|
||
}
|
||
|
||
.quote {
|
||
border-left: var(--line-thickness) solid var(--primary-color);
|
||
padding-left: 10px;
|
||
margin: 20px;
|
||
text-align: left;
|
||
}
|
||
|
||
/* Custom details element */
|
||
details {
|
||
padding-left: 2.1em;
|
||
}
|
||
|
||
summary {
|
||
list-style: none;
|
||
}
|
||
|
||
details summary {
|
||
display: flex;
|
||
}
|
||
|
||
details > summary::before {
|
||
content: '[+]';
|
||
cursor: pointer;
|
||
margin-left: -2.1em;
|
||
margin-right: 0.3em;
|
||
}
|
||
|
||
details[open] summary::before {
|
||
content: '[−] ';
|
||
}
|
||
|
||
details[open] {
|
||
/* When open, add some spacing below */
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
details[open] table td {
|
||
min-width: 1.5rem;
|
||
}
|
||
|
||
@media print {
|
||
details,
|
||
details summary::before {
|
||
margin: initial;
|
||
padding: initial;
|
||
}
|
||
|
||
/* Hide the [+] in print */
|
||
details summary::before,
|
||
details[open] summary::before {
|
||
content: '';
|
||
}
|
||
}
|
||
|
||
/* Show icons with links next to each other */
|
||
ul.links {
|
||
list-style: none;
|
||
padding: 0;
|
||
margin: 0;
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
justify-content: center;
|
||
}
|
||
|
||
ul.links li {
|
||
padding: 0 10px;
|
||
}
|
||
|
||
ul.links img {
|
||
width: 40px;
|
||
height: 40px;
|
||
}
|
||
|
||
ul.links a:hover {
|
||
-webkit-filter: opacity(50%);
|
||
-webkit-transition: all 0.5s ease;
|
||
-moz-transition: all 0.5s ease;
|
||
-o-transition: all 0.5s ease;
|
||
-ms-transition: all 0.5s ease;
|
||
transition: all 0.5s ease;
|
||
}
|
||
|
||
/* https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion */
|
||
@media (prefers-reduce-motion: no-preference) {
|
||
/* URL animation on hover in footer
|
||
Draw a line from left to right when hovering over the link */
|
||
footer a {
|
||
text-decoration: none;
|
||
/* Reset to default text color */
|
||
color: inherit;
|
||
position: relative;
|
||
}
|
||
|
||
footer a::before {
|
||
content: '';
|
||
position: absolute;
|
||
/* Height of the line */
|
||
bottom: -2px;
|
||
height: 2px;
|
||
left: 0;
|
||
width: 0;
|
||
background-color: var(--primary-color);
|
||
transition: width 0.3s ease;
|
||
}
|
||
|
||
footer a:hover::before {
|
||
width: 100%;
|
||
}
|
||
}
|
||
|
||
footer>button-collection {
|
||
max-width: 100%;
|
||
}
|
||
|
||
@media (max-width: 600px) {
|
||
footer {
|
||
max-width: 100%;
|
||
}
|
||
}
|
||
|
||
@media (min-height: 100vh) {
|
||
.footer {
|
||
position: static;
|
||
}
|
||
} |