:root{--ground:#000;--ink:#fff;--ink-muted:#7d7d7d;--ink-ok:#5faf5f;--term-green:#33d17a;--term-blue:#2a7bde;--term-yellow:#e9ad0c;--term-red:#f66151;--term-magenta:#c061cb;--term-cyan:#33c7de;--gift-chatgpt:#10a37f;--gift-claude:#d97757;--gift-grok:#8ab4d8;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-size:clamp(1.125rem, min(1.75vw, 3vh), 2.5rem);--line-height:1.7;--measure:46ch;--blink-period:1.06s}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}*,:before,:after{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{height:100%}body{background:var(--ground);color:var(--ink);font-family:var(--font-mono);font-weight:400;font-size:var(--font-size);line-height:var(--line-height);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0;-webkit-user-select:none;user-select:none;cursor:none;margin:0;overflow:hidden}body.pointer{cursor:default}#app{justify-content:center;align-items:center;min-height:100%;display:flex}.cursor{vertical-align:text-bottom;background:var(--ink);width:1ch;height:1.15em;color:var(--ground);animation:blink var(--blink-period) steps(1, end) infinite;display:inline-block}.is-typing .cursor{animation:none}@keyframes blink{0%,50%{background:var(--ink);color:var(--ground)}50.01%,to{color:var(--ink);background:0 0}}@media (prefers-reduced-motion:reduce){.cursor{animation:none}}.system{color:var(--ink-muted)}.system--ok{color:var(--ink-ok)}.terminal{--line-height:1.3;line-height:var(--line-height);scrollbar-width:none;white-space:pre-wrap;overflow-wrap:anywhere;flex:1;min-width:0;height:100vh;padding:1lh 1ch;overflow-y:auto}.terminal__line{min-height:1lh}.terminal__user,.terminal__exec{color:var(--term-green)}.terminal__path,.terminal__dir{color:var(--term-blue)}.terminal__hint{color:var(--term-yellow)}.terminal__ok{color:var(--term-green)}.terminal .cursor{vertical-align:bottom;height:1lh}.finish{--line-height:1.3;line-height:var(--line-height);background:var(--ground);white-space:pre;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.confetti{opacity:.75;width:100%;height:100%;position:absolute;inset:0}.finish__stage{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.finish__page{width:calc(var(--letter-cols) * 1ch);height:calc(var(--letter-rows) * 1lh);font-size:.75em}.finish__foot{width:calc(var(--foot-cols) * 1ch);height:calc(var(--foot-rows) * 1lh);align-self:center;margin-block-end:2lh;position:relative}.finish__line,.finish__option{min-height:1lh}.finish__mark{width:calc(var(--mark-cols) * 1ch);height:1lh;color:var(--ink);opacity:.5;justify-content:center;align-items:center;transition:opacity .18s ease-out;display:flex;position:absolute;inset-block-start:0;inset-inline-start:0}.finish__mark svg{width:100%;height:76%}.finish-brand--claude .finish__mark{color:var(--gift-claude)}.finish__option{color:var(--ink-muted);--wash:transparent;background-image:linear-gradient(var(--wash), var(--wash));background-repeat:no-repeat;transition:color .18s ease-out;position:relative}.finish__option--on{color:var(--brand,var(--ink));--wash:color-mix(in srgb, var(--brand,var(--ink)) 12%, transparent)}.finish__option--on .finish__mark{opacity:1}.finish-brand--chatgpt{--brand:var(--gift-chatgpt)}.finish-brand--claude{--brand:var(--gift-claude)}.finish-brand--grok{--brand:var(--gift-grok)}.finish__option--on{background-size:100% 100%}@media (prefers-reduced-motion:no-preference){.finish-brand--chatgpt.finish__option--on{animation:.2s ease-out finish-wipe}.finish-brand--claude.finish__option--on{background-position:50%;animation:.22s ease-out finish-bloom}.finish-brand--claude.finish__option--on .finish__mark{animation:.42s ease-out finish-catch}.finish-brand--grok.finish__option--on:after{content:"";background:linear-gradient(100deg, transparent 42%, color-mix(in srgb, var(--brand) 34%, transparent) 50%, transparent 58%);background-size:260% 100%;animation:.42s ease-out finish-glint;position:absolute;inset:0}}@keyframes finish-wipe{0%{background-size:0 100%}}@keyframes finish-bloom{0%{background-size:0 100%}}@keyframes finish-catch{50%{opacity:.35}}@keyframes finish-glint{0%{background-position:180% 0}to{background-position:-80% 0}}.finish__frame{color:var(--brand,var(--ink))}.finish__frame-name{position:relative}.finish__frame-name .finish__mark{opacity:1;inset-inline-start:calc(var(--frame-mark) * 1ch)}.finish .cursor{vertical-align:bottom;height:1lh}.login{justify-content:center;display:flex;position:relative}.login__field{white-space:pre;justify-content:center;align-items:baseline;min-width:32ch;display:flex;position:relative}.login__input{width:100%;font:inherit;text-align:center;color:#0000;caret-color:#0000;-webkit-text-fill-color:transparent;background:0 0;border:0;outline:none;padding:0;position:absolute;inset:0}.login__input::selection{background:0 0}.login__prompt,.login__status,.login__accepted{text-align:center;margin:0;position:absolute;left:-50%;right:-50%}.login__prompt{bottom:calc(100% + 1lh)}.login__status,.login__accepted{top:calc(100% + 1lh)}.login__line{margin:0}.login__verdict{margin-block-end:1lh}.login.is-rejected .login__mask{animation:.26s ease-out forwards dissolve}@keyframes dissolve{to{opacity:0}}.login.is-pending .cursor{animation:none}@media (prefers-reduced-motion:reduce){.login.is-rejected .login__mask{opacity:0;animation:none}}.register{cursor:default;flex-direction:column;align-items:flex-start;gap:.75rem;max-width:60ch;padding:2rem;font-size:1rem;display:flex}.register input,.register button{font:inherit;cursor:revert}.register__status{min-height:1lh;margin:0}
