@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--neon-blue: #00f3ff;--neon-pink: #ff00ff;--neon-green: #39ff14;--bg-deep: #050510;--font-retro: "Geist Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-deep);color:#fff;font-family:var(--font-retro);overflow-x:hidden;min-height:100vh;min-height:100dvh;-webkit-text-size-adjust:100%}.os-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;opacity:0;transition:opacity 1s ease;position:relative}.os-container.booted{opacity:1}.crt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,transparent 50%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:9999}.scanlines{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(#12101000 50%,#0000001a 50%),linear-gradient(90deg,#ff000008,#00ff0003,#0000ff08);background-size:100% 3px,3px 100%;pointer-events:none;z-index:9998}.os-nav{padding:calc(18px + env(safe-area-inset-top)) calc(clamp(16px,3vw,40px) + env(safe-area-inset-right)) 0 calc(clamp(16px,3vw,40px) + env(safe-area-inset-left));display:flex;flex-wrap:wrap;justify-content:space-between;row-gap:8px;font-size:10px;letter-spacing:.3em;color:var(--neon-blue);text-shadow:0 0 5px var(--neon-blue)}.game-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:10;animation:stageEntry 1.5s cubic-bezier(.16,1,.3,1)}@keyframes stageEntry{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.brand-unit{display:flex;align-items:center;gap:80px;margin-bottom:20px}.logo-group{text-align:left}.logo-text{font-size:5.5rem;font-weight:900;letter-spacing:-.05em;color:#fff;text-shadow:3px 3px 0px var(--neon-pink),-3px -3px 0px var(--neon-blue);line-height:1}.math-f{font-family:serif;font-style:italic;color:var(--neon-blue);text-shadow:0 0 10px var(--neon-blue)}.subtitle{font-size:10px;letter-spacing:.5em;color:var(--neon-blue);margin-top:10px;opacity:.7}.hypercube-wrapper{position:relative;width:400px;height:400px}.hypercube-wrapper{cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;outline:none}.hypercube-wrapper:focus-visible{outline:1px dashed var(--neon-pink);outline-offset:6px}.forth-stage{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:0;transition:opacity .3s ease-out}.forth-stage.on{opacity:1}.action-hub{text-align:center;display:flex;flex-direction:column;align-items:center;gap:30px}.description-text{font-size:11px;color:var(--neon-blue);opacity:.8;line-height:1.8;letter-spacing:.2em;max-width:500px}.retro-terminal{width:400px;border:1px solid var(--neon-blue);background:#00f3ff0d;padding:12px;text-align:left;box-shadow:0 0 15px #00f3ff1a}.terminal-header{font-size:8px;background:var(--neon-blue);color:#000;padding:3px 8px;margin-bottom:12px;width:fit-content;font-weight:800}.terminal-input-row{display:flex;gap:12px;align-items:center}.cursor-prompt{color:var(--neon-green);font-weight:900;text-shadow:0 0 5px var(--neon-green)}.terminal-input-row input{background:transparent;border:none;outline:none;color:var(--neon-green);font-family:var(--font-retro);font-size:11px;flex:1}.blink{animation:blink 1s infinite steps(2)}@keyframes blink{0%{opacity:0}to{opacity:1}}.meta-footer{padding:40px;display:flex;justify-content:center;gap:100px}.meta-block{display:flex;flex-direction:column;gap:6px;align-items:center}.meta-block label{font-size:8px;color:var(--neon-pink);letter-spacing:.3em;text-shadow:0 0 5px var(--neon-pink)}.meta-block span{font-size:10px;color:var(--neon-blue);letter-spacing:.1em}@media(max-width:1024px){.brand-unit{flex-direction:column;gap:18px;margin-bottom:8px}.logo-text{font-size:clamp(2.3rem,12.5vw,3.8rem);text-align:center}.logo-group{text-align:center}.hypercube-wrapper{width:min(74vw,38dvh,340px);height:min(74vw,38dvh,340px)}.game-stage{gap:12px;padding:0 16px}.action-hub{width:100%;gap:18px}.description-text{max-width:34em;letter-spacing:.12em;padding:0 4px}.retro-terminal{width:min(440px,100%)}.meta-footer{gap:14px 36px;padding:20px 16px calc(20px + env(safe-area-inset-bottom));flex-wrap:wrap}}@media(max-width:600px){.os-nav{letter-spacing:.2em}.os-nav .hud{letter-spacing:.1em;font-size:9px}.terminal-input-row input{font-size:16px}.forth-presets{flex-wrap:wrap}.forth-presets button{padding:7px 10px;font-size:10px}.forth-out{max-height:min(84px,14dvh)}.meta-footer{gap:12px 24px}.meta-block label{font-size:7px}.meta-block span{font-size:9px}}@media(hover:none){.forth-presets button:hover{border-color:#00f3ff80;color:var(--neon-blue)}}html.tab-hidden *,html.tab-hidden *:before,html.tab-hidden *:after{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.forth-presets{display:flex;gap:8px;margin-top:10px}.forth-presets button{background:transparent;border:1px solid rgba(0,243,255,.5);color:var(--neon-blue);font-family:var(--font-retro);font-size:9px;letter-spacing:.15em;text-transform:uppercase;padding:3px 8px;cursor:pointer}.forth-presets button:hover,.forth-presets button:focus-visible{border-color:var(--neon-pink);color:var(--neon-pink);outline:none}.forth-out{margin-top:10px;max-height:84px;overflow-y:auto;font-size:10px;line-height:1.6;color:var(--neon-green);white-space:pre-wrap;overflow-wrap:anywhere}.forth-line.in{color:var(--neon-blue);opacity:.7}.forth-line.err{color:var(--neon-pink)}.hud{flex:0 0 100%;order:3;min-height:1.4em;color:var(--neon-green);text-shadow:0 0 5px var(--neon-green);letter-spacing:.2em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.boot-line{color:var(--neon-blue);text-shadow:0 0 5px var(--neon-blue);font-size:11px;min-height:1.6em;letter-spacing:.05em}a.forth-tag{text-decoration:none}a.forth-tag span{color:var(--neon-green);text-shadow:0 0 5px var(--neon-green)}a.forth-tag:hover span,a.forth-tag:focus-visible span{color:var(--neon-pink);outline:none}.forth-presets button.primary{border-color:var(--neon-green);color:var(--neon-green);box-shadow:0 0 8px #39ff1459}
