ben.wiegand.pw/www/style.css
2024-09-10 08:16:35 -07:00

402 lines
6.1 KiB
CSS

body {
margin-left: 0;
margin-right: 0;
margin-top: 0;
margin-bottom: 0;
font-family: sans-serif;
background-color: black;
color: white;
}
a {
color: white;
text-decoration-color: white;
}
#header-bg1 {
animation: color-change-1 30s linear .5s infinite normal none;
}
#header-bg2 {
background-color: #29BDBD; /* fall-back */
animation: color-change-2 30s linear .5s infinite normal none;
}
.header-bg {
position: fixed;
width: 100%;
height: 100%;
top:0;
left:0;
z-index: -1;
}
.header-section {
animation: fly-down .5s ease-out 0s 1 normal none;
display: flex;
flex-direction: row;
align-items: center;
/* align-content: center; */
justify-content: center;
flex-wrap: wrap-reverse;
min-height: 25vh;
width: 100%;
}
.header-picture {
align-self: end;
}
.header-picture img {
width: calc(165200px/596);
min-width: 277px;
height: 200px;
margin-top: 30px;
vertical-align: middle;
}
.blank-item {
width: calc(165200px/596);
min-width: 277px;
}
.title-thingy {
flex-basis: content;
text-align: center;
margin: 30px;
}
.title-thingy h2 {
font-family: monospace;
}
.general-content {
background-color: #171717;
overflow: auto;
padding-left: 50px;
padding-right: 50px;
padding-bottom: 60px;
padding-top: 20px;
}
.general-content h2 {
margin-top: 50px;
}
.general-content h3 {
margin-top: 25px;
margin-bottom: 20px;
}
.projects-section {
/* empty for now */
}
.project details {
margin-top: 16px;
margin-bottom: 16px;
}
.project details summary {
cursor: pointer;
}
.spam-manifesto {
text-align: center;
border-style: groove;
padding-left: 5%;
padding-right: 5%;
padding-top: 2%;
padding-bottom: 2%;
border-color: red;
}
.spam-manifesto a {
color: red;
text-decoration: none;
}
.poem {
text-align: start;
}
.poem p {
width:fit-content;
margin-left: auto;
margin-right: auto;
}
.spam-sandwich {
display: none;
}
.text-section {
margin-left: auto;
margin-right: auto;
max-width: 900px;
}
.sub-section details p {
animation: fly-down .5s ease-out 0s 1 normal none;
}
footer {
background-color: black;
display: flex;
flex-direction: column;
align-items: center;
align-content: center;
justify-content: center;
min-height: 20vh;
width: 100%;
}
h1 {
font-size: xx-large;
}
h2 {
font-size: xx-large;
}
h3 {
font-size: x-large;
}
.filler-div {
min-height: 90vh;
}
.double-screenshot {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
.double-screenshot .thumbnail {
display: flex;
align-items: center;
justify-content: center;
width: 444px;
max-width: calc(min(450px,calc(100vw - 100px)));
max-height: 253.125px;
overflow: hidden;
margin: 3px;
cursor: pointer;
}
.double-screenshot .thumbnail img {
min-width: calc(min(450px,calc(100vw - 100px)));
min-height: calc(min(450px,calc(100vw - 100px)) * 0.5625);
}
.double-screenshot .no-crop img {
min-width: auto;
max-width: calc(min(450px,calc(100vw - 100px)));
min-height: auto;
max-height: 253.125px;
}
.project-image {
max-width: 100%;
}
.project-image input {
display: none;
}
.modal {
display: none;
}
input:checked + .modal {
animation: fly-forward .5s ease-out 0s 1 normal none;
display: flex;
justify-content: safe center;
align-items: safe center;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #000000CC;
overflow: auto;
}
.lazy-image {
display: block;
min-width: 90vw;
min-height: 90vh;
background-size: contain;
background-repeat: no-repeat;
background-position: center;
cursor: zoom-in;
}
input:checked + .lazy-image {
cursor: zoom-out;
min-width: 200vw;
min-height: 200vh;
scroll-snap-align: center;
}
input:checked + .lazy-image:active {
cursor: grabbing;
}
body:has(.project-image > input:checked) {
overflow: hidden;
}
.modal .close {
cursor: pointer;
position: fixed;
top: 0;
right: 0;
margin: 20px;
width: 60px;
height: 60px;
background-image: url('/img/modal-close.svg');
background-size: 30px 30px;
background-position: center;
background-repeat: no-repeat;
}
.modal-bg {
position: fixed;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.text-section > * {
animation: fly-up .5s ease-out 0s 1 normal none;
}
.footer-logo {
width: 50px;
height: 50px;
}
#cursor-thing {
position: relative;
cursor: pointer;
width: 50px;
height: 50px;
background-image: url('/img/duck-sprite.webp');
z-index: 1;
}
@keyframes fly-up {
0% {
transform: translateY(70%);
opacity: 0%;
}
40% {
transform: translateY(0%);
opacity: 70%;
}
100% {
opacity: 100%;
}
}
@keyframes fly-down {
0% {
transform: translateY(-70%);
opacity: 0%;
}
20% {
transform: translateY(0%);
opacity: 70%;
}
100% {
opacity: 100%;
}
}
@keyframes fly-forward {
0% {
transform: scale(0);
opacity: 0%;
}
20% {
transform: scale(1);
opacity: 70%;
}
100% {
opacity: 100%;
}
}
@keyframes color-change-1 {
0% {
background-color: #29BDBD;
}
25% {
background-color: #197293;
}
75% {
background-color: #197293;
}
100% {
background-color: #29BDBD;
}
}
@keyframes color-change-2 {
0% {
background: linear-gradient(90deg, #00000000 0%, #29BDBD 100%);
}
25% {
opacity: 100%;
}
49% {
background: linear-gradient(90deg, #00000000 0%, #29BDBD 100%);
opacity: 0%;
}
50% {
background: linear-gradient(90deg, #29BDBD 0%, #00000000 100%);
opacity: 0%;
}
75% {
opacity: 100%;
}
100% {
background: linear-gradient(90deg, #29BDBD 0%, #00000000 100%);
}
}