*{margin:0;padding:0;box-sizing:border-box}body{font-family:VT323,Courier New,Consolas,monospace;margin:0;background:#000;color:#0f0;-webkit-font-smoothing:none;-moz-osx-font-smoothing:grayscale;font-size:20px}#root{width:100%;min-height:100vh}.legal-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.legal-modal{width:90%;max-width:800px;max-height:80vh;background:#000;border:2px solid var(--terminal-green);box-shadow:0 0 30px #00ff004d;display:flex;flex-direction:column;font-family:VT323,Courier New,monospace;animation:modal-boot .3s ease-out}@keyframes modal-boot{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.legal-modal-header{background:var(--terminal-green);color:#000;padding:10px 15px;font-size:1.2em;font-weight:700;display:flex;justify-content:flex-end;border-bottom:2px solid var(--terminal-green)}.legal-modal-close{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .1s}.legal-modal-close:hover{transform:scale(1.2)}.legal-modal-content{flex:1;overflow-y:auto;padding:20px;color:var(--terminal-green);font-size:1em;line-height:1.4}.legal-modal-content pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:inherit}.legal-modal-footer{padding:15px;border-top:1px solid var(--terminal-dark-green);display:flex;justify-content:center}.legal-modal-footer button{background:transparent;border:2px solid var(--terminal-green);color:var(--terminal-green);padding:8px 20px;font-family:VT323,monospace;font-size:1.1em;cursor:pointer;transition:all .2s}.legal-modal-footer button:hover{background:var(--terminal-green);color:#000;box-shadow:0 0 10px #00ff0080}.legal-modal-content::-webkit-scrollbar{width:10px}.legal-modal-content::-webkit-scrollbar-track{background:#000;border-left:1px solid var(--terminal-dark-green)}.legal-modal-content::-webkit-scrollbar-thumb{background:var(--terminal-dark-green);border:1px solid var(--terminal-green)}.legal-modal-content::-webkit-scrollbar-thumb:hover{background:var(--terminal-green)}@media (max-width: 768px){.legal-modal{width:95%;max-height:85vh}.legal-modal-content{font-size:.9em;padding:15px}.legal-modal-footer button{font-size:1em;padding:6px 15px}}:root{--terminal-green: #00ff00;--terminal-dark-green: #00aa00;--terminal-bg: #000000;--terminal-red: #ff0000}html,body{margin:0;padding:0;height:100vh;overflow:hidden;background:#000}#root{height:100vh;background:#000;display:flex;align-items:center;justify-content:center}.terminal-wrapper{display:flex;flex-direction:column;align-items:center;gap:0}.terminal-container{width:95vw;height:95vh;max-width:1024px;max-height:800px;margin:auto;background:var(--terminal-bg);position:relative;font-family:VT323,Courier New,Consolas,monospace;font-size:20px;display:flex;flex-direction:column;box-shadow:0 0 30px #00ff004d,0 0 60px #00ff0026,inset 0 0 100px #00ff0005;border:2px solid var(--terminal-green);border-radius:4px;animation:terminal-boot .5s ease-out;overflow:hidden;box-sizing:border-box}.terminal-animate-open{width:100%;height:100%;display:flex;flex-direction:column;position:relative}@keyframes terminal-boot{0%{opacity:0;transform:scale(.95)}50%{opacity:.5}to{opacity:1;transform:scale(1)}}.terminal-container:before{content:"";position:absolute;inset:0;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:2}.terminal-container:after{content:"";position:absolute;inset:0;background:#1210101a;opacity:0;z-index:1;pointer-events:none;animation:flicker .15s infinite}@keyframes flicker{0%,to{opacity:.27861}5%{opacity:.34769}10%{opacity:.23604}15%{opacity:.90626}20%{opacity:.18128}25%{opacity:.83891}30%{opacity:.65583}35%{opacity:.67807}40%{opacity:.26559}45%{opacity:.84693}50%{opacity:.96019}55%{opacity:.08594}60%{opacity:.20313}65%{opacity:.71988}70%{opacity:.53455}75%{opacity:.37288}80%{opacity:.71428}85%{opacity:.70419}90%{opacity:.7003}95%{opacity:.36108}}.terminal-header{background:var(--terminal-bg);padding:8px 16px;border-bottom:2px solid var(--terminal-green);display:flex;justify-content:space-between;align-items:center;font-family:VT323,Courier New,monospace;text-transform:uppercase;position:relative;z-index:3;animation:header-flicker 3s infinite;flex-shrink:0}@keyframes header-flicker{0%,98%,to{opacity:1}99%{opacity:.8}}.terminal-title{color:var(--terminal-green);font-size:1.2em;text-shadow:0 0 5px rgba(0,255,0,.8),0 0 10px rgba(0,255,0,.4);letter-spacing:2px;animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{text-shadow:0 0 5px rgba(0,255,0,.8),0 0 10px rgba(0,255,0,.4)}50%{text-shadow:0 0 8px rgba(0,255,0,1),0 0 15px rgba(0,255,0,.6)}}.terminal-buttons{display:flex;gap:8px}.terminal-buttons span{cursor:pointer;padding:0 6px;color:var(--terminal-green)}.terminal-output{flex:1;overflow-y:scroll;overflow-x:hidden;padding:16px;color:var(--terminal-green);font-size:1.1em;line-height:1.4;font-family:VT323,Courier New,monospace;position:relative;z-index:3;min-height:0;box-sizing:border-box}.terminal-output::-webkit-scrollbar{width:10px}.terminal-output::-webkit-scrollbar-track{background:var(--terminal-bg)}.terminal-output::-webkit-scrollbar-thumb{background:var(--terminal-dark-green);border:1px solid var(--terminal-green);box-shadow:0 0 3px #00ff0080}.terminal-line{margin-bottom:6px;white-space:pre-wrap;word-wrap:break-word}.terminal-input{color:var(--terminal-green);font-weight:700;text-shadow:0 0 3px rgba(0,255,0,.5)}.terminal-system{color:var(--terminal-dark-green);animation:fade-in .3s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.terminal-error{color:var(--terminal-red);font-weight:700;text-shadow:0 0 5px rgba(255,0,0,.5);animation:error-flash .5s ease-out}@keyframes error-flash{0%,to{opacity:1}50%{opacity:.5}}.terminal-success{color:var(--terminal-green);font-weight:700;animation:success-glow .8s ease-out}@keyframes success-glow{0%{text-shadow:0 0 20px rgba(0,255,0,1);transform:scale(1.05)}to{text-shadow:0 0 5px rgba(0,255,0,.5);transform:scale(1)}}.ai-text{color:var(--terminal-green);text-shadow:0 0 3px rgba(0,255,0,.5);animation:text-appear .2s ease-out}@keyframes text-appear{0%{opacity:0}to{opacity:1}}.thinking-indicator{color:var(--terminal-dark-green);font-style:italic;display:inline-flex;align-items:center;gap:2px}.thinking-text{margin-right:2px;animation:thinking-pulse 1.5s ease-in-out infinite}@keyframes thinking-pulse{0%,to{opacity:.5}50%{opacity:1;text-shadow:0 0 5px rgba(0,255,0,.3)}}.thinking-dot{animation:thinking-dot-blink 1.4s ease-in-out infinite}.thinking-dot:nth-child(2){animation-delay:.2s}.thinking-dot:nth-child(3){animation-delay:.4s}.thinking-dot:nth-child(4){animation-delay:.6s}@keyframes thinking-dot-blink{0%,20%{opacity:0}50%{opacity:1;text-shadow:0 0 3px rgba(0,255,0,.5)}to{opacity:0}}.terminal-link{color:var(--terminal-green);text-decoration:none;font-weight:700;padding:4px 8px;border:1px solid var(--terminal-green);display:inline-block;position:relative;background:#00ff000d;animation:link-glitch .8s ease-in-out,link-pulse 2s ease-in-out .8s infinite;box-shadow:0 0 10px #00ff0080,inset 0 0 10px #00ff001a}@keyframes link-glitch{0%{transform:translate(0);opacity:0}10%{transform:translate(-5px,2px);opacity:.5}20%{transform:translate(3px,-3px);opacity:.8}30%{transform:translate(-2px,1px);opacity:.6}40%{transform:translate(4px,-2px);opacity:1}50%{transform:translate(-3px,3px);opacity:.7}60%{transform:translate(2px,-1px);opacity:.9}70%{transform:translate(-1px,2px);opacity:1}80%{transform:translate(1px,-1px);opacity:1}90%{transform:translate(-1px,1px);opacity:1}to{transform:translate(0);opacity:1}}@keyframes link-pulse{0%,to{box-shadow:0 0 10px #00ff0080,inset 0 0 10px #00ff001a}50%{box-shadow:0 0 20px #0f0c,inset 0 0 20px #0f03}}.terminal-link:hover{color:#000;background:var(--terminal-green);text-shadow:none;transform:scale(1.05);animation:link-hover .3s ease-out forwards}@keyframes link-hover{0%{box-shadow:0 0 10px #00ff0080}to{box-shadow:0 0 30px #0f0,0 0 60px #00ff0080}}.terminal-system{font-family:VT323,Courier New,monospace;letter-spacing:.05em}.terminal-input-form{background:var(--terminal-bg);border-top:2px solid var(--terminal-green);padding:12px 16px;position:relative;z-index:3;flex-shrink:0}.terminal-input-line{display:flex;align-items:center;gap:8px;font-family:VT323,Courier New,monospace}.terminal-prompt{color:var(--terminal-green);font-weight:700;text-shadow:0 0 5px rgba(0,255,0,.8)}.terminal-input{background:transparent;border:none;color:var(--terminal-green);font-family:VT323,Courier New,monospace;font-size:1.1em;width:100%;outline:none;text-shadow:0 0 2px rgba(0,255,0,.5)}.terminal-input::placeholder{color:transparent}.cursor-blink{color:var(--terminal-green);animation:cursor-blink 1s infinite;text-shadow:0 0 5px rgba(0,255,0,.8)}@keyframes cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.loader-bg{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;position:relative;z-index:10;animation:loader-fade-in .3s ease-out}@keyframes loader-fade-in{0%{opacity:0}to{opacity:1}}.loader-title{color:var(--terminal-green);font-size:2em;font-family:VT323,Courier New,monospace;letter-spacing:4px;text-shadow:0 0 10px rgba(0,255,0,.8),0 0 20px rgba(0,255,0,.4);animation:loader-title-pulse 1.5s ease-in-out infinite}@keyframes loader-title-pulse{0%,to{text-shadow:0 0 10px rgba(0,255,0,.8),0 0 20px rgba(0,255,0,.4)}50%{text-shadow:0 0 15px rgba(0,255,0,1),0 0 30px rgba(0,255,0,.6),0 0 40px rgba(0,255,0,.3)}}.loader-bar{width:400px;max-width:80%;height:30px;border:2px solid var(--terminal-green);background:#00000080;position:relative;overflow:hidden;box-shadow:0 0 10px #00ff004d,inset 0 0 10px #000c;display:flex}.loader-bar-segment{flex:1;background:transparent;border-right:1px solid rgba(0,255,0,.2);position:relative;overflow:hidden}.loader-bar-segment:last-child{border-right:none}.loader-bar-segment.loading{animation:loader-fill 1.5s ease-out forwards}.loader-bar-segment:nth-child(1){animation-delay:0s}.loader-bar-segment:nth-child(2){animation-delay:.05s}.loader-bar-segment:nth-child(3){animation-delay:.1s}.loader-bar-segment:nth-child(4){animation-delay:.15s}.loader-bar-segment:nth-child(5){animation-delay:.2s}.loader-bar-segment:nth-child(6){animation-delay:.25s}.loader-bar-segment:nth-child(7){animation-delay:.3s}.loader-bar-segment:nth-child(8){animation-delay:.35s}.loader-bar-segment:nth-child(9){animation-delay:.4s}.loader-bar-segment:nth-child(10){animation-delay:.45s}.loader-bar-segment:nth-child(11){animation-delay:.5s}.loader-bar-segment:nth-child(12){animation-delay:.55s}.loader-bar-segment:nth-child(13){animation-delay:.6s}.loader-bar-segment:nth-child(14){animation-delay:.65s}.loader-bar-segment:nth-child(15){animation-delay:.7s}.loader-bar-segment:nth-child(16){animation-delay:.75s}.loader-bar-segment:nth-child(17){animation-delay:.8s}.loader-bar-segment:nth-child(18){animation-delay:.85s}.loader-bar-segment:nth-child(19){animation-delay:.9s}.loader-bar-segment:nth-child(20){animation-delay:.95s}@keyframes loader-fill{0%{background:transparent;box-shadow:none}50%{background:var(--terminal-green);box-shadow:0 0 10px #0f0c,inset 0 0 5px #00ff0080}to{background:var(--terminal-green);box-shadow:0 0 5px #0f09,inset 0 0 3px #00ff004d}}.loader-text{color:var(--terminal-green);font-family:VT323,Courier New,monospace;font-size:1.2em;letter-spacing:2px;animation:loader-text-blink .8s ease-in-out infinite;text-shadow:0 0 5px rgba(0,255,0,.5)}@keyframes loader-text-blink{0%,49%{opacity:1}50%,to{opacity:.3}}@media (max-width: 768px){html,body{height:100vh;overflow:hidden}#root{height:100vh;display:flex;align-items:center;justify-content:center;padding:0}.terminal-wrapper{display:flex;flex-direction:column;width:calc(100vw - 16px);height:calc(100vh - 16px);margin:8px;max-width:100%;box-sizing:border-box}.terminal-container{width:100%;height:100%;display:flex;flex-direction:column;border-radius:4px;border:2px solid var(--terminal-green);margin:0;box-sizing:border-box;overflow:hidden;box-shadow:0 0 20px #00ff004d,0 0 40px #00ff0026,inset 0 0 80px #00ff0005}.loader-bg{width:100%;height:100%}.terminal-animate-open{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.terminal-output{font-size:.9em;padding:12px;flex:1;overflow-y:auto;overflow-x:hidden;width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word}.terminal-input-form{flex-shrink:0;width:100%;box-sizing:border-box;background:var(--terminal-bg);border-top:2px solid var(--terminal-green)}.terminal-input{width:100%;box-sizing:border-box}.terminal-footer{display:none}.terminal-title{font-size:.95em}.loader-title{font-size:1.2em;letter-spacing:2px}.loader-bar{width:90%;height:25px}.loader-text{font-size:.9em}.terminal-footer{flex-shrink:0;padding:12px 0;font-size:.75em;gap:18px}}.terminal-footer{position:relative;text-align:center;padding:15px 0;font-size:.8em;color:var(--terminal-dark-green);display:flex;gap:20px;justify-content:center;font-family:VT323,Courier New,monospace}.terminal-footer a{color:var(--terminal-dark-green);text-decoration:none;transition:color .2s;text-shadow:0 0 3px rgba(0,255,0,.3)}.terminal-footer a:hover{color:var(--terminal-green);text-shadow:0 0 8px rgba(0,255,0,.6)}.app{min-height:100vh;display:flex;justify-content:center;align-items:center;background:#000;padding:20px;position:relative}.app: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:10}.app:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:#1210101a;opacity:0;z-index:2;pointer-events:none;animation:flicker .15s infinite}@keyframes flicker{0%{opacity:.27861}5%{opacity:.34769}10%{opacity:.23604}15%{opacity:.90626}20%{opacity:.18128}25%{opacity:.83891}30%{opacity:.65583}35%{opacity:.67807}40%{opacity:.26559}45%{opacity:.84693}50%{opacity:.96019}55%{opacity:.08594}60%{opacity:.20313}65%{opacity:.71988}70%{opacity:.53455}75%{opacity:.37288}80%{opacity:.71428}85%{opacity:.70419}90%{opacity:.7003}95%{opacity:.36108}to{opacity:.24387}}
