@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--gray:oklch(65% .01 286);--background:color-mix(in srgb, white 94%, var(--gray));--foreground:color-mix(in srgb, black 95%, var(--gray));--hover:color-mix(in srgb, white 92%, var(--gray));--font-mono:"IBM Plex Mono", ui-monospace, monospace;color:var(--foreground);background:var(--background);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,sans-serif;font-size:16px;font-weight:400;line-height:24px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-Bold.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}@media (prefers-color-scheme:dark){:root{--background:color-mix(in srgb, black 85%, var(--gray));--foreground:color-mix(in srgb, white 80%, var(--gray));--hover:color-mix(in srgb, black 82%, var(--gray))}}*{box-sizing:border-box}body{min-width:280px;min-height:100svh;margin:0;padding:40px}::selection{color:#000;background:#ff0}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline-offset:5px;outline:1px dashed}button,input{font:inherit;color:inherit}button{cursor:pointer}.site-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}h1{font:inherit;letter-spacing:.025em;white-space:nowrap;margin:0;font-size:18px}time,time span{display:block}.cursor{animation:1s infinite blink}.music-player{width:280px;max-width:calc(100% - 110px);font:11px/22px var(--font-mono);-webkit-user-select:none;user-select:none;grid-template-columns:18px 112px 14px minmax(0,1fr) 14px;align-items:center;gap:6px;display:grid}.music-player audio{display:none}.music-play{opacity:.75;background:0 0;border:0;justify-content:center;align-items:center;width:18px;height:22px;padding:0;line-height:1;display:inline-flex}.music-play:hover{opacity:1}.music-icon-pause,.is-playing .music-icon-play{display:none}.is-playing .music-icon-pause{display:initial}.music-spectrum{min-width:0;height:22px;position:relative}.music-spectrum canvas{width:100%;height:22px;image-rendering:pixelated;display:block}.music-spectrum input{opacity:0;cursor:pointer;touch-action:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.music-spectrum:has(input:focus-visible){outline-offset:5px;outline:1px dashed}.music-step{opacity:.6;background:0 0;border:0;width:14px;height:22px;padding:0;font-size:18px;line-height:1}.music-step:hover{opacity:1}.music-title{white-space:nowrap;text-transform:uppercase;letter-spacing:.04em;opacity:.65;min-width:0;overflow:hidden}.music-title>span{white-space:nowrap;display:inline-block}.music-title.is-scrolling>span{animation:music-banner var(--title-duration,8s) ease-in-out infinite alternate}@keyframes music-banner{0%,18%{transform:translate(0)}82%,to{transform:translateX(var(--title-offset,0px))}}.music-message{text-align:right;grid-column:1/-1;font-size:10px;line-height:16px}.composition{grid-template-columns:480px 600px;align-items:start;gap:40px;margin-top:80px;display:grid}.terminal{min-width:0;padding-top:44px}.terminal-heading{margin-bottom:40px}.terminal-path{font:13px/22px var(--font-mono);opacity:.55;margin:0 0 16px}.terminal h2{font:inherit;letter-spacing:-.025em;margin:0 0 14px;font-size:36px;line-height:1.15}.terminal-dedication{opacity:.75;margin:0 0 6px;font-size:18px}.terminal-intro{margin:0;font-size:18px}.inline-command{font:14px var(--font-mono);border:0;border-bottom:1px solid color-mix(in srgb,currentColor 35%,transparent);background:0 0;padding:1px 4px}.inline-command:hover{background:var(--hover)}.terminal-output{font:14px/24px var(--font-mono);overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:var(--foreground) transparent;max-height:290px;overflow-y:auto}.terminal-output:empty{display:none}.terminal-echo{opacity:.6;overflow-wrap:anywhere}.terminal-result{white-space:pre-wrap;margin:8px 0 20px}.terminal-command-row{grid-template-columns:76px 1fr;gap:12px;display:grid}.terminal-command-row code{font:inherit}.terminal-command-row span{opacity:.65}.terminal-form{font:15px/26px var(--font-mono);align-items:baseline;gap:10px;padding:6px 0;display:flex}.prompt-label{white-space:nowrap}.prompt-marker{opacity:.55}.terminal-form input{width:0;min-width:0;caret-color:var(--foreground);caret-shape:block;background:0 0;border:0;border-radius:0;outline:none;flex:1;padding:0}.terminal-form:focus-within{box-shadow:0 1px color-mix(in srgb,currentColor 22%,transparent)}.terminal-form input::placeholder{color:var(--foreground);opacity:.35}.command-submit{opacity:.5;background:0 0;border:none;padding:0 4px}.command-submit:hover{opacity:1}.terminal-hint{opacity:.5;margin:8px 0 20px;font-size:13px;line-height:22px}.terminal-shortcuts{font:12px/24px var(--font-mono);flex-wrap:wrap;gap:12px;display:flex}.terminal-shortcuts button,.reflection-controls button{background:0 0;border:0;padding:0}.terminal-shortcuts button:hover,.reflection-controls button:hover{background:var(--hover)}.reflection-controls{border:0;flex-wrap:wrap;align-items:baseline;gap:12px;margin:48px 0 0;padding:0;font-size:14px;display:flex}.reflection-controls legend{float:left;opacity:.5;margin-right:4px;padding:0}.reflection-controls button{opacity:.45}.reflection-controls button[aria-pressed=true]{opacity:1}.reflection-controls button:disabled{cursor:wait}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sculpture{aspect-ratio:1;width:600px;position:relative}.orbit{width:74.6667%;height:74.6667%;position:absolute;top:15.8333%;left:12.6667%;overflow:visible}.orbit text{font-size:13px}.orbit-type{transform-origin:224px 224px;animation:60s linear infinite orbit}.sculpture:has(#blob-layer[data-environment=canvas][data-blob-state=ready]) .orbit{visibility:hidden}.cross{stroke:var(--background)}#blob-layer{position:absolute;inset:0}#blob-layer canvas{width:100%;height:100%;display:block;position:relative}.blob-fallback{width:100%;height:100%;display:block;position:absolute;inset:0}#blob-layer[data-blob-state=ready] .blob-fallback{visibility:hidden}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=1199px){.composition{grid-template-columns:minmax(280px,1fr) minmax(0,1.2fr);gap:20px}.sculpture{align-self:center;width:100%}}@media (width<=767px){body{padding:20px}.music-player{grid-template-columns:18px minmax(0,1fr) 14px 14px;gap:2px 6px;width:200px}.music-play{grid-area:1/1}.music-spectrum{grid-area:1/2}.music-previous{grid-area:1/3}.music-next{grid-area:1/4}.music-title{grid-area:2/2/3/5;justify-self:end;width:98px;max-width:100%;font-size:10px}.composition{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:48px}.terminal{padding-top:0}.terminal h2{font-size:30px}.terminal-heading{margin-bottom:28px}.reflection-controls{margin-top:28px}.sculpture{justify-self:center;width:min(480px,100%)}.terminal-form{gap:8px;font-size:14px}.terminal-form input{font-size:16px}}@media (prefers-reduced-motion:reduce){.cursor,.orbit-type,.music-title.is-scrolling>span{animation:none}}
