313 lines
5.5 KiB
CSS
313 lines
5.5 KiB
CSS
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-ExtraLight.woff2') format('woff2');
|
||
|
font-weight: 200;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-Light.woff2') format('woff2');
|
||
|
font-weight: 300;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-Medium.woff2') format('woff2');
|
||
|
font-weight: 400;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-Regular.woff2') format('woff2');
|
||
|
font-weight: 500;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-SemiBold.woff2') format('woff2');
|
||
|
font-weight: 600;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-Bold.woff2') format('woff2');
|
||
|
font-weight: 700;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-ExtraBold.woff2') format('woff2');
|
||
|
font-weight: 800;
|
||
|
}
|
||
|
|
||
|
@font-face {
|
||
|
font-family: League Spartan;
|
||
|
src: url('/static/fonts/league-spartan/LeagueSpartan-Black.woff2') format('woff2');
|
||
|
font-weight: 900;
|
||
|
}
|
||
|
|
||
|
@media screen {
|
||
|
body {
|
||
|
margin: 0;
|
||
|
}
|
||
|
|
||
|
@media (prefers-color-scheme: dark) {
|
||
|
* {
|
||
|
color: #e8e8e8;
|
||
|
}
|
||
|
|
||
|
body {
|
||
|
background-color: #0b0c0d;
|
||
|
}
|
||
|
|
||
|
header {
|
||
|
border-bottom-color: #b83a33;
|
||
|
}
|
||
|
|
||
|
h1,
|
||
|
h2,
|
||
|
h3,
|
||
|
h4,
|
||
|
h5,
|
||
|
h6 {
|
||
|
color: white;
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
color: white;
|
||
|
transition: color .1s ease-in-out;
|
||
|
}
|
||
|
|
||
|
a:hover {
|
||
|
color: #b83a33;
|
||
|
transition: color .2s ease-in-out;
|
||
|
}
|
||
|
|
||
|
img.logo {
|
||
|
--c: #dedede;
|
||
|
}
|
||
|
|
||
|
nav#menu ul li:not(:first-child) {
|
||
|
border-left: 1px solid #1f1f1f;
|
||
|
}
|
||
|
|
||
|
nav#menu ul li:not(:last-child) {
|
||
|
border-right: 1px solid #1f1f1f;
|
||
|
}
|
||
|
|
||
|
a.external {
|
||
|
border-color: #1f1f1f;
|
||
|
box-shadow: 0px 5px 10px 2px #000000a0;
|
||
|
}
|
||
|
|
||
|
a.external:hover {
|
||
|
border-color: #1f1f1f;
|
||
|
box-shadow: 0px 5px 15px 4px #000000c0;
|
||
|
background-color: #e8e8e840;
|
||
|
}
|
||
|
|
||
|
a.external:active {
|
||
|
border-color: #1f1f1f;
|
||
|
box-shadow: 0px 5px 20px 2px #000000e0;
|
||
|
background-color: #e8e8e8a0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
@media (prefers-color-scheme: light) {
|
||
|
* {
|
||
|
color: #252525;
|
||
|
}
|
||
|
|
||
|
body {
|
||
|
background-color: #fffcf6;
|
||
|
}
|
||
|
|
||
|
header {
|
||
|
border-bottom-color: #ed5c54;
|
||
|
}
|
||
|
|
||
|
h1,
|
||
|
h2,
|
||
|
h3,
|
||
|
h4,
|
||
|
h5,
|
||
|
h6 {
|
||
|
color: black;
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
color: black;
|
||
|
transition: color .1s ease-in-out;
|
||
|
}
|
||
|
|
||
|
a:hover {
|
||
|
color: #c8251c;
|
||
|
transition: color .2s ease-in-out;
|
||
|
}
|
||
|
|
||
|
img.logo {
|
||
|
--c: #1d1d1d;
|
||
|
}
|
||
|
|
||
|
nav#menu ul li:not(:first-child) {
|
||
|
border-left: 1px solid #f0eade;
|
||
|
}
|
||
|
|
||
|
nav#menu ul li:not(:last-child) {
|
||
|
border-right: 1px solid #f0eade;
|
||
|
}
|
||
|
|
||
|
a.external {
|
||
|
border-color: #f0eade;
|
||
|
box-shadow: 0px 5px 10px 2px #0000000f;
|
||
|
}
|
||
|
|
||
|
a.external:hover {
|
||
|
border-color: #bebbb4;
|
||
|
box-shadow: 0px 5px 15px 2px #00000040;
|
||
|
background-color: #615e5e40;
|
||
|
}
|
||
|
|
||
|
a.external:active {
|
||
|
border-color: #696763;
|
||
|
box-shadow: 0px 5px 20px 2px #00000060;
|
||
|
background-color: #504e4ea0;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
* {
|
||
|
box-sizing: border-box;
|
||
|
font-size: 18px;
|
||
|
}
|
||
|
|
||
|
body {
|
||
|
font-family: League Spartan, sans-serif;
|
||
|
}
|
||
|
|
||
|
a:not(:hover) {
|
||
|
text-decoration: none;
|
||
|
}
|
||
|
|
||
|
a:hover {
|
||
|
text-decoration-style: solid;
|
||
|
}
|
||
|
|
||
|
body {
|
||
|
display: flex;
|
||
|
flex-direction: column;
|
||
|
min-height: 100vh;
|
||
|
}
|
||
|
|
||
|
header {
|
||
|
margin-top: auto;
|
||
|
width: 100%;
|
||
|
height: 100%;
|
||
|
display: flex;
|
||
|
flex-direction: column;
|
||
|
align-items: center;
|
||
|
justify-content: center;
|
||
|
gap: 20px;
|
||
|
padding-bottom: 4vh;
|
||
|
border-bottom-width: 8px;
|
||
|
border-bottom-style: solid;
|
||
|
}
|
||
|
|
||
|
main {
|
||
|
margin-bottom: auto;
|
||
|
width: 100%;
|
||
|
height: 100%;
|
||
|
display: flex;
|
||
|
flex-direction: column;
|
||
|
align-items: center;
|
||
|
justify-content: center;
|
||
|
gap: 20px;
|
||
|
padding-top: 4vh;
|
||
|
}
|
||
|
|
||
|
img.logo {
|
||
|
max-width: 90vw;
|
||
|
max-height: 120px;
|
||
|
|
||
|
--t: 4px;
|
||
|
|
||
|
padding: calc(18px + var(--t));
|
||
|
|
||
|
background:
|
||
|
conic-gradient(from 180deg at top var(--t) right var(--t),
|
||
|
#0000 25%,
|
||
|
var(--c) 0) var(--i, 200%) 0 /200% var(--i, var(--t)) no-repeat,
|
||
|
conic-gradient(at bottom var(--t) left var(--t),
|
||
|
#0000 25%,
|
||
|
var(--c) 0) 0 var(--i, 200%)/var(--i, var(--t)) 200% no-repeat;
|
||
|
transition: background .3s, background-position .3s .3s;
|
||
|
}
|
||
|
|
||
|
img.logo:hover {
|
||
|
--i: 100%;
|
||
|
transition: background .3s, background-size .3s .3s;
|
||
|
}
|
||
|
|
||
|
nav#menu {
|
||
|
display: block;
|
||
|
overflow-x: auto;
|
||
|
max-width: 100%;
|
||
|
}
|
||
|
|
||
|
nav#menu ul {
|
||
|
display: flex;
|
||
|
flex-direction: row;
|
||
|
justify-content: stretch;
|
||
|
list-style-type: none;
|
||
|
padding: 1em;
|
||
|
}
|
||
|
|
||
|
nav#menu ul li {
|
||
|
padding: 1em;
|
||
|
text-wrap: nowrap;
|
||
|
}
|
||
|
|
||
|
a.external {
|
||
|
text-align: center;
|
||
|
padding: 1em;
|
||
|
transition:
|
||
|
border-color .1s ease-in-out,
|
||
|
background-color 1s ease-out -.1s,
|
||
|
box-shadow .5s ease-out -.1s;
|
||
|
border-width: 2px;
|
||
|
border-style: solid;
|
||
|
}
|
||
|
|
||
|
a.external>span.external-text {
|
||
|
display: inline-block;
|
||
|
position: relative;
|
||
|
transition: ease .5s;
|
||
|
text-wrap: nowrap;
|
||
|
}
|
||
|
|
||
|
a.external>span.external-text::after {
|
||
|
content: '\00BB';
|
||
|
position: absolute;
|
||
|
opacity: 0;
|
||
|
right: -1em;
|
||
|
transition: ease .5s;
|
||
|
}
|
||
|
|
||
|
a.external:hover>span.external-text {
|
||
|
padding-right: 1em;
|
||
|
}
|
||
|
|
||
|
a.external:hover>span.external-text::after {
|
||
|
opacity: 1;
|
||
|
right: 0;
|
||
|
}
|
||
|
|
||
|
span.email-me::before {
|
||
|
content: '\1F4E7';
|
||
|
margin-right: .5em;
|
||
|
}
|
||
|
|
||
|
span.visit-log::before {
|
||
|
content: '\1F4DC';
|
||
|
margin-right: .5em;
|
||
|
}
|