267 lines
4.3 KiB
CSS
267 lines
4.3 KiB
CSS
@font-face {
|
|
font-family: 'VCR OSD Mono';
|
|
src: url('/VCR_OSD_MONO_1.001.woff2') format('woff2');
|
|
font-weight: 400;
|
|
font-display: swap;
|
|
}
|
|
|
|
:root {
|
|
--bg: #fff;
|
|
--surface: #f0f0f0;
|
|
--text: #000;
|
|
--text-dim: #505050;
|
|
--text-muted: #8c8c8c;
|
|
}
|
|
|
|
body {
|
|
font-family: 'VCR OSD Mono', monospace;
|
|
background: var(--bg);
|
|
color: var(--text);
|
|
max-width: 800px;
|
|
margin: 0 auto;
|
|
padding: 1rem;
|
|
line-height: 1.3;
|
|
font-size: clamp(1rem, 0.85rem + 0.75vw, 1.3rem);
|
|
}
|
|
|
|
header {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.75rem;
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
|
|
.icon {
|
|
width: 4rem;
|
|
height: 4rem;
|
|
image-rendering: pixelated;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
h1 {
|
|
color: var(--text);
|
|
margin: 0;
|
|
}
|
|
|
|
.subtitle {
|
|
color: var(--text-muted);
|
|
margin: 0;
|
|
}
|
|
|
|
h2 {
|
|
color: var(--text);
|
|
margin-top: 2rem;
|
|
margin-bottom: 1rem;
|
|
font-size: 1.15rem;
|
|
padding-bottom: 0.5rem;
|
|
border-bottom: 1px solid var(--text-muted);
|
|
}
|
|
|
|
p {
|
|
margin: 0.25rem 0;
|
|
text-align: justify;
|
|
}
|
|
|
|
video {
|
|
max-width: 100%;
|
|
margin: 2rem 0 0.5rem 0;
|
|
display: block;
|
|
}
|
|
|
|
a { color: var(--text-dim); }
|
|
|
|
ul {
|
|
padding-left: 1.5rem;
|
|
margin: 0.25rem 0;
|
|
}
|
|
|
|
li {
|
|
margin: 0.1rem 0;
|
|
text-align: justify;
|
|
}
|
|
|
|
.examples-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 0.5rem;
|
|
margin: 0.5rem 0 2rem;
|
|
}
|
|
|
|
.example-cell {
|
|
aspect-ratio: 1;
|
|
overflow: hidden;
|
|
background: var(--surface);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.example-cell video,
|
|
.example-cell img {
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
display: block;
|
|
}
|
|
|
|
.example-cell.expanded {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
z-index: 100;
|
|
background: rgba(0, 0, 0, 0.9);
|
|
aspect-ratio: auto;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.example-cell.expanded video {
|
|
width: auto;
|
|
height: auto;
|
|
max-width: 90vw;
|
|
max-height: 90vh;
|
|
object-fit: contain;
|
|
}
|
|
|
|
.downloads-table {
|
|
border-collapse: collapse;
|
|
margin: 0.5rem 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.downloads-table th,
|
|
.downloads-table td {
|
|
padding: 0.25rem 0.75rem;
|
|
text-align: left;
|
|
}
|
|
|
|
.downloads-table th {
|
|
color: var(--text);
|
|
}
|
|
|
|
.downloads-table td:first-child {
|
|
color: var(--text-muted);
|
|
}
|
|
|
|
.downloads-table tr:nth-child(even) {
|
|
background: var(--surface);
|
|
}
|
|
|
|
.note {
|
|
color: var(--text-dim);
|
|
font-size: 0.8rem;
|
|
background: var(--surface);
|
|
padding: 0.5rem 0.75rem;
|
|
margin-top: 0.75rem;
|
|
}
|
|
|
|
.note::before {
|
|
content: '→ ';
|
|
}
|
|
|
|
.note a {
|
|
color: var(--text-muted);
|
|
}
|
|
|
|
.features {
|
|
margin: 0.25rem 0;
|
|
}
|
|
|
|
.feature-tags {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.4rem;
|
|
}
|
|
|
|
.feature-tags button {
|
|
font-family: 'VCR OSD Mono', monospace;
|
|
font-size: 0.85em;
|
|
background: var(--surface);
|
|
color: var(--text-muted);
|
|
border: 1px solid transparent;
|
|
padding: 0.2rem 0.5rem;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.feature-tags button:hover {
|
|
color: var(--text);
|
|
border-color: var(--text-muted);
|
|
}
|
|
|
|
.feature-tags button.active {
|
|
color: var(--text);
|
|
border-color: var(--text);
|
|
}
|
|
|
|
.feature-desc {
|
|
color: var(--text-dim);
|
|
margin-top: 0.75rem;
|
|
padding: 0.75rem;
|
|
background: var(--surface);
|
|
border-left: 2px solid var(--text-muted);
|
|
text-align: left;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
.feature-desc:empty {
|
|
display: none;
|
|
}
|
|
|
|
.kofi-popup {
|
|
position: fixed;
|
|
top: 1rem;
|
|
left: 1rem;
|
|
z-index: 50;
|
|
max-width: 14rem;
|
|
font-size: 0.75rem;
|
|
color: var(--text-dim);
|
|
background: var(--surface);
|
|
border: 1px solid var(--text-muted);
|
|
padding: 0.75rem 1rem;
|
|
}
|
|
|
|
.kofi-popup p {
|
|
margin: 0 0 0.5rem;
|
|
text-align: left;
|
|
}
|
|
|
|
.kofi-popup a {
|
|
color: var(--text);
|
|
text-decoration: underline;
|
|
}
|
|
|
|
.kofi-popup a:hover {
|
|
color: var(--text-dim);
|
|
}
|
|
|
|
.kofi-close {
|
|
position: absolute;
|
|
top: 0.25rem;
|
|
right: 0.5rem;
|
|
font-family: 'VCR OSD Mono', monospace;
|
|
font-size: 1rem;
|
|
background: none;
|
|
border: none;
|
|
color: var(--text-muted);
|
|
cursor: pointer;
|
|
padding: 0;
|
|
line-height: 1;
|
|
}
|
|
|
|
.kofi-close:hover {
|
|
color: var(--text);
|
|
}
|
|
|
|
.colophon {
|
|
margin-top: 3rem;
|
|
padding-top: 1rem;
|
|
border-top: 1px solid var(--text-muted);
|
|
color: var(--text-muted);
|
|
}
|
|
|
|
.colophon a {
|
|
color: var(--text-dim);
|
|
}
|
|
|