Files
pancakz-homepage/pancakz-v2-crossroads/public/blog/main.css
T

542 lines
9.9 KiB
CSS
Raw Normal View History

2026-05-24 19:52:45 -07:00
:root {
--corner-thickness: 1px;
--corner-margin: -16px;
--corner-color: #606060;
--glass-tint: rgba(255, 255, 255, .075);
--glass-blur: 4px;
--color-accent: #323232;
--color-background: #000;
--color-text-default: #f0f0f0;
--color-text-hidden: #a0a0a0;
}
::-webkit-scrollbar {
width: 0;
}
body {
padding: 0;
margin: 0;
background-color: var(--color-background);
}
button,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a {
font-family: 'Terminus', sans-serif;
font-weight: normal;
font-size: 1em;
line-height: 1.5em;
text-decoration: none;
color: var(--color-text-default);
padding: 0;
margin: 0;
}
a:hover,
a:focus-visible {
text-decoration: underline;
}
/* Layout */
div.layout-wrapper {
display: grid;
width: 100%;
height: 100%;
}
div.layout-background {
position: fixed;
}
div.layout-foreground {
margin: auto;
width: 100%;
max-width: 1024px;
display: flex;
gap: 16px;
justify-content: center;
padding: 16px 0;
box-sizing: border-box;
}
div.layout-pane {
grid-row: 1;
grid-column: 1;
height: fit-content;
}
/* Navigation Links */
nav.section-navigation {
width: 300px;
overflow-y: scroll;
overflow-x: hidden;
max-height: calc(100vh - 64px);
padding: 8px;
box-sizing: border-box;
}
button.nav-header {
position: relative;
text-align: left;
width: 100%;
padding: 4px;
padding-right: 16px;
background: transparent;
border: none;
border-bottom: 1px solid transparent;
cursor: pointer;
}
button.nav-header.open {
border-color: var(--color-text-hidden);
}
button.nav-header img {
height: 16px;
width: 16px;
position: absolute;
right: 16px;
}
p.nav-message {
color: var(--color-text-hidden);
text-align: center;
padding: 8px;
}
a.item-nav {
width: 100%;
display: flex;
padding: 12px 8px 12px 4px;
box-sizing: border-box;
}
div.item-nav-text {
flex-basis: 100%;
}
div.item-nav-text p.item-nav-text-anchor,
div.item-nav-text p.item-nav-text-content {
font-family: 'Terminus', serif;
color: var(--color-text-default);
line-height: 1em;
font-size: 1em;
}
div.item-nav-text p.item-nav-text-content {
color: var(--color-text-hidden);
}
div.item-nav-icon {
display: grid;
}
div.item-nav-icon div.item-nav-icon-background,
div.item-nav-icon img.item-nav-icon-foreground {
grid-row: 1;
grid-column: 1;
margin: auto;
}
div.item-nav-icon div.item-nav-icon-background {
background-color: var(--color-accent);
transform: rotate(45deg);
z-index: -1;
height: 32px;
width: 32px;
}
div.item-nav-icon img.item-nav-icon-foreground {
width: 16px;
height: auto;
}
/* Navigation Chapters */
div.nav-list#chapters {
display: grid;
padding: 4px;
}
div.nav-list#chapters a.section {
font-size: small;
padding-left: 8px;
}
/* Article List */
div.item-article-count {
width: 100%;
background-color: var(--color-accent);
}
div.item-article-count p.item-article-count-text {
display: block;
width: 100%;
height: 32px;
padding: 0 8px;
line-height: 32px;
box-sizing: border-box;
color: var(--color-text-hidden);
}
div.item-article-count span.item-article-count-cursor {
color: var(--color-text-hidden);
}
a.item-article {
display: grid;
height: 80px;
}
div.item-article-layer {
width: 100%;
height: 100%;
grid-row: 1;
grid-column: 1;
}
div.item-article-meta {
padding: 8px 0;
box-sizing: border-box;
}
p.item-article-meta-title {
padding-left: 10px;
}
p.item-article-meta-description {
color: var(--color-text-hidden);
padding-left: 10px;
font-size: small;
}
div.item-article-meta-tags {
display: flex;
padding-left: 4px;
gap: 4px;
}
div.item-article-meta-tags>span {
color: var(--color-text-hidden);
padding: 0 6px;
font-size: small;
}
img.item-article-banner {
position: absolute;
right: 0;
height: 80px;
object-fit: cover;
aspect-ratio: 3 / 1;
mask-image: linear-gradient(-90deg, rgba(0, 0, 0, .5) 0%, transparent 100%);
}
/* Article Header */
article.section-article {
width: 600px;
max-height: calc(100vh - 64px);
overflow-y: scroll;
box-sizing: border-box;
}
div.article-header {
width: 100%;
height: fit-content;
display: grid;
justify-items: center;
}
div.header-chevrons {
display: flex;
justify-content: space-between;
width: 100%;
}
div.article-content:has(*) {
display: grid;
gap: 8px;
padding: 16px;
box-sizing: border-box;
}
img#header-banner {
width: 100%;
object-fit: cover;
aspect-ratio: 3 / 1;
}
h1#header-title {
word-wrap: break-word;
overflow: hidden;
margin: 16px 0 24px 0;
}
/* Article Elements */
h2.element-header {
font-size: x-large;
font-weight: bold;
border-bottom: 1px solid;
margin-bottom: 8px;
padding-bottom: 8px 0;
padding-top: 16px;
}
h3.element-subheader {
font-weight: bold;
text-decoration: underline;
padding-bottom: 8px;
padding-top: 16px;
}
p.element-paragraph {
line-height: 1.25;
text-align: justify;
}
/* Animations */
.animation-blink {
animation: kf-blink 1s infinite step-start;
}
@keyframes kf-blink {
50% {
opacity: 0;
}
}
.animation-scrollin {
box-sizing: border-box;
overflow: hidden;
text-wrap-mode: nowrap;
animation: kf-scrollin 750ms forwards linear;
}
@keyframes kf-scrollin {
0% {
width: 0%;
}
100% {
width: 100%;
}
}
.animation-fadein {
animation: kf-fadein 500ms forwards linear;
}
@keyframes kf-fadein {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
/* Effects */
.effect-glass-wrapper {
position: relative;
margin: 16px;
}
.effect-docked {
font-size: 2em;
font-weight: bold;
text-align: center;
position: relative;
padding: 0 16px;
z-index: 1;
}
.effect-docked::before {
position: absolute;
content: '';
height: 100%;
width: 100%;
top: 0;
left: 0;
box-sizing: border-box;
background: var(--color-accent);
clip-path: polygon(12px 60%, calc(100% - 12px) 60%, 100% 100%, 0 100%);
z-index: -1;
}
div.effect-chevron-container {
align-items: end;
}
.effect-chevron-point-left,
.effect-chevron-point-right {
display: inline-block;
background-color: var(--color-accent);
text-decoration: none;
font-weight: bold;
height: 24px;
width: fit-content;
padding: 0 16px;
}
.effect-chevron-point-right {
margin-right: -4px;
clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%, 8px 50%);
}
div.effect-chevron-container>.effect-chevron-point-right:first-child {
padding-left: 8px;
clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%);
}
.effect-chevron-point-left {
margin-left: -4px;
clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 50%, 100% 100%, 8px 100%, 0 50%);
}
div.effect-chevron-container>.effect-chevron-point-left:last-child {
padding-right: 8px;
clip-path: polygon(8px 0, 100% 0, 100% 100%, 8px 100%, 0 50%);
}
.effect-glass-container {
background: var(--glass-tint);
backdrop-filter: blur(var(--glass-blur));
}
.effect-glass-corner {
position: absolute;
width: 24px;
height: 24px;
pointer-events: none;
z-index: 999;
}
.effect-glass-corner:nth-child(1) {
/* Top-left */
top: var(--corner-margin);
left: var(--corner-margin);
border-top: var(--corner-thickness) solid var(--corner-color);
border-left: var(--corner-thickness) solid var(--corner-color);
}
.effect-glass-corner:nth-child(2) {
/* Top-right */
top: var(--corner-margin);
right: var(--corner-margin);
border-top: var(--corner-thickness) solid var(--corner-color);
border-right: var(--corner-thickness) solid var(--corner-color);
}
.effect-glass-corner:nth-child(3) {
/* Bottom-left */
bottom: var(--corner-margin);
left: var(--corner-margin);
border-bottom: var(--corner-thickness) solid var(--corner-color);
border-left: var(--corner-thickness) solid var(--corner-color);
}
.effect-glass-corner:nth-child(4) {
/* Bottom-right */
bottom: var(--corner-margin);
right: var(--corner-margin);
border-bottom: var(--corner-thickness) solid var(--corner-color);
border-right: var(--corner-thickness) solid var(--corner-color);
}
/* Mobile */
@media only screen and (max-width: 600px) {
div.layout-foreground {
display: block;
padding: 0;
}
nav.section-navigation {
width: 100%;
max-height: unset;
}
article.section-article {
width: 100%;
max-height: unset;
box-sizing: border-box;
}
/* Make Header Slightly Smaller */
h1#header-title {
font-size: 1.5em;
}
div.header-chevrons {
display: grid;
justify-content: center;
}
div.effect-chevron-container {
text-align: center;
}
.effect-chevron-point-left,
.effect-chevron-point-right {
margin: 2px 0;
}
.effect-chevron-point-right {
margin-right: unset;
clip-path: unset;
}
div.effect-chevron-container>.effect-chevron-point-right:first-child {
padding-left: 16px;
clip-path: unset;
}
.effect-chevron-point-left {
margin-left: unset;
clip-path: unset;
}
div.effect-chevron-container>.effect-chevron-point-left:last-child {
padding-right: 16px;
clip-path: unset;
}
/* Remove Filters from Navigation */
button.nav-header[for='authors'],
button.nav-header[for='tags'],
div.nav-list#authors,
div.nav-list#tags {
display: none;
}
.effect-glass-wrapper {
margin: unset;
}
.effect-glass-corner {
display: none;
}
.effect-glass-container {
padding: 0;
background: transparent;
}
}