:root{--color-primary:#ff7500;--color-secondary:#cab49f;--color-bg:#312520;--color-text:#f2e8db;--color-muted:var(--color-secondary);--color-border:#6b5647;--color-focus:var(--color-primary);--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--statusbar-overhang:1.5rem;--os-statusbar-height:0px}html.js{--os-statusbar-height:min(clamp(1.8rem, 5vh, 2.5rem), 8vh)}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;margin:0;font-size:clamp(.95rem,1.2vw + .6rem,1.25rem);line-height:1.4;overflow:hidden auto}a{color:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.frame{top:calc(var(--os-statusbar-height) + min(clamp(1rem, 3vh, 2.5rem), 6vh));min-height:calc(100vh - var(--os-statusbar-height) - 2 * min(clamp(1rem, 3vh, 2.5rem), 6vh) - var(--statusbar-overhang));min-height:calc(100dvh - var(--os-statusbar-height) - 2 * min(clamp(1rem, 3vh, 2.5rem), 6vh) - var(--statusbar-overhang));border:clamp(3px, .4vw, 6px) solid var(--color-secondary);flex-direction:column;display:flex;position:absolute;left:min(clamp(1rem,3vw,2.5rem),6vw);right:min(clamp(1rem,3vw,2.5rem),6vw)}.topbar{z-index:2;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(.6rem,6vw,3rem);width:max-content;max-width:calc(100% - 2rem);display:flex;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.topbar__link{letter-spacing:.08em;text-transform:uppercase;color:var(--color-secondary);background:var(--color-bg);padding:0 .6em;font-size:min(clamp(.7rem,2.4vw,1.5rem),5vw);text-decoration:none}.topbar__link:hover,.topbar__link[aria-current=page]{color:var(--color-primary)}.screen{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.screen>*{pointer-events:auto}.screen--content{flex:1 0 auto;justify-content:flex-start;align-items:flex-start;padding:clamp(1rem,3vh,2rem) clamp(1rem,3vw,2rem) clamp(1.5rem,4vw,3rem);position:static;inset:auto}.statusbar{z-index:2;max-width:calc(100% - 2*min(clamp(1rem,3vw,2rem),5vw));position:absolute;bottom:0;left:min(clamp(1rem,3vw,2rem),5vw);transform:translateY(50%)}.statusbar__text{background:var(--color-bg);color:var(--color-secondary);margin:0;padding:0 .5em;font-size:min(clamp(.4rem,3vw - 2px,1.045rem),4vw);line-height:1.3}.os-statusbar{height:var(--os-statusbar-height);z-index:20;align-items:center;gap:var(--space-2);background:var(--color-bg);border-bottom:1px solid var(--color-border);font-family:var(--font-mono);color:var(--color-secondary);white-space:nowrap;grid-template-columns:1fr auto 1fr;padding:0 min(clamp(.6rem,2vw,1.2rem),4vw);font-size:min(clamp(.65rem,1.4vw,.85rem),3.2vw);display:grid;position:fixed;top:0;left:0;right:0;overflow:hidden}html.no-js .os-statusbar{display:none}.os-statusbar__host{text-overflow:ellipsis;grid-column:1;justify-self:start;margin:0;overflow:hidden}.os-statusbar__clock{letter-spacing:.04em;grid-column:2;justify-self:center;margin:0}.os-statusbar__date-group{margin-right:.35em}.os-statusbar__tray{justify-self:end;align-items:center;gap:var(--space-1);grid-column:3;display:flex}.os-statusbar__icon{flex-shrink:0;width:1.2em;height:1.2em}@media (width<=22rem){.os-statusbar__date-group{display:none}}@media (width<=30rem){.os-statusbar__host{display:none}}.lang-toggle{font-family:var(--font-mono);font-size:inherit;letter-spacing:.05em;color:var(--color-secondary);border:1px solid var(--color-secondary);cursor:pointer;background:0 0;padding:.15em .5em}.lang-toggle:hover{color:var(--color-primary);border-color:var(--color-primary)}.lang-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.prompt__path{color:var(--color-secondary)}.prompt__arrow{color:var(--color-primary);margin:0 .5em;display:inline-block}.terminal{--terminal-font-size:clamp(.9rem, 1.5vw, 1.0625rem);gap:var(--space-3);width:100%;max-width:100%;font-size:var(--terminal-font-size);text-align:left;flex-direction:column;margin:0;display:flex}.terminal__line{margin:0}.terminal__command{color:var(--color-text)}.terminal__line--success,.terminal__line--error{color:var(--color-primary)}.terminal-buttons{gap:var(--space-3);flex-wrap:wrap;display:flex}.terminal-btn{font-family:var(--font-mono);font-size:var(--terminal-font-size);color:var(--color-primary);border:1px solid var(--color-primary);cursor:pointer;background:0 0;padding:.4em 1.2em}.terminal-btn:hover{color:var(--color-bg);background:var(--color-primary)}.terminal-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.terminal-btn--primary{color:var(--color-bg);background:var(--color-primary)}.terminal-btn--primary:hover{color:var(--color-primary);background:0 0}.terminal-btn:disabled{cursor:not-allowed;opacity:.6}html.no-js .terminal-btn--js-only,html.no-js .terminal-buttons--confirm{display:none}.smiley-wrap{--face-len:3;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;display:inline-flex}.smiley-wrap[hidden]{display:none}.smiley-wrap.is-dragging{cursor:grabbing}.smiley-wrap.is-settling{transition:transform .7s}.smiley{--shake-intensity:1;color:var(--color-primary);font-family:var(--font-mono);font-weight:700;font-size:min(clamp(1.65rem, calc(min(66vw, 97.5vh) / var(--face-len,3)), 15rem), 30vw);letter-spacing:.14em;white-space:nowrap;margin:0;line-height:1}@media (width<=47.9375rem){.smiley{font-size:min(clamp(1.65rem, calc(min(45vw, 52.5vh) / var(--face-len,3)), 6rem), 16.5vw)}}.smiley.is-shaking{animation:.4s smiley-shake}.smiley.is-easing{animation:.25s cubic-bezier(.16,1,.3,1) face-ease}.smiley .eye{transition:transform .15s;display:inline-block}@keyframes smiley-shake{0%,to{transform:translate(0)}20%{transform:translateX(calc(-.03em * var(--shake-intensity)))}40%{transform:translateX(calc(.03em * var(--shake-intensity)))}60%{transform:translateX(calc(-.02em * var(--shake-intensity)))}80%{transform:translateX(calc(.02em * var(--shake-intensity)))}}@keyframes face-ease{0%{opacity:.4;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.smiley-wrap--mini{opacity:.9;z-index:3;justify-content:center;width:calc(7ch + 1em);position:absolute;bottom:min(clamp(3rem,9vh,6rem),12vh);right:min(clamp(4rem,11vw,8rem),14vw)}@media (width>=48rem){.smiley-wrap--mini{bottom:min(clamp(3.3rem,9.9vh,6.6rem),13vh);right:min(clamp(4.4rem,12.1vw,8.8rem),15vw)}}@media (width<=47.9375rem){.smiley-wrap--mini{bottom:min(clamp(5rem,14vh,9rem),20vh)}}.smiley-wrap--mini .smiley{text-align:center;font-size:min(clamp(2.76rem,7.475vw,5.175rem),12vw)}@media (width<=47.9375rem){.smiley-wrap--mini .smiley{font-size:min(clamp(3.84rem,10.4vw,7.2rem),16vw)}}.smiley-wrap--mini.smiley-wrap--top{top:min(clamp(3rem,9vh,6rem),12vh);bottom:auto}.smiley-wrap--mini.smiley-wrap--center-x{left:50%;right:auto;transform:translate(-50%)}.terminal--fill{height:100%;min-height:0}.terminal--fill>.terminal__line{flex-shrink:0}.terminal--fill>.fetch{flex:auto;min-height:0}.fetch{align-items:stretch;gap:var(--space-4);grid-template-columns:minmax(11rem,26%) minmax(0,1fr);width:100%;max-width:74rem;display:grid}.fetch__art{color:var(--color-primary);font-family:var(--font-mono);white-space:pre;text-align:center;align-self:center;margin:0;font-size:clamp(.34rem,1.35vw,.72rem);line-height:1.08}.fetch__info{gap:var(--space-3);flex-direction:column;min-width:0;min-height:0;font-size:clamp(.72rem,.45vw + .85vh,1.05rem);display:flex}.fetch-header{flex-shrink:0}.fetch-header__id{color:var(--color-text);margin:0;font-size:1.05em}.fetch-header__id .fetch-accent{color:var(--color-primary);font-weight:700}.fetch-rule{border:0;border-top:1px solid var(--color-border);margin:.4em 0}.fetch-kv{flex-direction:column;gap:.2em;margin:0;padding:0;list-style:none;display:flex}.fetch-kv li{flex-wrap:wrap;column-gap:.6em;margin:0;display:flex}.fetch-kv__key{color:var(--color-primary);white-space:nowrap;flex:0 0 10ch}.fetch-kv__value{min-width:0;color:var(--color-text);flex:1}.fetch-box{border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);position:relative}.fetch-box--skills{flex-shrink:0}.fetch-box--projects{flex-direction:column;flex:1 0 auto;max-height:42rem;display:flex}.fetch-box__title{background:var(--color-bg);color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;margin:0;padding:0 .6em;font-size:.85em;font-weight:700;position:absolute;top:0;left:1em;transform:translateY(-50%)}@media (width<=48rem),(height<=43.75rem){.fetch{grid-template-columns:1fr}.fetch__art{display:none}}.skills-group{flex-wrap:wrap;column-gap:.6em;margin-top:.3em;display:flex}.skills-group:first-child{margin-top:0}.skills-group__label{color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;flex:0 0 21ch;margin:0;font-size:.85em}.skills-group .fetch-kv__value{flex:1;min-width:0;margin:0}@media (width<=30rem){.skills-group{flex-direction:column;gap:.1em}.skills-group__label{white-space:normal;flex-basis:auto}.fetch-kv li{flex-direction:column;gap:.1em}.fetch-kv__key{flex-basis:auto}}.skills-quote{border-top:1px dashed var(--color-border);color:var(--color-muted);margin:.8em 0 0;padding-top:.5em;font-size:.9em;font-style:italic}.project-viewer{align-items:stretch;gap:var(--space-3);flex:1 0 auto;margin-top:.3em;display:flex}.project-viewer__stage{flex-direction:column;flex:auto;min-width:0;display:flex}.project-card{flex-direction:column;flex:1 0 auto;display:flex}.project-card[hidden]{display:none}.project-card__head{flex-wrap:wrap;flex-shrink:0;align-items:baseline;column-gap:.6em;margin:0;display:flex}.project-card__name{color:var(--color-text);font-size:1.05em;font-weight:700}.project-card__stars{color:var(--color-muted);letter-spacing:.05em;font-size:.85em}.project-card__link{border:1px solid var(--color-border);color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em;flex:none;margin-left:auto;padding:.3em .9em;font-size:.78em;line-height:1;text-decoration:none}a.project-card__link:hover,a.project-card__link:focus-visible{color:var(--color-primary);border-color:var(--color-primary)}.project-card__link--private{opacity:.6}.project-card__stack{flex-wrap:wrap;flex-shrink:0;align-content:flex-start;gap:.3em;min-height:2.85em;margin:.6em 0 0;padding:0;list-style:none;display:flex}.project-card__stack li{border:1px solid var(--color-border);color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;padding:.1em .5em;font-size:.7em}.project-card__body{flex:0 0 12.8em;margin-top:.6em;padding-right:.6em;overflow-y:auto}.project-card__desc{max-width:42em;color:var(--color-text);margin:0;line-height:1.6}.project-card__desc+.project-card__desc{margin-top:.6em}.mention-link{color:var(--color-primary);font-weight:700;text-decoration:none}.mention-link:hover,.mention-link:focus-visible{text-decoration:underline}.project-viewer__nav{flex-direction:column;flex:none;justify-content:space-between;align-self:stretch;align-items:center;gap:.5em;display:flex}.project-viewer__btn{text-align:center;flex:none;justify-content:center;align-items:center;width:1.8em;height:1.8em;padding:0;font-size:.8em;line-height:1;display:flex}.project-viewer__index{color:var(--color-muted);letter-spacing:.02em;text-align:center;white-space:nowrap;margin:0;font-size:.72em}@media (width<=48rem),(height<=43.75rem){.project-viewer{gap:var(--space-2);flex-direction:column-reverse}.project-viewer__nav{flex-direction:row;justify-content:center;align-self:center;gap:.75em}.project-viewer__btn{width:1.4em;height:1.4em;font-size:.75em}}
