.hacker-container{position:relative;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;overflow:hidden;background:#000}.matrix-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.glitch-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3;opacity:.05;animation:subtle-glitch 3s infinite ease-in-out}@keyframes subtle-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)}}.terminal-window{position:relative;width:600px;max-width:90%;background:#000000d9;border:2px solid #00ff00;border-radius:8px;box-shadow:0 0 30px #0f09,0 0 60px #00ff004d;z-index:2;overflow:hidden;animation:fadeIn 1.5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.95) rotate(-1deg)}to{opacity:1;transform:scale(1) rotate(0)}}.terminal-header{background:#222;padding:5px 10px;display:flex;align-items:center;border-bottom:1px solid #00ff00}.terminal-button{width:12px;height:12px;border-radius:50%;margin-right:5px;box-shadow:0 0 5px #fff3}.red{background:#ff4136}.yellow{background:#ffdc00}.green{background:#2ecc40}.terminal-title{color:#fff;font-size:12px;margin-left:auto;margin-right:auto;text-transform:uppercase;letter-spacing:1px}.terminal-body{padding:20px;color:#0f0;font-family:Courier New,monospace}.terminal-text{margin:10px 0;font-size:16px;line-height:1.6;text-shadow:0 0 5px rgba(0,255,0,.3)}.glitch{position:relative;animation:glitch-text 1s infinite ease-in-out}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;opacity:.6}.glitch:before{color:#f0f;left:1px;animation:glitch-effect 5s infinite ease-in-out}.glitch:after{color:#0ff;left:-1px;animation:glitch-effect 4s infinite ease-in-out}@keyframes glitch-text{0%{transform:translate(0)}20%{transform:translate(-1px,1px)}40%{transform:translate(-1px,-1px)}60%{transform:translate(1px,1px)}80%{transform:translate(1px,-1px)}to{transform:translate(0)}}@keyframes glitch-effect{0%{clip:rect(0,900px,0,0)}5%{clip:rect(15px,900px,25px,0)}10%{clip:rect(45px,900px,55px,0)}15%{clip:rect(35px,900px,45px,0)}20%{clip:rect(65px,900px,75px,0)}to{clip:rect(0,900px,0,0)}}.typing{overflow:hidden;white-space:nowrap;border-right:2px solid #00ff00;animation:typing 3s steps(40,end),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:#0f0}}.terminal-label{display:block;margin:10px 0 5px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.terminal-input{width:100%;padding:10px;background:#000;border:1px solid #00ff00;color:#0f0;font-family:Courier New,monospace;font-size:16px;outline:none;transition:box-shadow .3s,border-color .3s}.terminal-input:focus{box-shadow:0 0 15px #0f09;border-color:#0ff}.terminal-button.submit-btn{margin-top:20px;padding:10px 20px;background:#0f0;color:#000;border:none;cursor:pointer;font-family:Courier New,monospace;font-size:16px;transition:background .3s,transform .2s,box-shadow .3s;position:relative;overflow:hidden}.terminal-button.submit-btn:hover{background:#0c0;transform:scale(1.05);box-shadow:0 0 10px #00ff0080}.terminal-button.submit-btn:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);opacity:0;transition:opacity .5s}.terminal-button.submit-btn:hover:after{opacity:1;animation:ripple 1s ease-out}@keyframes ripple{to{transform:scale(2);opacity:0}}.small{font-size:12px;opacity:.7;font-style:italic}.scanline{position:absolute;top:0;left:0;width:100%;height:4px;background:#00ff0026;animation:scan 5s linear infinite;z-index:2;pointer-events:none;box-shadow:0 0 10px #00ff004d}@keyframes scan{0%{top:-4px}to{top:100%}}.particles{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.particle{position:absolute;background:#0f0;opacity:.5;border-radius:50%;animation:float 10s infinite ease-in-out}@keyframes float{0%{transform:translateY(0) scale(1);opacity:.5}50%{transform:translateY(-20px) scale(1.2);opacity:.8}to{transform:translateY(0) scale(1);opacity:.5}}
