:root{--bg: #000000;--green: #00ff40;--green-dim: #0a8f2f;--red: #ff0000;--fg: #c8ffd4;color-scheme:dark}*{box-sizing:border-box}html,body,#app{margin:0;height:100%;background:var(--bg)}body{font-family:ui-monospace,JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;color:var(--fg);overflow:hidden;-webkit-text-size-adjust:100%}#app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000002e 3px);z-index:50;mix-blend-mode:multiply}.stage{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:6vh 16px 24px;gap:22px}.logo{filter:drop-shadow(0 0 14px rgba(0,255,64,.25));-webkit-user-select:none;user-select:none}.logo svg{width:clamp(180px,26vh,300px);height:auto;display:block}.logo.won #bar,.logo.won #censored{animation:censoredGlitch .5s steps(2) 1 both,censoredFall 1.1s cubic-bezier(.6,0,.9,.3) .5s 1 forwards;transform-origin:75px 95px}.logo.won #censored{animation-delay:0s,.62s}@keyframes censoredGlitch{0%{transform:translate(0)}25%{transform:translate(3px,-1px);filter:hue-rotate(80deg)}50%{transform:translate(-4px,1px)}75%{transform:translate(2px,2px);filter:hue-rotate(-40deg)}to{transform:translate(0)}}@keyframes censoredFall{to{transform:translateY(160px) rotate(28deg);opacity:0}}.term-wrap{width:min(760px,94vw);height:min(52vh,460px);background:#030a05d1;border:1px solid var(--green-dim);border-radius:6px;box-shadow:0 0 0 1px #0009,0 0 40px #00ff4014,inset 0 0 60px #00ff4008;display:flex;flex-direction:column;overflow:hidden}.term-bar{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:7px 10px;background:#00ff400f;border-bottom:1px solid var(--green-dim);font-size:12px;color:var(--green)}.term-dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,255,64,.5)}.term-title{margin-left:6px;letter-spacing:1px;opacity:.8}.term{flex:1 1 auto;overflow-y:auto;padding:12px 14px;font-size:14px;line-height:20px;white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;scrollbar-color:var(--green-dim) transparent}.term::-webkit-scrollbar{width:8px}.term::-webkit-scrollbar-thumb{background:var(--green-dim);border-radius:4px}.term .out{color:var(--fg)}.term .cmd{color:#fff}.term .sys{color:var(--green)}.term .err{color:#ff5a5a}.term .win{color:var(--green);text-shadow:0 0 8px var(--green)}.term .flag-hl{color:#ffd23f;font-weight:700;text-shadow:0 0 10px rgba(255,210,63,.65)}.prompt{color:var(--green)}.input-line{display:flex;align-items:baseline}.input-line input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:#fff;font:inherit;caret-color:var(--green);padding:0;margin:0}.term-keys{display:none}.hint{margin-top:10px;font-size:12px;color:#00ff408c;letter-spacing:.5px}.footer{margin-top:auto;padding-top:18px;display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:1px;color:var(--green-dim)}.footer a{color:#00ff4099;text-decoration:none;border-bottom:1px dashed rgba(0,255,64,.3);transition:color .15s,border-color .15s,text-shadow .15s}.footer a:hover,.footer a:focus-visible{color:var(--green);border-bottom-color:var(--green);text-shadow:0 0 8px rgba(0,255,64,.6)}.footer .sep{opacity:.5}@media(hover:none)and (pointer:coarse){.term{font-size:16px;line-height:22px;padding:10px 12px}.term-keys{display:flex;flex:0 0 auto;gap:6px;padding:6px;border-top:1px solid var(--green-dim);background:#00ff400f}.term-keys button{flex:1 1 0;min-height:34px;background:transparent;border:1px solid rgba(0,255,64,.35);border-radius:4px;color:var(--green);font:inherit;font-size:14px;line-height:1;letter-spacing:1px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.term-keys button:active{background:#00ff402e}.stage{padding:3vh 12px 16px;gap:16px}.logo svg{width:clamp(160px,22vh,260px)}}
