site/web/public/style.css
2024-11-27 15:33:44 -05:00

340 lines
5.5 KiB
CSS

@font-face {
font-family: "mono";
src: url("/public/fonts/HurmitNerdFontMono-Regular.otf");
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "mono";
src: url("/public/fonts/HurmitNerdFontMono-Italic.otf");
font-weight: normal;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "mono";
src: url("/public/fonts/HurmitNerdFontMono-Bold.otf");
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "legible";
src: url("/public/fonts/AtkinsonHyperlegible-Regular.ttf");
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "brand";
src: url("/public/fonts/HelveticaNeueMedium.otf");
font-weight: normal;
font-style: normal;
font-display: swap;
}
:root {
--col-11: #fff;
--col-10: #eee;
--col-06: #999;
--col-05: #808080;
--col-04: #777;
--col-01: #111;
--col-00: #000;
}
* {
all: unset;
display: block;
box-sizing: border-box;
flex-shrink: 0;
font-family: "mono", monospace;
font-size: 14px;
text-rendering: optimizeLegibility;
text-wrap: balance;
color: var(--col-01);
}
*::-webkit-scrollbar {
background-color: #80808000;
width: 5px;
height: 8px;
}
*::-webkit-scrollbar-thumb {
background: #ccc;
}
*::placeholder {
color: var(--col-06);
}
title,
style,
script {
display: none;
}
html {
background-color: var(--col-05);
height: 100dvh;
}
body {
height: 100dvh;
}
#nav {
position: fixed;
left: 0;
right: 0;
display: flex;
justify-content: space-between;
padding: 6px 12px;
width: 100%;
background-color: #80808000;
z-index: 5;
user-select: none;
}
#nav_border {
position: fixed;
left: 0;
right: 0;
top: 42px;
height: 2px;
width: 100%;
z-index: 5;
}
#side {
background-color: #80808000;
z-index: 4;
width: auto;
position: fixed;
left: 0;
top: 0;
height: 100vh;
padding: 6px;
padding-top: calc(44px + 6px);
display: flex;
flex-flow: column;
justify-content: space-between;
gap: 6px;
> div > a {
display: flex;
align-items: center;
text-decoration: none;
/* background-color: #11111166; */
border-radius: 6px;
padding: 6px;
user-select: none;
flex-flow: column;
width: 52px;
gap: 0px;
font-family: "legible";
font-size: 11px;
color: var(--col-10);
> img {
margin: 0;
}
}
> #support {
display: none;
}
> #foot {
display: none;
}
}
#side a.onpage {
background-color: #11111133;
}
#side a:hover {
background-color: #11111166;
transition: 0.166s;
}
#side.open {
> div > a {
flex-flow: row;
width: auto;
gap: 12px;
font-family: "mono";
font-size: 14px;
color: var(--col-01);
}
> #support {
display: flex;
width: 100%;
justify-content: center;
}
> #foot {
display: block;
}
}
#side_border {
z-index: 4;
width: 2px;
position: fixed;
left: 0;
top: 0;
height: 100vh;
transform: translateX(-2px);
}
#main {
height: 100dvh;
width: 100%;
margin: 0 auto;
display: flex;
flex-flow: column;
align-items: center;
/* max-width: 1024px; */
padding-left: 58px;
}
#top_img {
position: absolute;
z-index: -1;
left: 0;
right: 0;
height: 100vh;
}
h1 {
font-family: "mono";
font-weight: normal;
font-size: 64px;
text-align: center;
margin: 12px 6px;
color: var(--col-10);
text-shadow: 1px 1px 1px var(--col-05);
> p {
font-family: "legible";
font-size: 16px;
text-shadow: none;
color: var(--col-01);
background-color: #ffffff80;
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
min-height: 28px;
width: fit-content;
max-width: 420px;
margin: 6px auto;
padding: 12px 21px;
line-height: 22px;
border-radius: 6px;
}
}
h2 {
font-family: "mono";
font-weight: normal;
font-size: 32px;
text-align: center;
margin: 12px 6px;
color: var(--col-10);
}
div,
input {
font-family: inherit;
font-size: inherit;
color: inherit;
}
a,
b,
i,
code,
span,
textarea {
display: inline;
font-family: inherit;
font-size: inherit;
color: inherit;
}
a {
cursor: pointer;
text-decoration: underline;
}
b {
font-weight: bold;
}
i {
font-style: italic;
}
textarea {
display: block;
}
pre {
white-space: pre-wrap;
}
code {
font-family: "DM Mono", monospace;
font-weight: 500;
color: #0000ff;
}
ul {
all: revert;
width: 90%;
margin: 0 auto;
margin-bottom: 1rem;
}
li {
all: revert;
}
img,
video,
canvas {
overflow: hidden;
}
img {
all: revert-layer;
display: block;
margin: 0 auto;
}
.btn {
padding: 6px 12px;
border-radius: 6px;
color: var(--col-10);
outline: 2px solid var(--col-10);
font-weight: bold;
letter-spacing: 1px;
text-shadow: 1px 1px 1px var(--col-05);
text-decoration: none;
background: linear-gradient(
135deg,
rgb(0 255 0 / 33%),
rgb(0 255 0 / 0%) 50%
),
linear-gradient(
225deg,
rgb(255 255 0 / 33%),
rgb(255 255 0 / 0%) 50%
),
linear-gradient(
-45deg,
rgb(255 0 0 / 33%),
rgb(255 0 0 / 0%) 50%
),
linear-gradient(
45deg,
rgb(0 0 255 / 33%),
rgb(0 0 255 / 0%) 50%
);
background-size: 600% 1200%;
background-position: 50% 50%;
transition: 0.333s;
}
.btn:hover {
background-size: 100% 100%;
}
.bob {
animation: bob 0.333s infinite alternate;
}
@keyframes bob {
from {
transform: translateY(0);
}
to {
transform: translateY(-4px);
}
}
/* keep this at the end */
.disabled {
filter: grayscale(100%);
opacity: 0.666;
cursor: not-allowed;
pointer-events: none;
user-select: none;
}