global: snapshot

This commit is contained in:
nym21
2026-02-13 13:54:09 +01:00
parent b779edc0d6
commit 80b2c636b0
53 changed files with 1819 additions and 1184 deletions
+245
View File
@@ -0,0 +1,245 @@
.chart {
display: flex;
flex-direction: column;
min-height: 0;
flex: 1;
label,
select {
margin: -0.5rem;
padding: 0.5rem;
}
select {
width: auto;
background: none;
}
legend {
padding: 0;
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 20;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
text-transform: lowercase;
pointer-events: none;
select {
text-transform: lowercase;
}
&::before,
&::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
width: var(--main-padding);
z-index: 1;
pointer-events: none;
}
&::before {
left: 0;
background-image: linear-gradient(
to left,
transparent,
var(--background-color)
);
}
&::after {
right: 0;
background-image: linear-gradient(
to right,
transparent,
var(--background-color)
);
}
> div {
display: flex;
align-items: center;
overflow-x: auto;
scrollbar-width: thin;
padding: 0 var(--main-padding);
padding-top: 0.278rem;
padding-bottom: 0.75rem;
> * {
pointer-events: auto;
}
> span {
padding: 0 0.75rem;
}
small {
flex-shrink: 0;
}
> div:last-child {
display: flex;
align-items: center;
gap: 1rem;
flex-shrink: 0;
> div {
flex: 0;
height: 100%;
display: flex;
align-items: center;
> label {
> span {
display: flex !important;
}
&:has(input:not(:checked)) {
> span.main > span.name {
text-decoration: line-through 1.5px var(--color);
}
&:hover {
* {
color: var(--off-color) !important;
}
> span.main > span.name {
text-decoration-color: var(--orange) !important;
}
}
&:active {
color: var(--orange);
}
}
}
> a {
padding-inline: 0.375rem;
margin-inline: -0.375rem;
margin-top: 0.1rem;
}
}
}
}
}
> div {
min-height: 0;
height: 100%;
margin-right: var(--negative-main-padding);
margin-left: var(--negative-main-padding);
div.field {
display: flex;
flex-shrink: 0;
gap: 0.375rem;
}
table > tr {
&:first-child > td:nth-child(2) {
position: relative;
&::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: var(--main-padding);
background-image: linear-gradient(
to bottom,
var(--background-color),
transparent
);
z-index: 10;
pointer-events: none;
}
}
&:last-child > td {
border-top: 1px;
&:nth-child(2) {
position: relative;
> .field {
position: absolute;
left: 0;
top: 0;
bottom: 0;
z-index: 10;
display: flex;
align-items: center;
pointer-events: auto;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
text-transform: uppercase;
background-color: var(--background-color);
padding-left: var(--main-padding);
padding-right: 0.25rem;
&::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 100%;
width: var(--main-padding);
background-image: linear-gradient(
to right,
var(--background-color),
transparent
);
}
}
}
}
}
td:last-child > .field {
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 50;
display: flex;
font-size: var(--font-size-xs);
gap: 0.375rem;
background-color: var(--background-color);
align-items: center;
text-transform: uppercase;
padding-left: 0.625rem;
padding-top: 0.35rem;
padding-bottom: 0.125rem;
&::after {
content: "";
position: absolute;
top: 100%;
left: 0;
right: 0;
height: 1rem;
background-image: linear-gradient(
to top,
transparent,
var(--background-color)
);
}
}
button.capture {
position: absolute;
top: 0.5rem;
right: 0.5rem;
z-index: 50;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
color: var(--off-color);
}
}
}
-438
View File
@@ -1,81 +1,3 @@
nav {
margin-top: -0.125rem;
user-select: none;
-webkit-user-select: none;
button::after {
color: var(--off-color);
content: "→";
align-self: baseline;
font-size: 75%;
margin-left: 0.25rem;
margin-bottom: 0.25rem;
line-height: 1;
}
li[data-highlight] {
> details > summary,
> a {
color: var(--color);
}
> details > summary > small {
opacity: 1;
}
> a::after,
> details:not([open]) > summary::after {
color: var(--orange) !important;
content: "";
background-color: var(--orange);
width: 0.375rem;
height: 0.375rem;
border-radius: 9999px;
display: inline-block;
margin-bottom: 0.125rem;
margin-left: 0.375rem;
}
}
> ul > li {
text-transform: uppercase;
& + * {
margin-top: 1.25rem;
}
> details,
> label {
font-size: var(--font-size-base);
line-height: var(--line-height-base);
ul {
margin-left: 0.25rem;
}
}
a,
button,
summary {
padding: 0.25rem 0;
}
ul {
color: var(--off-color);
overflow: hidden;
li {
text-transform: lowercase;
display: block;
position: relative;
padding-left: 0.75rem;
border-left: 1px;
/*border-style: dotted !important;*/
}
}
}
}
#share-div {
font-size: var(--font-size-sm);
line-height: var(--line-height-sm);
@@ -115,94 +37,11 @@ nav {
}
}
search {
text-transform: uppercase;
gap: 1rem;
ul {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
}
.shadow-top {
position: absolute;
background-image: linear-gradient(
to top,
transparent,
var(--background-color)
);
height: var(--main-padding);
top: 0;
left: 0;
right: 0;
z-index: 10;
pointer-events: none;
}
.shadow-bottom {
position: absolute;
background-image: linear-gradient(
to bottom,
transparent,
var(--background-color) 90%,
var(--background-color)
);
height: 21rem;
bottom: 0;
left: 0;
right: 0;
z-index: 10;
pointer-events: none;
}
.shadow-left {
position: absolute;
background-image: linear-gradient(
to left,
transparent,
var(--background-color)
);
width: var(--main-padding);
left: 0;
top: 0;
bottom: 0;
z-index: 50;
pointer-events: none;
}
.shadow-right {
position: absolute;
background-image: linear-gradient(
to right,
transparent,
var(--background-color)
);
width: var(--main-padding);
right: 0;
top: 0;
bottom: 0;
z-index: 30;
pointer-events: none;
}
fieldset {
display: flex;
align-items: center;
gap: 0.5rem;
&[data-size="sm"] {
font-size: var(--font-size-sm);
line-height: var(--line-height-sm);
}
&[data-size="xs"] {
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
font-weight: 450;
}
> div.field {
text-transform: lowercase;
display: flex;
@@ -214,18 +53,6 @@ fieldset {
flex-shrink: 0;
}
> hr {
min-width: 2rem;
fieldset[data-size="sm"] & {
min-width: 1.5rem;
}
fieldset[data-size="xs"] & {
min-width: 1rem;
}
}
label {
padding: 0.5rem;
margin: -0.5rem;
@@ -234,10 +61,6 @@ fieldset {
> div {
display: flex;
gap: 1.5rem;
fieldset[data-size="xs"] & {
gap: 1rem;
}
}
}
}
@@ -245,8 +68,6 @@ fieldset {
#chart > fieldset {
text-transform: lowercase;
flex-shrink: 0;
display: flex;
align-items: center;
margin: -0.5rem var(--negative-main-padding);
padding: 0.75rem var(--main-padding);
overflow-x: auto;
@@ -255,262 +76,3 @@ fieldset {
line-height: var(--line-height-sm);
scrollbar-width: thin;
}
.chart {
display: flex;
flex-direction: column;
min-height: 0;
flex: 1;
label,
select {
margin: -0.5rem;
padding: 0.5rem;
}
legend {
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 20;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
text-transform: lowercase;
pointer-events: none;
&::before,
&::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
width: var(--main-padding);
z-index: 1;
pointer-events: none;
}
&::before {
left: 0;
background-image: linear-gradient(
to left,
transparent,
var(--background-color)
);
}
&::after {
right: 0;
background-image: linear-gradient(
to right,
transparent,
var(--background-color)
);
}
> div {
display: flex;
align-items: center;
overflow-x: auto;
scrollbar-width: thin;
padding: 0 var(--main-padding);
padding-top: 0.278rem;
padding-bottom: 0.75rem;
> * {
pointer-events: auto;
}
> span {
padding: 0 0.75rem;
}
> div:has(> select) {
> select {
width: auto;
background: none;
}
small {
flex-shrink: 0;
}
}
> div:last-child {
display: flex;
align-items: center;
gap: 1rem;
flex-shrink: 0;
}
> div:last-child > div {
flex: 0;
height: 100%;
display: flex;
align-items: center;
> label {
> span {
display: flex !important;
}
&:has(input:not(:checked)) {
color: var(--off-color);
> span.main > span.name {
text-decoration-thickness: 1.5px;
text-decoration-color: var(--color);
text-decoration-line: line-through;
}
&:hover {
* {
color: var(--off-color) !important;
}
> span.main > span.name {
text-decoration-color: var(--orange) !important;
}
}
&:active {
color: var(--orange);
}
}
}
> a {
padding-left: 0.375rem;
padding-right: 0.375rem;
margin-left: -0.375rem;
margin-right: -0.375rem;
margin-top: 0.1rem;
}
}
}
}
> div {
min-height: 0;
height: 100%;
margin-right: var(--negative-main-padding);
margin-left: var(--negative-main-padding);
div:has(> select) {
display: flex;
flex-shrink: 0;
gap: 0.375rem;
}
table > tr {
&:first-child > td:nth-child(2) {
position: relative;
&::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: var(--main-padding);
background-image: linear-gradient(
to bottom,
var(--background-color),
transparent
);
z-index: 10;
pointer-events: none;
}
}
&:last-child > td {
border-top: 1px;
&:nth-child(2) {
position: relative;
> .field {
position: absolute;
left: 0;
top: 0;
bottom: 0;
z-index: 10;
display: flex;
align-items: center;
pointer-events: auto;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
text-transform: uppercase;
background-color: var(--background-color);
padding-left: var(--main-padding);
padding-right: 0.25rem;
> select {
width: auto;
background: none;
}
&::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: 100%;
width: var(--main-padding);
background-image: linear-gradient(
to right,
var(--background-color),
transparent
);
}
}
}
}
}
td:last-child > .field {
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 50;
display: flex;
font-size: var(--font-size-xs);
gap: 0.25rem;
background-color: var(--background-color);
align-items: center;
text-transform: uppercase;
padding-left: 0.625rem;
padding-top: 0.35rem;
padding-bottom: 0.125rem;
label {
margin: -0.25rem;
padding: 0.25rem;
}
&::after {
content: "";
position: absolute;
top: 100%;
left: 0;
right: 0;
height: 1rem;
background-image: linear-gradient(
to top,
transparent,
var(--background-color)
);
}
}
button.capture {
position: absolute;
top: 0.5rem;
right: 0.5rem;
z-index: 50;
font-size: var(--font-size-xs);
line-height: var(--line-height-xs);
color: var(--off-color);
}
}
}
+27 -198
View File
@@ -1,17 +1,19 @@
* {
border-width: 0;
border-color: var(--border-color) !important;
border-style: solid !important;
background-color: transparent;
&::selection {
color: var(--white);
background-color: var(--orange);
}
}
a {
color: inherit;
display: flow-root;
align-items: baseline;
text-decoration-style: dotted;
text-decoration-thickness: 1px;
text-underline-offset: 2px;
@@ -22,19 +24,9 @@ a {
&:hover {
text-decoration-style: solid;
&,
&::after,
* {
color: var(--color) !important;
}
}
&:active {
&,
*,
&::after {
color: var(--orange) !important;
}
text-decoration-color: inherit;
}
@@ -55,7 +47,7 @@ a {
}
aside {
min-width: 0px;
min-width: 0;
position: relative;
height: 100%;
width: 100%;
@@ -73,7 +65,6 @@ aside {
@media (min-width: 768px) {
border-left: 1px;
order: 2;
margin-bottom: 0rem;
}
body > &[hidden] {
@@ -81,10 +72,6 @@ aside {
}
}
b {
font-weight: 700;
}
body {
font-weight: var(--font-weight-base);
height: 100dvh;
@@ -102,54 +89,16 @@ body {
}
button {
padding: 0;
cursor: pointer;
text-transform: inherit;
&:disabled {
color: var(--off-color);
}
&:hover {
&,
&::after,
* {
color: var(--color) !important;
}
}
&:active {
&,
&::after,
* {
color: var(--orange) !important;
}
}
}
details {
display: block;
}
div {
&:has(> * + button[type="reset"]) {
display: flex;
gap: 0.5rem;
align-items: baseline;
button {
color: var(--off-color);
font-size: var(--font-size-sm);
line-height: var(--line-height-sm);
}
}
}
h1,
h2 {
h1 {
text-transform: uppercase;
font-size: var(--font-size-xl);
line-height: var(--line-height-xl);
font-weight: 350;
font-weight: 300;
}
h3 {
@@ -157,15 +106,6 @@ h3 {
line-height: var(--line-height-lg);
}
h4 {
font-size: var(--font-size-base);
line-height: var(--line-height-base);
}
hr {
width: 100%;
}
html {
background-color: var(--background-color);
color: var(--color);
@@ -175,14 +115,7 @@ html {
}
input {
text-transform: inherit;
border: 0;
width: 100%;
text-align: left;
&:focus-visible {
outline: none;
}
&::placeholder {
color: var(--off-color);
@@ -239,7 +172,7 @@ label {
color: var(--orange);
}
> *:not(input):not(svg) {
> *:not(input) {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
@@ -253,125 +186,19 @@ label {
&:has(input:checked) {
color: var(--color);
font-style: normal;
}
}
main {
order: 1;
position: relative;
display: flex;
@media (max-width: 767px) {
flex: 1;
min-height: 0;
width: 100% !important;
}
@media (min-width: 768px) {
min-width: 300px;
width: var(--default-main-width);
max-width: 65dvw;
}
> footer {
position: absolute;
bottom: 0;
right: 0;
left: 0;
text-transform: uppercase;
margin: var(--main-padding) 0;
z-index: 100;
pointer-events: none;
justify-content: center;
@media (max-width: 767px) {
html[data-display="standalone"] & {
margin-bottom: calc(var(--main-padding) + 0.5rem);
}
}
> fieldset {
display: flex;
gap: 1.25rem;
overflow-x: auto;
scrollbar-width: thin;
min-width: 0;
margin: -0.5rem 0;
padding: 0.5rem var(--main-padding);
pointer-events: auto;
> label,
> button {
flex-shrink: 0;
}
> button {
color: var(--off-color);
}
}
}
> #resize-bar {
display: none;
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 4px;
margin: 0 -2px;
z-index: 50;
html[data-resize] &,
&:hover {
border-right: 4px;
cursor: col-resize;
border-color: var(--off-color) !important;
}
@media (min-width: 768px) {
display: block;
}
}
}
object {
background-color: white;
}
select {
cursor: pointer;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="gray"><path fill-rule="evenodd" d="M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd" /></svg>')
100% 50% no-repeat transparent;
/*flex: 1;*/
flex-shrink: 0;
width: 100%;
&:focus-visible {
border: 0;
outline: none;
}
text-transform: uppercase;
}
nav,
search {
flex: 1;
overflow-x: hidden;
overflow-y: auto;
padding: var(--main-padding);
height: 100%;
display: flex;
flex-direction: column;
padding-bottom: var(--bottom-area);
}
sup {
opacity: 0.5;
margin-left: 0.25rem;
font-weight: 500;
:is(input, select):focus-visible {
outline: none;
}
summary > small {
@@ -383,13 +210,7 @@ small {
color: var(--off-color);
font-weight: var(--font-weight-base);
h4 + & {
font-size: var(--font-size-base);
line-height: var(--line-height-base);
}
select + & {
font-weight: var(--font-weight-base);
font-size: var(--font-size-xs);
+ span {
@@ -409,15 +230,10 @@ span {
}
}
strong {
color: var(--orange);
}
summary {
list-style: none;
display: block;
cursor: pointer;
position: relative;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
@@ -427,16 +243,21 @@ summary {
display: none;
}
}
:is(a, button, summary) {
&:hover {
&,
* {
*,
&::after {
color: var(--color) !important;
}
}
&:active {
&,
* {
*,
&::after {
color: var(--orange) !important;
}
}
@@ -447,3 +268,11 @@ summary {
display: none !important;
}
}
[data-resize] {
user-select: none;
}
[hidden] {
display: none !important;
}
+7
View File
@@ -5,6 +5,7 @@
font-weight: 100 700;
font-display: block;
}
@font-face {
font-family: Lilex;
src: url("/assets/fonts/Lilex-Italic[wght]-v2_620.woff2") format("woff2");
@@ -12,3 +13,9 @@
font-weight: 100 700;
font-display: block;
}
html {
font-family:
"Lilex", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
"Liberation Mono", "Courier New", monospace;
}
+147
View File
@@ -0,0 +1,147 @@
main {
order: 1;
position: relative;
display: flex;
&::before,
&::after {
content: "";
position: absolute;
left: 0;
right: 0;
z-index: 10;
pointer-events: none;
}
&::before {
top: 0;
height: var(--main-padding);
background-image: linear-gradient(
to top,
transparent,
var(--background-color)
);
}
&::after {
bottom: 0;
height: 21rem;
background-image: linear-gradient(
to bottom,
transparent,
var(--background-color) 90%,
var(--background-color)
);
}
@media (max-width: 767px) {
flex: 1;
min-height: 0;
width: 100% !important;
}
@media (min-width: 768px) {
min-width: 300px;
width: var(--default-main-width);
max-width: 65dvw;
}
> nav,
> search {
flex: 1;
overflow-x: hidden;
overflow-y: auto;
padding: var(--main-padding);
height: 100%;
display: flex;
flex-direction: column;
padding-bottom: var(--bottom-area);
}
> footer {
position: absolute;
bottom: 0;
right: 0;
left: 0;
text-transform: uppercase;
z-index: 100;
padding-bottom: var(--main-padding);
&::before,
&::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
width: var(--main-padding);
z-index: 1;
pointer-events: none;
}
&::before {
left: 0;
background-image: linear-gradient(
to left,
transparent,
var(--background-color)
);
}
&::after {
right: 0;
background-image: linear-gradient(
to right,
transparent,
var(--background-color)
);
}
@media (max-width: 767px) {
html[data-display="standalone"] & {
margin-bottom: calc(var(--main-padding) + 0.5rem);
}
}
> fieldset {
display: flex;
gap: 1.25rem;
overflow-x: auto;
scrollbar-width: thin;
min-width: 0;
margin: -0.5rem 0;
padding: 0.5rem var(--main-padding);
pointer-events: auto;
> label,
> button {
flex-shrink: 0;
}
> button {
color: var(--off-color);
}
}
}
> #resize-bar {
display: none;
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 4px;
margin: 0 -2px;
z-index: 50;
html[data-resize] &,
&:hover {
border-right: 4px;
cursor: col-resize;
border-color: var(--off-color) !important;
}
@media (min-width: 768px) {
display: block;
}
}
}
+69
View File
@@ -0,0 +1,69 @@
nav {
font-size: var(--font-size-base);
line-height: var(--line-height-base);
user-select: none;
-webkit-user-select: none;
ul {
list-style: none;
padding: 0;
}
> ul > li {
text-transform: uppercase;
& + * {
margin-top: 1.25rem;
}
> details,
> label {
ul {
margin-left: 0.25rem;
}
}
a,
summary {
padding: 0.25rem 0;
}
ul {
color: var(--off-color);
overflow: hidden;
li {
text-transform: lowercase;
display: block;
position: relative;
padding-left: 0.75rem;
border-left: 1px;
}
}
}
li[data-highlight] {
> details > summary,
> a {
text-transform: uppercase;
color: var(--color);
}
> details > summary > small {
opacity: 1;
}
> a::after,
> details:not([open]) > summary::after {
color: var(--orange) !important;
content: "";
background-color: var(--orange);
width: 0.375rem;
height: 0.375rem;
border-radius: 9999px;
display: inline-block;
margin-bottom: 0.125rem;
margin-left: 0.375rem;
}
}
}
-1
View File
@@ -53,7 +53,6 @@
h1 {
font-size: 1.375rem;
letter-spacing: 0.075rem;
font-weight: 300;
}
}
+53 -1
View File
@@ -1,4 +1,56 @@
/*
* https://www.joshwcomeau.com/css/custom-css-reset
*/
/* 1. Use a more-intuitive box-sizing model */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* 2. Remove default margin */
*:not(dialog) {
margin: 0;
}
body {
/* 4. Add accessible line-height */
line-height: 1.5;
}
/* 7. Inherit fonts for form controls */
input,
button,
select {
font: inherit;
}
/* 8. Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
overflow-wrap: break-word;
}
/* 9. Improve line wrapping */
p {
text-wrap: pretty;
}
h1,
h2,
h3,
h4,
h5,
h6 {
text-wrap: balance;
}
/**,
::after,
::before,
::backdrop,
@@ -177,4 +229,4 @@ video {
[hidden] {
display: none !important;
}
}*/
+12
View File
@@ -0,0 +1,12 @@
search {
text-transform: uppercase;
gap: 1rem;
ul {
list-style: none;
display: flex;
flex-direction: column;
gap: 0.75rem;
padding: 0;
}
}
-16
View File
@@ -32,8 +32,6 @@
--off-color: var(--gray);
--border-color: light-dark(var(--light-gray), var(--dark-gray));
--font-size-2xs: 0.625rem;
--line-height-2xs: 1rem;
--font-size-xs: 0.75rem;
--line-height-xs: calc(1 / 0.75);
--font-size-sm: 0.875rem;
@@ -44,24 +42,10 @@
--line-height-lg: calc(1.75 / 1.125);
--font-size-xl: 1.25rem;
--line-height-xl: calc(1.75 / 1.25);
--font-size-2xl: 1.5rem;
--line-height-2xl: calc(2 / 1.5);
--font-size-3xl: 1.75rem;
--line-height-3xl: calc(2.25 / 1.75);
--main-padding: 2rem;
@media (min-width: 768px) {
--main-padding: 2rem;
}
--negative-main-padding: calc(-1 * var(--main-padding));
--font-weight-base: 400;
--transform-scale-active: scaleY(0.9);
--default-main-width: 25rem;
--bottom-area: 69vh;
}
[data-resize] {
user-select: none;
}