494 lines
8.3 KiB
CSS
494 lines
8.3 KiB
CSS
html {
|
|
color: #E0E0E0;
|
|
background-color: #1A1A1A;
|
|
margin: 0;
|
|
padding: 0;
|
|
padding-top: 0;
|
|
padding-bottom: 0;
|
|
font-family: "Inter", "Noto Sans JP", "Noto Sans TC", "Noto Sans SC", sans-serif;
|
|
font-size: 12pt;
|
|
font-optical-sizing: auto;
|
|
font-weight: 200;
|
|
font-style: normal;
|
|
}
|
|
body {
|
|
margin: 0;
|
|
min-height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
header {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
padding: 24px;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 16px;
|
|
z-index: 10;
|
|
overflow: hidden;
|
|
}
|
|
header::before {
|
|
content: '';
|
|
position: absolute;
|
|
inset: 0;
|
|
z-index: -1;
|
|
backdrop-filter: blur(12px);
|
|
background: linear-gradient(to bottom, #1A1A1A 0%, transparent 50%), #1A1A1A80;
|
|
mask-image: linear-gradient(to bottom,
|
|
black 0%,
|
|
black 50%,
|
|
transparent 100%
|
|
);
|
|
}
|
|
header > *:first-child {
|
|
margin-top: 24px;
|
|
}
|
|
main {
|
|
view-transition-name: main-content;
|
|
padding: 24px;
|
|
padding-top: 60px;
|
|
padding-bottom: 0px;
|
|
flex: 1;
|
|
}
|
|
footer {
|
|
view-transition-name: footer-content;
|
|
padding: 24px;
|
|
padding-top: 0px;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 16px;
|
|
z-index: 10;
|
|
}
|
|
|
|
h1, h2, h3, h4, h5, h6 {
|
|
color: #FFFFFF;
|
|
font-weight: 400;
|
|
}
|
|
|
|
/* Layout */
|
|
section {
|
|
padding-top: 4px;
|
|
padding-bottom: 4px;
|
|
}
|
|
|
|
.block {
|
|
background-color: #272727;
|
|
border-radius: 8px;
|
|
padding: 16px 16px;
|
|
margin-bottom: 16px;
|
|
}
|
|
.block > *:first-child {
|
|
margin-top: 0;
|
|
}
|
|
.block > *:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.flex {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 16px;
|
|
}
|
|
.flex > * {
|
|
margin: 0;
|
|
}
|
|
.flex-1 {
|
|
flex: 1;
|
|
}
|
|
.flex-vertical {
|
|
flex-direction: column;
|
|
}
|
|
|
|
/* Code */
|
|
pre {
|
|
background-color: #202020;
|
|
border-radius: 4px;
|
|
padding: 8px;
|
|
overflow-x: auto;
|
|
white-space: pre;
|
|
line-height: 24px;
|
|
font-size: small;
|
|
font-family: "MesloLGS Nerd Font", monospace;
|
|
font-optical-sizing: auto;
|
|
font-style: normal;
|
|
}
|
|
.block pre {
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
code {
|
|
padding: 4px;
|
|
font-family: "MesloLGS Nerd Font", monospace;
|
|
font-optical-sizing: auto;
|
|
font-style: normal;
|
|
}
|
|
|
|
/* Fonts */
|
|
@font-face {
|
|
font-family: "MesloLGS Nerd Font";
|
|
font-style: normal;
|
|
font-weight: 400;
|
|
src:
|
|
local("MesloLGS Nerd Font"),
|
|
url("https://nercone.dev/assets/fonts/MesloLGSNerdFont-Regular.woff2") format("woff2")
|
|
}
|
|
@font-face {
|
|
font-family: "MesloLGS Nerd Font";
|
|
font-style: normal;
|
|
font-weight: 700;
|
|
src:
|
|
local("MesloLGS Nerd Font"),
|
|
url("https://nercone.dev/assets/fonts/MesloLGSNerdFont-Bold.woff2") format("woff2")
|
|
}
|
|
@font-face {
|
|
font-family: "MesloLGS Nerd Font";
|
|
font-style: italic;
|
|
font-weight: 400;
|
|
src:
|
|
local("MesloLGS Nerd Font"),
|
|
url("https://nercone.dev/assets/fonts/MesloLGSNerdFont-Italic.woff2") format("woff2")
|
|
}
|
|
@font-face {
|
|
font-family: "MesloLGS Nerd Font";
|
|
font-style: italic;
|
|
font-weight: 700;
|
|
src:
|
|
local("MesloLGS Nerd Font"),
|
|
url("https://nercone.dev/assets/fonts/MesloLGSNerdFont-BoldItalic.woff2") format("woff2")
|
|
}
|
|
|
|
a {
|
|
text-decoration: underline;
|
|
color: inherit;
|
|
}
|
|
b {
|
|
font-weight: 400;
|
|
}
|
|
i {
|
|
font-style: italic;
|
|
}
|
|
u {
|
|
text-decoration: underline;
|
|
}
|
|
s {
|
|
text-decoration: line-through;
|
|
}
|
|
|
|
.font-light {
|
|
font-weight: 100;
|
|
}
|
|
.font-regular {
|
|
font-weight: 200;
|
|
}
|
|
.font-medium {
|
|
font-weight: 300;
|
|
}
|
|
.font-bold {
|
|
font-weight: 400;
|
|
}
|
|
.font-extrabold {
|
|
font-weight: 500;
|
|
}
|
|
.font-black {
|
|
font-weight: 600;
|
|
}
|
|
|
|
.font-weight-100 {
|
|
font-weight: 100;
|
|
}
|
|
.font-weight-200 {
|
|
font-weight: 200;
|
|
}
|
|
.font-weight-300 {
|
|
font-weight: 300;
|
|
}
|
|
.font-weight-400 {
|
|
font-weight: 400;
|
|
}
|
|
.font-weight-500 {
|
|
font-weight: 500;
|
|
}
|
|
.font-weight-600 {
|
|
font-weight: 600;
|
|
}
|
|
.font-weight-700 {
|
|
font-weight: 700;
|
|
}
|
|
.font-weight-800 {
|
|
font-weight: 800;
|
|
}
|
|
.font-weight-900 {
|
|
font-weight: 900;
|
|
}
|
|
.font-weight-1000 {
|
|
font-weight: 1000;
|
|
}
|
|
|
|
.text-no-decoration {
|
|
text-decoration: none;
|
|
}
|
|
.text-italic {
|
|
font-style: italic;
|
|
}
|
|
.text-underline {
|
|
text-decoration: underline;
|
|
}
|
|
.text-overline {
|
|
text-decoration: overline;
|
|
}
|
|
.text-line-through {
|
|
text-decoration: line-through;
|
|
}
|
|
|
|
.font-xx-small {
|
|
font-size: xx-small;
|
|
}
|
|
.font-x-small {
|
|
font-size: x-small;
|
|
}
|
|
.font-small {
|
|
font-size: small;
|
|
}
|
|
.font-medium {
|
|
font-size: medium;
|
|
}
|
|
.font-large {
|
|
font-size: large;
|
|
}
|
|
.font-x-large {
|
|
font-size: x-large;
|
|
}
|
|
.font-xx-large {
|
|
font-size: xx-large;
|
|
}
|
|
.font-xxx-large {
|
|
font-size: xxx-large;
|
|
}
|
|
.font-smaller {
|
|
font-size: smaller;
|
|
}
|
|
.font-larger {
|
|
font-size: larger;
|
|
}
|
|
|
|
.font-inter {
|
|
font-family: "Inter";
|
|
}
|
|
.font-nsajp {
|
|
font-family: "Noto Sans JP";
|
|
}
|
|
.font-nsatc {
|
|
font-family: "Noto Sans TC";
|
|
}
|
|
.font-nsasc {
|
|
font-family: "Noto Sans SC";
|
|
}
|
|
.font-nsakr {
|
|
font-family: "Noto Sans KR";
|
|
}
|
|
.font-meslo {
|
|
font-family: "MesloLGS Nerd Font";
|
|
}
|
|
|
|
/* Colors */
|
|
.text-white {
|
|
color: #FFFFFF;
|
|
}
|
|
|
|
.text-bg {
|
|
color: #1A1A1A;
|
|
}
|
|
.text-bg-alt {
|
|
color: #272727;
|
|
}
|
|
.text-tx {
|
|
color: #E0E0E0;
|
|
}
|
|
.text-tx-alt {
|
|
color: #939393;
|
|
}
|
|
|
|
.text-red {
|
|
color: #A03333;
|
|
}
|
|
.text-yellow {
|
|
color: #CCA000;
|
|
}
|
|
.text-green {
|
|
color: #00A050;
|
|
}
|
|
.text-teal {
|
|
color: #00A0A0;
|
|
}
|
|
.text-blue {
|
|
color: #0080C0;
|
|
}
|
|
.text-orange {
|
|
color: #C86000;
|
|
}
|
|
.text-brown {
|
|
color: #A07033;
|
|
}
|
|
.text-purple {
|
|
color: #7844A0;
|
|
}
|
|
.text-magenta {
|
|
color: #A043A0;
|
|
}
|
|
.text-indigo {
|
|
color: #334DA0;
|
|
}
|
|
|
|
.text-bright-red {
|
|
color: #C84040;
|
|
}
|
|
.text-bright-yellow {
|
|
color: #FFC800;
|
|
}
|
|
.text-bright-green {
|
|
color: #00C878;
|
|
}
|
|
.text-bright-teal {
|
|
color: #00C8C8;
|
|
}
|
|
.text-bright-blue {
|
|
color: #00C0FF;
|
|
}
|
|
.text-bright-orange {
|
|
color: #FA7800;
|
|
}
|
|
.text-bright-brown {
|
|
color: #C88C40;
|
|
}
|
|
.text-bright-purple {
|
|
color: #C84040;
|
|
}
|
|
.text-bright-magenta {
|
|
color: #C854C8;
|
|
}
|
|
.text-bright-indigo {
|
|
color: #4060C8;
|
|
}
|
|
|
|
/* Responsive Design */
|
|
.hide {
|
|
display: none;
|
|
}
|
|
@media (max-width: 740px) {
|
|
.bold-on-small {
|
|
font-weight: 400;
|
|
}
|
|
.hide.show-on-small {
|
|
display: block;
|
|
}
|
|
}
|
|
@media (min-width: 740px) and (max-width: 1080px) {
|
|
.hide.show-on-medium {
|
|
display: block;
|
|
}
|
|
}
|
|
@media (min-width: 1080px) {
|
|
.hide.show-on-large {
|
|
display: block;
|
|
}
|
|
}
|
|
|
|
/* View Transition */
|
|
@keyframes vt-fade-out {
|
|
from { opacity: 1; }
|
|
to { opacity: 0; }
|
|
}
|
|
@keyframes vt-fade-in {
|
|
from { opacity: 0; }
|
|
to { opacity: 1; }
|
|
}
|
|
@keyframes vt-blur-out {
|
|
from { filter: blur(0px); }
|
|
to { filter: blur(6px); }
|
|
}
|
|
@keyframes vt-blur-in {
|
|
from { filter: blur(6px); }
|
|
to { filter: blur(0px); }
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
::view-transition-old(header-content),
|
|
::view-transition-new(header-content) {
|
|
z-index: 1;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
::view-transition-old(main-content),
|
|
::view-transition-new(main-content) {
|
|
z-index: 1;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
::view-transition-old(footer-content),
|
|
::view-transition-new(footer-content) {
|
|
z-index: 1;
|
|
pointer-events: none;
|
|
}
|
|
}
|
|
|
|
/* Cursor */
|
|
* { cursor: none; }
|
|
#cursor {
|
|
view-transition-name: none;
|
|
position: fixed;
|
|
z-index: 99999;
|
|
width: 25px;
|
|
height: 25px;
|
|
border-radius: 50%;
|
|
background: #FFFFFFC0;
|
|
pointer-events: none;
|
|
transform: translate(-50%, -50%);
|
|
opacity: 0;
|
|
transition:
|
|
left 0.08s ease-out,
|
|
top 0.08s ease-out,
|
|
width 0.15s cubic-bezier(0.22, 1, 0.36, 1),
|
|
height 0.15s cubic-bezier(0.22, 1, 0.36, 1),
|
|
border-radius 0.15s cubic-bezier(0.22, 1, 0.36, 1),
|
|
background 0.15s ease,
|
|
transform 0.08s ease-out,
|
|
opacity 0.3s ease;
|
|
}
|
|
#cursor.visible {
|
|
opacity: 1;
|
|
}
|
|
#cursor.on-text {
|
|
width: 3px;
|
|
border-radius: 1.5px;
|
|
background: #FFFFFFC0;
|
|
}
|
|
#cursor.on-link {
|
|
border-radius: 6px;
|
|
background: #FFFFFF40;
|
|
transform: translate(0, 0);
|
|
}
|
|
|
|
/* Miscellaneous */
|
|
.unselectable {
|
|
-webkit-touch-callout: none;
|
|
-webkit-user-select: none;
|
|
-khtml-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.banner {
|
|
height: 50px;
|
|
width: auto;
|
|
border-radius: 6px;
|
|
}
|
|
.small-icon {
|
|
width: 12pt;
|
|
height: 12pt;
|
|
display: block;
|
|
}
|