.terminal{position:relative;display:flex;flex-direction:column;width:100%;height:100vh;overflow:hidden;background-color:var(--color-background);cursor:text;transform:var(--crt-curve)}.terminal__scanlines{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,rgba(0,0,0,var(--scanline-opacity)) 2px,rgba(0,0,0,var(--scanline-opacity)) 4px)}.terminal__history{flex:1;overflow-y:auto;padding:24px 24px 8px;scrollbar-width:thin;scrollbar-color:var(--color-muted) transparent}.terminal__history::-webkit-scrollbar{width:4px}.terminal__history::-webkit-scrollbar-track{background:transparent}.terminal__history::-webkit-scrollbar-thumb{background-color:var(--color-muted);border-radius:0}.terminal-line{font-family:var(--font-primary);font-size:15px;line-height:1.6;white-space:pre;letter-spacing:.02em}.terminal-line--output{color:var(--color-text);text-shadow:var(--glow)}.terminal-line--input{color:var(--color-text);text-shadow:var(--glow);opacity:.85}.terminal-line--ascii{color:var(--color-primary);text-shadow:0 0 8px rgba(0,255,65,.7);font-size:13px;line-height:1.25}.terminal-line--accent{color:var(--color-accent);text-shadow:0 0 5px rgba(0,255,255,.4)}.terminal-line--muted{color:var(--color-muted)}.terminal-line--dim{color:#005a0a}.terminal-line--error{color:var(--color-error);text-shadow:0 0 5px rgba(255,49,49,.4)}.terminal-line--warning{color:var(--color-warning)}.terminal-line--link{color:var(--color-accent);text-shadow:0 0 6px rgba(0,255,255,.35);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#0ff6;cursor:pointer}.terminal__prompt-row{display:flex;align-items:center;padding:8px 24px 20px;flex-shrink:0;font-family:var(--font-primary);font-size:15px;line-height:1;white-space:nowrap}.terminal__prompt-user{color:var(--color-accent);text-shadow:0 0 5px rgba(0,255,255,.4)}.terminal__prompt-at{color:var(--color-muted)}.terminal__prompt-host{color:var(--color-accent);text-shadow:0 0 5px rgba(0,255,255,.4)}.terminal__prompt-colon{color:var(--color-muted)}.terminal__prompt-path{color:var(--color-primary);text-shadow:var(--glow)}.terminal__prompt-dollar{color:var(--color-primary);text-shadow:var(--glow);margin-left:4px}.terminal__input-wrapper{position:relative;display:flex;align-items:center;flex:1}.terminal__input{flex:1;background:transparent;border:none;outline:none;caret-color:transparent;color:var(--color-text);font-family:var(--font-primary);font-size:15px;text-shadow:var(--glow);padding:0;margin:0;letter-spacing:.02em;width:100%}.terminal__cursor{display:inline-block;width:9px;height:1.1em;background-color:var(--color-primary);box-shadow:var(--glow);animation:blink .5s step-end infinite;vertical-align:text-bottom;position:absolute;left:0;pointer-events:none}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}:root{--color-primary: #00FF41;--color-background: #050505;--color-surface: #0A0A0A;--color-text: #00FF41;--color-muted: #008F11;--color-accent: #00FFFF;--color-error: #FF3131;--color-warning: #FFD700;--font-primary: "Fira Code", "Cascadia Code", "Consolas", monospace;--font-display: "VT323", monospace;--radius: 0px;--spacing: 16px;--glow: 0 0 5px rgba(0, 255, 65, .5);--scanline-opacity: .08;--crt-curve: perspective(1200px) rotateX(.3deg)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{background-color:var(--color-background);color:var(--color-text);font-family:var(--font-primary);font-size:16px;outline:2px solid rgba(0,255,65,.05);outline-offset:-4px}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}::selection{background-color:var(--color-muted);color:var(--color-background)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-muted)}
