.grid { display: grid; gap: var(--grid-gutter, var(--space-size-2)); grid-template-columns: repeat(var(--grid-placement, auto-fill), minmax(var(--grid-min-item-size, 16rem), 1fr)); } .grid[data-grid="[20 80]"] { grid-template-columns: 9rem repeat( auto-fill, clamp(10rem,60vw,40rem)); } .grid[data-grid-cols="2"] { --grid-min-item-size: clamp(10rem, 50%, 25rem); } .grid[data-grid-cols="3"] { --grid-min-item-size: clamp(8rem, 33%, 16rem); } .grid[data-grid-cols="4"] { --grid-min-item-size: clamp(8rem, 25%, 16rem); } .grid[data-grid-cols="5"] { --grid-placement: auto-fill; --grid-min-item-size: clamp(9rem, 20%, 10rem); } [class*=row] { display: flex; flex-direction: row; gap: var(--row-gutter, var(--space-size-2)); align-items: center; flex-wrap: wrap; } [class*=row] > * { flex-grow: 1; } .row-collapse { --row-gutter: 0; padding-left: 2rem; } .row-collapse > * { margin-left: -1.5rem; } .with-sidebar { display: flex; flex-wrap: wrap; gap: var(--space-size-1); } .sidebar { flex-basis: 20rem; flex-grow: 1; } .with-sidebar > :not(.sidebar) { flex-basis: 0; flex-grow: 999; min-inline-size: 50%; } [class*=stack] { display: flex; flex-direction: column; } .stack-sm { --stack-spacing: var(--space-size-0); } .stack-md { --stack-spacing: var(--space-size-base); } .stack-lg { --stack-spacing: var(--space-size-1); } .stack-xl { --stack-spacing: var(--space-size-2); } .stack-2xl { --stack-spacing: var(--space-size-3); } [class*=stack] > * + * { -webkit-margin-before: var(--stack-spacing, 1.5rem); margin-block-start: var(--stack-spacing, 1.5rem) } .hero { margin-left: auto; margin-right: auto; max-width: var(--hero-max-w, var(--screen-lg)); width: 100%; } [class*=wrapper] { margin-left: var(--wrapper-margin, auto); margin-right: var(--wrapper-margin, auto); max-width: var(--wrapper-width, var(--screen-lg)); padding: var(--wrapper-padding, var(--space-size-0)); width: 100%; } .wrapper-lg { --wrapper-width: var(--screen-lg); } .wrapper-md { --wrapper-width: var(--screen-md); } .wrapper-sm { --wrapper-width: var(--screen-sm); } .border-primary { border-color: var(--color-primary); } .border-secondary { border-color: var(--color-secondary); } .border-accent { border-color: var(--color-accent); } .color-primary { color: var(--color-primary); } .color-secondary { color: var(--color-secondary); } .color-accent { color: var(--color-accent); } .flow > * + * { margin-top: var(--flow-space, var(--space-size-1)); } .flow-1l > * > * + * { margin-top: var(--flow-space, var(--space-size-1)); } .w-paragraph { max-width: 80ch; width: 100%; } .w-content { width: -moz-fit-content; width: fit-content; } .basic-select { border: 2px solid black; border-top: 0px solid; background-color: white; background-image: linear-gradient(0deg, rgba(153, 153, 153, 0.1) 12.50%, #ffffff 12.50%, #ffffff 50%, rgba(153, 153, 153, 0.1) 50%, rgba(153, 153, 153, 0.1) 62.50%, #ffffff 62.50%, #ffffff 100%); background-size: 8.00px 8.00px; line-height: 1.3; } .basic-select a { padding: 0.2rem var(--space-size-0); text-decoration: none; display: block; } .basic-select a:hover, .basic-select a:focus { background: var(--color-cyan); outline: none; } .basic-select::before { content: "128"; display: block; background: black; color: white; background-image: linear-gradient(135deg, transparent 30%, red 30%, red 40%, yellow 40%, yellow 50%, #44ff00 50%, #44ff00 60%, #00fff7 60%, #00fff7 70%, transparent 70%); background-size: 15rem 100%; background-position: 110%; background-repeat: no-repeat; padding: 0 var(--space-size-0); } .headerbar { background: black; font-size: var(--text-size-base); position: fixed; max-width: calc(var(--wrapper-width, var(--screen-lg)) - (2 * var(--space-size-0))); top: 92%; color: white; text-align: left; padding: 0 var(--space-size-0); background-image: linear-gradient(135deg, transparent 30%, red 30%, red 40%, yellow 40%, yellow 50%, #44ff00 50%, #44ff00 60%, #00fff7 60%, #00fff7 70%, transparent 70%); background-size: 10rem 100%; background-position: right -1rem top; background-repeat: no-repeat; width: calc(100% - (2 * var(--space-size-0))); margin: 0; } .blogpost { position: relative; padding: 0; overflow: auto; padding-left: var(--space-size-0); padding-right: var(--space-size-0); } .blogpost:not(:has(#mono:checked)) .e-content { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; } .post-title a:not(:hover) { text-decoration: none; } .circle { max-width: 4rem; flex: 1 1 4rem; } .circle img { border-radius: 100%; } .linkback { margin-top: 0; display: inline-block; width: 100%; font-size: clamp(0.83rem, 0.90rem + -0.32vw, 0.67rem); text-decoration-thickness: 0.05rem; } .comment { position: relative; margin-left: auto; margin-right: auto; width: 90%; border-width: 0px; border-top-width: 1px; border-style: solid; padding-top: clamp(1.20rem, 1.08rem + 0.59vw, 1.50rem); border-color: var(--color-accent); } .comment:first-of-type { border-width: 0px; } .controls { display: flex; width: 100%; justify-content: space-between; } header nav a { text-decoration: none; } .heading:not(:hover) { text-decoration: none; } .micro { display: block; border: 2px solid black; background-image: linear-gradient(0deg, rgba(153, 153, 153, 0.1) 12.50%, #ffffff 12.50%, #ffffff 50%, rgba(153, 153, 153, 0.1) 50%, rgba(153, 153, 153, 0.1) 62.50%, #ffffff 62.50%, #ffffff 100%); background-size: 8.00px 8.00px; padding: var(--space-size-0); font-size: var(--text-size-1); } .micro time { font-weight: bold; } .pixelated { width: 100%; height: auto; image-rendering: pixelated; } pre[class*="language"], code[class*="language"] { margin-top: var(--flow-space, var(--space-size-1)) !important; } pre .comment { border: 0; } @media (prefers-color-scheme: light) { .pumpkin { --color-pumpkin-body-fill: black; --color-pumpkin-body-stroke: transparent; --color-pumpkin-accent-fill: #FCEE21; --color-pumpkin-accent-stroke: transparent; } } [data-color-scheme="light"] .pumpkin { --color-pumpkin-body-fill: black; --color-pumpkin-body-stroke: transparent; --color-pumpkin-accent-fill: #FCEE21; --color-pumpkin-accent-stroke: transparent; } .pumpkin { --color-pumpkin-body-fill: white; --color-pumpkin-body-stroke: black; --color-pumpkin-accent-fill: var(--color-rose); --color-pumpkin-accent-stroke: black; height: auto; width: 35px; } .pumpkin .body { fill-rule: evenodd; clip-rule: evenodd; fill: var(--color-pumpkin-body-fill); stroke: var(--color-pumpkin-body-stroke); } .pumpkin .detail { fill-rule: evenodd; clip-rule: evenodd; fill: var(--color-pumpkin-accent-fill); stroke: var(--color-pumpkin-accent-stroke); } .square { aspect-ratio: 1; -o-object-position: center center; object-position: center center; -o-object-fit: cover; object-fit: cover; width: 100%; height: auto; } .invisible { visibility: hidden; } .static { position: static; } .fixed { position: fixed; } .absolute { position: absolute; } .relative { position: relative; } .mx-auto { margin-left: auto; margin-right: auto; } .mt-auto { margin-top: auto; } .mt-size-1 { margin-top: clamp(1.20rem, 1.08rem + 0.59vw, 1.50rem); } .block { display: block; } .inline-block { display: inline-block; } .flex { display: flex; } .grid { display: grid; } .contents { display: contents; } .h-\[90vh\] { height: 90vh; } .h-\[90dvh\] { height: 90dvh; } .h-full { height: 100%; } .h-screen { height: 100vh; } .h-\[100dvh\] { height: 100dvh; } .h-auto { height: auto; } .max-h-\[90vh\] { max-height: 90vh; } .max-h-\[90dvh\] { max-height: 90dvh; } .min-h-screen { min-height: 100vh; } .w-screen { width: 100vw; } .w-\[60\%\] { width: 60%; } .w-full { width: 100%; } .max-w-\[10\%\] { max-width: 10%; } .max-w-\[40ch\] { max-width: 40ch; } .max-w-\[75\%\] { max-width: 75%; } .flex-grow { flex-grow: 1; } .resize { resize: both; } .flex-col { flex-direction: column; } .items-start { align-items: flex-start; } .items-center { align-items: center; } .justify-center { justify-content: center; } .self-start { align-self: flex-start; } .self-end { align-self: flex-end; } .overflow-y-scroll { overflow-y: scroll; } .truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .bg-lightGrey { --tw-bg-opacity: 1; background-color: rgb(243 244 246 / var(--tw-bg-opacity)); } .bg-white { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity)); } .p-none { padding: 0; } .py-size-0 { padding-top: clamp(0.83rem, 0.90rem + -0.32vw, 0.67rem); padding-bottom: clamp(0.83rem, 0.90rem + -0.32vw, 0.67rem); } .pt-size-0 { padding-top: clamp(0.83rem, 0.90rem + -0.32vw, 0.67rem); } .pl-none { padding-left: 0; } .pt-size-2 { padding-top: clamp(1.44rem, 1.12rem + 1.58vw, 2.25rem); } .text-center { text-align: center; } .text-right { text-align: right; } .text-size-0 { font-size: clamp(0.83rem, 0.90rem + -0.32vw, 0.67rem); } .text-size-2 { font-size: clamp(1.44rem, 1.12rem + 1.58vw, 2.25rem); } .text-base { font-size: clamp(1.00rem, 1.00rem + 0.00vw, 1.00rem); } .font-bold { font-weight: 700; } .font-semibold { font-weight: 600; } .outline { outline-style: solid; } .blur { --tw-blur: blur(8px); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } .grayscale { --tw-grayscale: grayscale(100%); filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); } .filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); }