:root{--bg:#070b07;--green:#1bff6f;--green2:#adff2f;--muted:#96d9a3;--bright:#d5ffdc;--border:#0f3}*{box-sizing:border-box}body,html{height:100%;margin:0}body{font-family:Share Tech Mono,monospace;background:var(--bg);color:var(--bright)}.page{opacity:0;transition:opacity .6s ease}.page.ready{opacity:1}.preloader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:radial-gradient(1200px 600px at 50% 10%,#0b220f 0,#07150c 30%,#040a06 65%,#020603 100%)}.preloader:after{content:"";pointer-events:none;background:radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.65) 100%)}#matrix,.preloader:after{position:absolute;inset:0}#matrix{z-index:0;opacity:.22}.scanlines{position:absolute;inset:0;opacity:.12;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(0,255,120,.12) 0 2px,transparent 2px 4px)}.noise{position:absolute;inset:-10%;mix-blend-mode:overlay;opacity:.06;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 40 40'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='.8'/></svg>")}.crt{position:relative;z-index:1;width:min(980px,94vw);max-height:min(80vh,720px);display:flex;flex-direction:column;padding:18px;border-radius:14px;background:linear-gradient(180deg,rgba(2,22,9,.78),rgba(2,18,8,.95));border:1px solid var(--border);box-shadow:inset 0 0 0 2px #063,0 0 36px rgba(27,255,111,.12),0 18px 60px rgba(0,0,0,.6);overflow:hidden}.chrome{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--muted);letter-spacing:.08em}.led{width:10px;height:10px;border-radius:50%;background:#142a1a;box-shadow:inset 0 0 0 2px #022}.led.on{background:var(--green);box-shadow:0 0 10px var(--green),0 0 0 2px #022 inset}.title{margin-left:auto;opacity:.95}.mark{display:flex;gap:10px;align-items:center;margin:6px 0 4px;color:var(--bright)}.mark svg{height:22px}.screen{position:relative;flex:1;min-height:300px;overflow:auto;border-radius:12px;padding:16px;background:#041807;border:1px solid rgba(27,255,111,.12);box-shadow:inset 0 0 60px rgba(0,0,0,.6)}.line{line-height:1.55;color:var(--bright);white-space:pre-wrap;font-size:14px}.muted{color:var(--muted)}.accent{color:var(--green)}.error{color:#ff7a7a}.cursor{display:inline-block;width:8px;height:1.25em;background:var(--green);margin-left:2px;vertical-align:-2px;animation:blink 1.1s step-end infinite}@keyframes blink{50%{opacity:0}}.progressWrap{display:flex;align-items:center;gap:10px;margin-top:14px}.progress{flex:1;height:12px;background:#083;border:1px solid var(--border);border-radius:999px;overflow:hidden}.bar{height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--green2));box-shadow:0 0 18px var(--green)}.pct{min-width:48px;text-align:right;color:var(--muted)}.glitch{position:relative;display:inline-block;text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:20px}.glitch:after,.glitch:before{content:attr(data-text);position:absolute;left:0;top:0;overflow:hidden;text-shadow:-1px 0 rgba(0,255,120,.7)}.glitch:after{text-shadow:1px 0 rgba(173,255,47,.7)}.glitch{animation:glitchShift 2.8s linear infinite alternate}@keyframes glitchShift{0%{transform:translate(0)}50%{transform:translate(.5px,-.5px)}to{transform:translate(0)}}.reflection{pointer-events:none;position:absolute;left:0;right:0;top:-20px;height:90px;background:linear-gradient(180deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,0))}.enter{margin-top:10px;color:var(--muted);opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .45s ease}.enter.show{opacity:.95;transform:none}.enter .key{display:inline-block;border:1px solid var(--border);padding:2px 8px;border-radius:6px;background:#062;box-shadow:0 0 12px rgba(27,255,111,.12)}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.badge{font-size:12px;padding:2px 6px;border:1px solid rgba(27,255,111,.18);border-radius:999px;color:var(--muted);background:#062}@media (max-width:640px){.crt{width:94vw;padding:12px}.screen{min-height:220px}}