:root{--bg-color: #1a1a1a;--terminal-bg: #1d1f21;--terminal-border: #2a2e36;--header-bg: #252830;--text-color: #f8f8f2;--text-dim: #6c7280;--accent-color: #f790a6;--error-color: #ff5555;--success-color: #50fa7b;--warning-color: #f1fa8c;--link-color: #8be9fd;--prompt-color: #e68ea1;--font-mono: "JetBrains Mono", monospace;--selection-bg: rgba(80, 250, 123, .3)}*{margin:0;padding:0;box-sizing:border-box}::selection{background:var(--selection-bg)}body{font-family:var(--font-mono);background-color:var(--bg-color);color:var(--text-color);height:100vh;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:1rem}.terminal-container{width:100%;max-width:800px;height:85vh;background:var(--terminal-bg);border-radius:6px;overflow:hidden;box-shadow:0 10px 30px #0006;border:1px solid var(--terminal-border);display:flex;flex-direction:column}.terminal-header{background:var(--header-bg);padding:.8rem 1rem;display:flex;align-items:center;border-bottom:1px solid var(--terminal-border);height:40px;-webkit-user-select:none;user-select:none}.terminal-controls{display:flex;gap:8px}.control{width:12px;height:12px;border-radius:50%;cursor:pointer;transition:opacity .2s}.control:hover{opacity:.8}.close{background-color:#ff5f56}.minimize{background-color:#ffbd2e}.maximize{background-color:#27c93f}.terminal-title{flex:1;text-align:center;font-size:.9rem;color:var(--text-dim);font-weight:500}.terminal-options{display:flex;gap:8px}.terminal-options button{background:none;border:1px solid var(--terminal-border);color:var(--text-dim);cursor:pointer;font-size:.8rem;padding:2px 8px;border-radius:4px;font-family:var(--font-mono);transition:all .2s}.terminal-options button:hover{background:var(--terminal-border);color:var(--text-color)}.terminal-body{flex:1;padding:1rem;overflow-y:auto;position:relative;line-height:1.6;font-size:14px}#terminal-output{margin-bottom:.5rem;white-space:pre-wrap;word-wrap:break-word}.output-line{margin-bottom:.3rem;max-width:80ch}.ascii-art{color:var(--accent-color);margin-bottom:1rem;line-height:1.2}.error{color:var(--error-color)}.success{color:var(--success-color)}.warning{color:var(--warning-color)}.link{color:var(--link-color);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.link:hover{border-color:var(--link-color)}.terminal-input-line{display:flex;align-items:center;max-width:80ch;position:relative;height:20px}.prompt{color:var(--prompt-color);margin-right:.5rem;font-weight:700;-webkit-user-select:none;user-select:none;white-space:nowrap}.input-container{position:relative;flex:1;display:flex;align-items:center;min-width:0}#terminal-input{background:transparent;border:none;color:var(--text-color);font-family:var(--font-mono);font-size:14px;outline:none;width:100%;padding:0;caret-color:transparent;white-space:nowrap;overflow:hidden}#terminal-cursor{position:absolute;font-size:16px;color:var(--text-color);animation:blink 1s step-end infinite;font-weight:300;height:100%;background-color:var(--text-color);width:2px;opacity:.7}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:var(--terminal-bg)}.terminal-body::-webkit-scrollbar-thumb{background:var(--terminal-border);border-radius:4px}.terminal-body::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}body.crt-effect:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:100;opacity:.3;animation:scanline 10s linear infinite}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media(max-width:768px){.terminal-container{height:90vh;max-width:100%}.terminal-header{padding:.5rem .8rem}.terminal-body{padding:.8rem;font-size:13px}#terminal-input{font-size:13px}}@media(max-width:480px){.terminal-title{font-size:.8rem}.terminal-options button{font-size:.7rem;padding:2px 4px}}
