@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-ext-wght-normal-EocZY2iu.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #030504;--ink: #dfe9e3;--muted: #8ea89b;--dim: #4f6b5e;--grass: #5fd3a8;--ember: #ff7a2f;--crimson: #d2402c;--line: rgba(95, 211, 168, .22);--panel: rgba(3, 6, 5, .72);--font: "JetBrains Mono Variable", ui-monospace, Menlo, Consolas, monospace;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}html.is-gated{overflow:hidden}::selection{background:var(--grass);color:var(--bg)}a{color:inherit}:focus-visible{outline:1px dashed var(--grass);outline-offset:4px}#world{position:fixed;inset:0;width:100vw;height:100vh;display:block;z-index:0}.no-webgl #world{display:none}.no-webgl body{background:radial-gradient(ellipse at 50% 20%,#0d2a20,var(--bg) 70%)}.accent{color:var(--ember)}.chrome{position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;gap:1.5rem;padding:1.1rem clamp(1rem,3vw,2.25rem);font-size:.8rem;letter-spacing:.04em;pointer-events:none;background:linear-gradient(to bottom,rgba(3,5,4,.75),transparent)}.chrome>*{pointer-events:auto}.brand{text-decoration:none;font-weight:700;color:var(--ink)}.nav{display:flex;gap:1.25rem;margin-left:auto}.nav a{text-decoration:none;color:var(--muted);transition:color .2s}.nav a:before{content:"[ ";opacity:0;transition:opacity .2s}.nav a:after{content:" ]";opacity:0;transition:opacity .2s}.nav a:hover,.nav a[aria-current]{color:var(--grass)}.nav a[aria-current]:before,.nav a[aria-current]:after{opacity:1}.sound{font:inherit;color:var(--muted);background:none;border:1px solid var(--line);padding:.3rem .7rem;cursor:pointer}.sound[aria-pressed=true]{color:var(--grass);border-color:var(--grass)}.gate{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:2rem;background:#030504f0;transition:opacity 1.1s var(--ease),backdrop-filter 1.1s}.gate--leaving{opacity:0;pointer-events:none}.gate__inner{text-align:center;max-width:34rem}.gate__art{margin:0 0 1rem;color:var(--dim);font-size:.78rem;line-height:1.25}.gate__title{margin:0;font-size:clamp(1.6rem,5vw,2.6rem);letter-spacing:-.02em}.gate__sub{color:var(--muted);margin:.4rem 0 1.6rem}.gate__progress{color:var(--grass);margin:0 0 1.5rem}.gate__actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.btn{font:inherit;color:var(--muted);background:none;border:none;padding:.6rem .4rem;cursor:pointer;transition:color .2s}.btn:hover,.btn:focus-visible{color:var(--ink)}.btn--primary{color:var(--grass)}#story{position:relative;z-index:1}.stop{min-height:100vh;min-height:100svh;display:flex;align-items:center;padding:6rem clamp(1.25rem,5vw,5rem)}.stop[data-char="-1"]{justify-content:flex-end}.stop[data-char="1"]{justify-content:flex-start}.panel{position:relative;width:min(30rem,44vw);padding:1.75rem 1.9rem;background:var(--panel);border:1px solid var(--line);backdrop-filter:blur(3px);opacity:0;filter:blur(6px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}.panel:before,.panel:after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--grass)}.panel:before{top:-1px;left:-1px;border-right:none;border-bottom:none}.panel:after{bottom:-1px;right:-1px;border-left:none;border-top:none}.stop[data-char="-1"] .panel{transform:translate(60px)}.stop[data-char="1"] .panel{transform:translate(-60px)}.stop.is-visible .panel{opacity:1;filter:none;transform:none}.eyebrow{margin:0 0 .6rem;font-size:.75rem;letter-spacing:.08em;text-transform:lowercase;color:var(--muted)}h1,h2,h3{font-weight:700;letter-spacing:-.02em;line-height:1.1}h2{margin:0 0 1rem;font-size:clamp(1.5rem,2.6vw,2.1rem)}.lede{margin:0 0 1rem;color:var(--ink);opacity:.88}.chips{display:flex;flex-wrap:wrap;gap:.35rem .5rem;list-style:none;margin:0;padding:0;font-size:.72rem;color:var(--grass)}.chips li:before{content:"[";color:var(--dim);margin-right:.25em}.chips li:after{content:"]";color:var(--dim);margin-left:.25em}.links{display:flex;flex-wrap:wrap;gap:1.25rem;margin-top:1.1rem}.links a{text-decoration:none;color:var(--ember)}.links a:hover{text-decoration:underline;text-underline-offset:4px}.stop--hero{align-items:flex-end;justify-content:flex-start}.panel--hero{width:min(40rem,90vw);background:none;border:none;backdrop-filter:none;padding:0;transform:translateY(30px)}.panel--hero:before,.panel--hero:after{display:none}.stop--hero:before{content:"";position:absolute;inset:auto auto 0 0;width:min(48rem,100vw);height:70vh;background:radial-gradient(ellipse at 20% 80%,rgba(3,5,4,.85),rgba(3,5,4,.5) 45%,transparent 70%);pointer-events:none}.stop--hero,.stop--hero .panel{position:relative}.panel--hero h1{margin:0 0 .75rem;font-size:clamp(2.4rem,7vw,5.2rem);text-shadow:0 0 30px rgba(0,0,0,.9)}.panel--hero .lede{max-width:28rem;color:var(--muted)}.hint{color:var(--dim);font-size:.8rem}.blink{display:inline-block;animation:blink 1.4s steps(2) infinite;color:var(--grass)}@keyframes blink{50%{opacity:0}}.facts{margin:1.2rem 0 0;display:grid;gap:.4rem;font-size:.8rem}.facts div{display:grid;grid-template-columns:4.5rem 1fr}.facts dt{color:var(--dim)}.facts dd{margin:0;color:var(--muted)}.panel--wide{width:min(38rem,47vw)}.scroller{max-height:min(58vh,34rem);overflow-y:auto;overscroll-behavior:contain;margin:0 -.6rem;padding:0 .6rem 1.5rem;scrollbar-width:thin;scrollbar-color:var(--dim) transparent;mask-image:linear-gradient(to bottom,#000 calc(100% - 2rem),transparent)}.lede--small{font-size:.82rem;color:var(--muted)}.stats{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin:0 0 1rem;font-size:.78rem;color:var(--muted)}.stats b{color:var(--grass);font-size:1.05rem;margin-right:.3em}.native{font-family:Noto Sans Ethiopic,Nyala,system-ui,sans-serif;font-weight:400;color:var(--muted);font-size:.85em}.subhead{margin:.4rem 0 .6rem;font-size:.72rem;font-weight:500;letter-spacing:.08em;color:var(--dim)}.subhead:before{content:"// "}.platforms{color:var(--dim);font-size:.72rem}.status{flex:none;font-size:.65rem;letter-spacing:.04em;white-space:nowrap;color:var(--dim)}.status:before{content:"●";margin-right:.35em}.status--released{color:var(--grass)}.status--in-development{color:var(--ember)}.app-icon{flex:none;width:2.1rem;height:2.1rem;border-radius:.55rem;object-fit:cover;background:color-mix(in srgb,var(--accent) 30%,#050807);outline:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.app-icon--mono{display:grid;place-items:center;font-weight:700;color:var(--accent)}.app{border-bottom:1px dashed var(--line)}.app summary{display:flex;align-items:center;gap:.75rem;padding:.6rem .2rem;cursor:pointer;list-style:none}.app summary::-webkit-details-marker{display:none}.app summary:hover .app__name,.app[open] .app__name{color:var(--accent)}.app__index{flex:none;width:1.4rem;font-size:.65rem;color:var(--dim)}.app__main,.tile__main{display:grid;min-width:0;flex:1}.app__name,.tile__name{font-weight:600;font-size:.88rem;color:var(--ink);transition:color .2s}.app__tag,.tile__tag{font-size:.72rem;color:var(--muted);line-height:1.45}.app__tag{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.app[open] .app__tag{white-space:normal}.app__body{display:flex;gap:1rem;padding:.2rem .2rem 1rem 2.15rem;animation:unfold .45s var(--ease)}.app__shot{flex:none;width:6.5rem;aspect-ratio:9 / 19.5;object-fit:cover;object-position:top;border-radius:.8rem;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:#020302}.app__meta{display:grid;align-content:start;gap:.6rem}.app__meta .platforms{margin:0}.app__meta .links{margin-top:.2rem;gap:.9rem;font-size:.8rem}@keyframes unfold{0%{opacity:0;transform:translateY(-6px)}}.tiles{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.tiles.scroller{margin:0 -.6rem}.tile{display:flex;gap:.65rem;height:100%;padding:.65rem;text-decoration:none;border:1px solid var(--line);transition:border-color .2s,background .2s}.tile:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.tile:hover .tile__name{color:var(--accent)}.tile__foot{display:flex;flex-wrap:wrap;gap:.2rem .6rem;margin-top:.35rem}.ml{padding:.9rem 0 1.1rem;border-bottom:1px dashed var(--line)}.ml h3{margin:0 0 .35rem;font-size:.95rem}.ml p{margin:0 0 .5rem;font-size:.8rem;color:var(--ink);opacity:.88}.points{margin:0 0 .7rem;padding:0;list-style:none;display:grid;gap:.3rem;font-size:.74rem;color:var(--muted)}.points li{padding-left:1.1rem;text-indent:-1.1rem}.points li:before{content:"› ";color:var(--ember)}.ml .links{margin-top:.6rem;font-size:.8rem}.skills{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem}.skill h3{margin:0 0 .3rem;font-size:.9rem}.skill p{margin:0 0 .6rem;font-size:.78rem;color:var(--muted)}.shot{position:relative;margin:0 0 1rem;aspect-ratio:16 / 9;border:1px solid var(--line);overflow:hidden;cursor:pointer;background:#020302}.shot__ascii,.shot__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;transition:opacity .6s var(--ease)}.shot__img{opacity:0}.shot--ready:hover .shot__img,.shot--ready:focus-visible .shot__img,.shot--revealed .shot__img{opacity:1}.shot--ready:hover .shot__ascii,.shot--revealed .shot__ascii{opacity:0}.shot figcaption{position:absolute;right:.5rem;bottom:.35rem;font-size:.65rem;color:var(--dim);pointer-events:none;transition:opacity .3s}.shot--ready:hover figcaption,.shot--revealed figcaption{opacity:0}.shot--empty{display:none}.archive{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}.archive a,.archive div{display:grid;gap:.1rem;padding:.55rem 0;border-bottom:1px dashed var(--line);text-decoration:none}.archive__name{color:var(--ink);font-weight:600}.archive__name:before{content:"› ";color:var(--ember)}.archive__desc{font-size:.75rem;color:var(--muted)}.archive__role{font-size:.65rem;color:var(--dim)}.archive a:hover .archive__name{color:var(--grass)}.cta{display:inline-block;margin:.25rem 0 .5rem;font-size:clamp(1rem,1.8vw,1.3rem);color:var(--grass);text-decoration:none;border-bottom:1px solid var(--grass)}.cta:hover{color:var(--ink);border-color:var(--ink)}.fine{margin:1.5rem 0 0;font-size:.68rem;color:var(--dim)}@media(max-width:760px),(max-aspect-ratio:17/20){html,body{font-size:14px}.nav{display:none}.sound{margin-left:auto}.stop,.stop[data-char="-1"],.stop[data-char="1"]{justify-content:center;align-items:flex-end;padding:46vh 1rem 2.5rem}.panel,.panel--wide{width:100%;padding:1.3rem 1.2rem;background:#030605db}.stop[data-char="-1"] .panel,.stop[data-char="1"] .panel{transform:translateY(40px)}.skills,.tiles{grid-template-columns:1fr}.scroller{max-height:none;overflow:visible;mask-image:none}.app__shot{width:5rem}.app__index{display:none}.app__body{padding-left:.2rem}.stop--hero{padding-bottom:3.5rem}}@media(prefers-reduced-motion:reduce){.panel,.gate{transition-duration:.01s}.blink{animation:none}}html:not(.is-list){overflow:hidden}html:not(.is-list) #story,html:not(.is-list) .nav{display:none}html.is-list #world,html.is-list .hud,html.is-list .minimap,html.is-list .joystick,html.is-list .hud-prompt,html.is-list .item-label,html.is-list .region-banner{display:none!important}html.is-list body{background:radial-gradient(ellipse at 50% 0%,#0b1f18,var(--bg) 60%) fixed}html.is-list .stop,html.is-list .stop[data-char="-1"],html.is-list .stop[data-char="1"]{min-height:0;display:block;padding:2.5rem clamp(1rem,4vw,2rem)}html.is-list .stop--hero{padding-top:7rem}html.is-list .stop--hero:before{display:none}html.is-list .panel,html.is-list .panel--wide{width:min(46rem,100%);margin:0 auto;opacity:1;filter:none;transform:none}html.is-list .scroller{max-height:none;overflow:visible;mask-image:none}.view-btn,.hint__play{font:inherit;color:var(--ember);background:none;border:none;padding:.3rem .2rem;cursor:pointer}.view-btn{margin-left:auto}html.is-list .view-btn{margin-left:0}.view-btn:hover,.hint__play:hover{color:var(--ink)}.hint__play{padding:0;text-decoration:underline;text-underline-offset:3px}.gate__skip{margin:1.2rem 0 0}.btn--small{font-size:.75rem;color:var(--dim)}.hud{position:fixed;inset:0;z-index:11;pointer-events:none;font-size:.78rem}.hud[hidden]{display:none}.hud p{margin:0}.hud__left,.hud__right{position:absolute;top:4rem;padding:.45rem .8rem;background:#030605b3;border:1px solid var(--line)}.hud__left{left:clamp(1rem,3vw,2.25rem)}.hud__right{right:clamp(1rem,3vw,2.25rem);text-align:right}.hud__region{color:var(--ink);font-weight:600}.hud__local,.hud__clock{color:var(--muted);font-size:.7rem}.hud__total{color:var(--muted)}.hud__total b{color:var(--grass);font-size:1rem}.hud__gem{color:var(--ember)}.hud__help{position:absolute;left:50%;bottom:1.2rem;transform:translate(-50%);padding:.3rem .7rem;background:#030605a6;color:var(--muted);font-size:.72rem;white-space:nowrap;transition:opacity 1.2s}.hud__help.is-faded{opacity:0}.hud__btn{font:inherit;font-size:.75rem;color:var(--muted);background:#030605b3;border:1px solid var(--line);padding:.4rem .7rem;cursor:pointer}.hud__btn:hover{color:var(--ink);border-color:var(--grass)}.hud-prompt{position:fixed;left:50%;bottom:4.5rem;z-index:12;transform:translate(-50%);font:inherit;font-size:.88rem;color:var(--bg);background:var(--grass);border:none;padding:.55rem 1.1rem;cursor:pointer;animation:bob 1.6s ease-in-out infinite}.hud-prompt .hud__gem{color:var(--bg)}.hud-prompt[hidden]{display:none}@keyframes bob{50%{transform:translate(-50%,-4px)}}.item-label{position:fixed;left:0;top:0;z-index:10;pointer-events:none;font-size:.7rem;color:var(--muted);white-space:nowrap;padding:.12rem .45rem;background:#030605b8;border:1px solid var(--line)}.item-label:before{content:"◇ ";color:var(--dim)}.item-label.is-found{color:var(--grass)}.item-label.is-found:before{content:"◆ ";color:var(--ember)}.region-banner{position:fixed;left:50%;top:22vh;z-index:11;transform:translate(-50%,-.6rem);text-align:center;pointer-events:none;opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease);text-shadow:0 0 24px rgba(0,0,0,.95)}.region-banner.is-on{opacity:1;transform:translate(-50%)}.region-banner p{margin:0}.region-banner__name{font-size:clamp(1.6rem,4vw,2.6rem);font-weight:700;letter-spacing:-.02em}.region-banner__name:before,.region-banner__name:after{content:" — ";color:var(--dim)}.region-banner__blurb{color:var(--muted);font-size:.85rem}.minimap{position:fixed;left:clamp(1rem,3vw,2.25rem);bottom:1.2rem;z-index:11;width:200px;border:1px solid var(--line);cursor:pointer;image-rendering:pixelated}.minimap[hidden]{display:none}.minimap:hover{border-color:var(--grass)}.map-overlay{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:4rem 1rem 1rem;background:#020403cc}.map-overlay[hidden]{display:none}.map-overlay__frame{position:relative;max-width:100%;max-height:100%;overflow:auto;padding:1rem 1.2rem 1.2rem;background:#030605eb;border:1px solid var(--line)}.map-overlay__head{display:flex;align-items:baseline;gap:1rem;margin-bottom:.7rem;padding-right:4rem}.map-overlay__head h2{margin:0;font-size:1.1rem}.map-overlay__map{position:relative;width:min(1000px,90vw,calc((100vh - 220px)*1.212))}.map-overlay__map canvas{display:block;image-rendering:pixelated}.map-overlay__places{position:absolute;inset:0}.place{position:absolute;transform:translate(-50%,-50%);display:grid;gap:.1rem;font:inherit;font-size:.72rem;text-align:center;color:var(--ink);background:#030605cc;border:1px solid var(--line);padding:.3rem .55rem;white-space:nowrap}button.place{cursor:pointer}button.place:hover{border-color:var(--grass);color:var(--grass)}.place span{color:var(--muted);font-size:.65rem}.place--unknown{color:var(--dim)}.map-overlay__foot{display:flex;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}.play-overlay{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:4.5rem 1rem 1.5rem;background:#0204038c;opacity:0;transition:opacity .35s var(--ease)}.play-overlay[hidden]{display:none}.play-overlay.is-open{opacity:1}.play-overlay .panel{opacity:1;filter:none;transform:none;transition:none;width:min(40rem,92vw);max-height:100%;overflow-y:auto;overscroll-behavior:contain;background:#030605f0}.play-overlay__close{position:absolute;top:.6rem;right:.8rem;z-index:1;font:inherit;font-size:.72rem;color:var(--muted);background:none;border:none;cursor:pointer}.play-overlay__close:hover{color:var(--ink)}.card h2{margin:.2rem 0 .5rem}.card__head{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.app-icon--lg{width:3.6rem;height:3.6rem;border-radius:.9rem;font-size:1.4rem}.card__body{display:flex;gap:1.2rem;align-items:flex-start}.card__shot{display:block;border:1px solid var(--line);background:#020302}.card__shot--phone{flex:none;width:8.5rem;border-radius:.9rem}.card__shot--wide{flex:none;width:14rem}.card__shot--cover{width:100%;margin:.4rem 0 1rem}.card .skills{margin-top:.6rem}.joystick{position:fixed;left:1.4rem;bottom:1.6rem;z-index:12;width:7.5rem;height:7.5rem;border-radius:50%;border:1px solid var(--line);background:#03060580;touch-action:none;display:grid;place-items:center}.joystick[hidden]{display:none}.joystick__knob{width:3rem;height:3rem;border-radius:50%;background:color-mix(in srgb,var(--grass) 35%,transparent);border:1px solid var(--grass)}.toast{position:fixed;left:50%;bottom:8rem;z-index:16;max-width:min(34rem,90vw);transform:translate(-50%,1rem);padding:.7rem 1.1rem;font-size:.82rem;color:var(--ink);background:#030605eb;border:1px solid var(--grass);opacity:0;pointer-events:none;transition:opacity .4s var(--ease),transform .4s var(--ease)}.toast.is-on{opacity:1;transform:translate(-50%)}@media(max-width:760px),(max-aspect-ratio:17/20){.hud__left,.hud__right{top:3.4rem;padding:.35rem .55rem}.hud__left{left:.6rem}.hud__right{right:.6rem}.hud__help{display:none}.minimap{left:auto;right:.8rem;bottom:1.6rem;width:120px}.hud-prompt{bottom:10rem}.toast{bottom:11rem}.card__body{flex-direction:column}.card__shot--phone{width:7rem}.card__shot--wide{width:100%}.view-btn{font-size:.75rem}}
