gomesite/css/gomepage.css

452 lines
8.4 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

html {
color: #323a42;
background-color: #efe5d7;
height: 100%;
font-family: 'Palatino Linotype', Lora, serif;
font-size: 1.125em;
background-position: center;
background-attachment: fixed;
background-size: cover;
position: relative;
overflow-x: hidden;
}
html:before {
content: '';
display: block;
height: 100vh;
width: 100vw;
background-color: #efe5d7;
transition: opacity 2000ms 300ms;
position: absolute;
top: 0;
z-index: -1;
}
html.loaded:before {
opacity: 0;
}
header, main, .gome-img {
transition: border-color 2000ms 300ms;
}
html.loaded header, html.loaded main, html.loaded .gome-img {
border-color: #323a42;
}
html.loaded header {
z-index: 1;
}
body {
margin: 0;
min-height: 100%;
display: grid;
grid-template-columns: 1fr min-content;
grid-template-rows: 1fr auto min-content;
line-height: 1.2;
}
*::selection {
background: #eab77544;
}
header {
display: flex;
flex-direction: column;
align-items: start;
grid-column: 2;
grid-row: 1 / span 2;
width: min-content;
height: min-content;
overflow: hidden;
background-color: #efe5d7;
padding-left: 2em;
padding-bottom: 2em;
border-bottom: 2px solid #efe5d7;
border-left: 2px solid #efe5d7;
border-radius: 0 0 0 1em;
}
main {
display: flex;
flex-direction: column;
align-items: start;
grid-column: 1;
grid-row: 1;
padding: 1em;
background-color: #efe5d7;
width: fit-content;
max-width: 70ch;
height: fit-content;
border-right: 2px solid #efe5d7;
border-bottom: 2px solid #efe5d7;
border-radius: 0 0 1em 0;
margin-right: 0.5em;
margin-bottom: 0.5em;
}
footer {
display: flex;
grid-column: 1 / span 2;
grid-row: 2 / span 2;
pointer-events: none;
margin-right: 0.5em;
}
.title-box, h1, h2, h3, h4, h5, h6 {
font-weight: normal;
}
h1, h2, h3, h4, h5, h6 {
font-family: Optima, 'Palatino Linotype', Lora, serif;
}
h2, h3 {
margin: 0.5em 0;
}
.title-box {
position: relative;
border: 2px solid #323a42;
border-top: none;
border-right: none;
font-size: 48px;
height: 3em;
width: 10em;
background-color: #efe5d7;
}
.title-box .title {
background-color: inherit;
position: absolute;
bottom: -13px;
padding: 0 0.25em 0 0.25em;
user-select: none;
}
nav {
position: relative;
display: flex;
flex-direction: column;
width: 100%;
/* this counters the left offset, but adds no real padding */
padding-right: 1rem;
left: 1rem;
right: 0;
border-bottom: 2px solid #323a42;
}
a {
color: #323a42;
}
nav a {
margin: 0.25em 0.75em 0.25em 0;
padding: 0.25em;
position: relative;
left: -0.25em;
color: #323a42;
text-decoration: none;
line-height: 1.2;
border-radius: 2px;
}
nav a:first-child {
margin-top: 1em;
}
nav a:last-child {
margin-bottom: 1em;
}
a:hover, a:focus {
color: #6d747a;
outline: 0;
}
a:focus-visible {
outline: 1px dashed #beb0b1;
}
nav a .link-title {
font-weight: bold;
}
nav a .link-description::before {
font-weight: normal;
content: '— ';
}
nav a.new .link-title::after {
content: '*';
color: #984624;
}
nav a.new:hover .link-title::after, nav a.new:focus .link-title::after {
color: #bf8e7c;
}
@keyframes fade-in {
from { opacity: 0 }
to { opacity: 1 }
}
.image-credit {
padding: 4.5px;
position: relative;
font-style: italic;
text-decoration: none;
color: #323a42;
text-decoration: none;
line-height: 1.2;
border-radius: 2px;
font-size: 15px;
animation: fade-in 2000ms ease 300ms backwards;
}
header .image-credit {
margin: 9px 0 -16px 13.5px;
}
main .image-credit {
margin: 9px 0 0 -4.5px;
display: none;
}
article {
width: 100%;
}
.gome-img {
user-select: none;
border-radius: 0 1em 0 0;
border-top: 2px solid #efe5d7;
border-right: 2px solid #efe5d7;
}
.gome-img[src^='./img/desktop'] {
width: auto;
max-width: min(1280px, 100%);
}
.gome-img[src^='./img/tablet'] {
display: none;
max-width: 100%;
}
.gome-img[src^='./img/mobile'] {
display: none;
max-width: 100%;
}
#wotd h3 {
font-family: Optima, 'Palatino Linotype', Lora, serif;
font-size: 1.2em;
margin: 0 0 0.5em 0;
}
#wotd .definiendum {
font-size: 1.5em;
font-weight: bold;
margin-bottom: 0.5em;
}
#wotd time, #wotd .pronunciation {
display: block;
margin-bottom: 1em;
}
.pronunciation:not(:empty)::before, .pronunciation:not(:empty)::after {
content: '';
}
#wotd ul {
margin: 0 0 1em 0;
padding-left: 0.5em;
list-style: none;
}
#wotd li {
margin-bottom: 0.25em;
}
#status:not(.loaded) *, #wotd:not(.loaded) * {
margin: 0;
}
#statuscafe {
padding-left: 0.5em;
margin-bottom: 1em;
}
#statuscafe-username a {
margin: -0.15em;
padding: 0.15em;
border-radius: 2px;
}
#listening {
width: 100%;
}
.listening-item {
display: grid;
grid-template-columns: calc(36px + 0.5em) auto;
align-items: center;
justify-items: start;
border-radius: 4px;
padding: 0.25em 0.25em;
margin: -0.25em -0.25em 0.25em -0.25em;
cursor: default;
transition: background-color 100ms;
}
.listening-item:not(.all-loaded):last-child:hover {
background-color: #eab77522;
}
.listening-item.now-playing {
border: 2px solid #984624;
}
.listening-item.now-playing .track-title, .listening-item.now-playing .track-artist {
font-weight: bold;
}
.listening-item img {
/* accounts for border */
margin: 1px calc(0.5em + 1px) 1px 1px;
}
.listening-item img.loaded {
margin: 0 0.5em 0 0;
border-radius: 2px;
border: 1px solid #323a42;
}
.listening-item .listening-track {
line-height: 36px;
max-width: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
a.journal-link {
display: grid;
text-decoration: none;
grid-template-columns: auto auto 1fr;
margin: -0.25em;
margin-right: 0;
padding: 0.25em;
margin-bottom: 1em;
padding-right: 0;
border: 1px solid #323a42;
box-shadow: 1px 1px #323a42;
border-radius: 3px;
}
a.journal-link:hover, a.journal-link:focus {
outline: 0;
border-color: #6d747a;
box-shadow: 2px 2px #6d747a;
}
a.journal-link:hover time, a.journal-link:focus time {
color: #6d747a;
}
a.journal-link h3 {
font-family: 'Palatino Linotype', Lora, serif;
font-weight: bold;
margin: 0 0.5em 0 0;
}
a.journal-link p {
grid-column: 1 / span 2;
margin: 0.5em 5px 0.5em 0;
}
a.journal-link .line {
grid-column: span 2;
align-self: end;
bottom: 6px;
}
a.journal-link time {
grid-column: span 2;
}
a.journal-link time + p {
margin-top: 5px;
}
time {
font-size: 0.9em;
color: #4E5458;
font-style: italic;
font-variant-numeric: oldstyle-nums;
}
a.journal-link + a.journal-link {
margin-top: 1em;
}
.line {
display: inline-block;
background-color: #323a42;
height: 2px;
position: relative;
}
.line.stop-0 {
background-color: #984624;
}
.line.stop-1 {
background-color: #ad5f1e;
}
.line.stop-2 {
background-color: #c59506;
}
.line.stop-3 {
background-color: #c8b500;
}
.line.stop-4 {
background-color: #8ea530;
}
.line.stop-5 {
background-color: #4b7b52;
}
.line.stop-6 {
background-color: #426153;
}
.music-box {
margin-bottom: 0.5em;
display: flex;
align-items: center;
width: fit-content;
padding: 2px 4px 2px 2px;
border-radius: 3px;
border: 1px solid #323a42;
user-select: none;
cursor: pointer;
box-shadow: 1px 1px #323a42;
}
.music-box:hover, .music-box:focus {
outline: 0;
color: #6d747a;
border-color: #6d747a;
box-shadow: 2px 2px #6d747a;
}
.music-box svg {
margin-right: 2px;
}
.music-box.playing svg.play {
display: none;
}
.music-box.playing svg.pause {
display: block;
}
.music-box svg.pause {
display: none;
}
#tagline {
margin: 0 0 0.5em 0;
}
@media only screen and (max-width: 960px) {
body {
grid-template-rows: min-content auto min-content;
}
header {
grid-column: 1 / span 2;
grid-row: 1;
width: 100%;
padding: 0;
border: none;
border-color: #efe5d7;
border-radius: 0;
}
header .image-credit {
display: none;
}
main .image-credit {
display: initial;
}
main {
grid-row: 2;
}
footer {
margin-top: 2em;
grid-row: 3;
}
.title-box {
border-left: none;
height: 1em;
width: 100%;
}
.title-box:hover {
cursor: initial;
border-color: #323a42;
color: #323a42;
}
.image-credit {
opacity: 1;
pointer-events: all;
}
.gome-img[src^='./img/desktop'] {
display: none;
}
.gome-img[src^='./img/tablet'] {
display: initial;
}
}
@media only screen and (max-width: 640px) {
footer {
align-items: flex-end;
}
.gome-img[src^='./img/tablet'] {
display: none;
}
.gome-img[src^='./img/mobile'] {
display: initial;
}
}