@import url(https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap);:root{--bg-main:#0a0a0a;--bg-panel:#0d0d0d;--text-main:#00ff41;--accent-cyan:#00ffff;--danger-red:#ff0033;--warning-yellow:#ffcc00;--gray-eliminated:#444444}*{box-sizing:border-box}body{margin:0;padding:0;background-color:var(--bg-main);color:var(--text-main);font-family:'Share Tech Mono','Courier New',monospace;overflow-x:hidden;min-height:100vh;position:relative}body::after{content:" ";display:block;position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(rgba(18,16,16,0) 50%,rgba(0,0,0,.25) 50%),linear-gradient(90deg,rgba(255,0,0,.06),rgba(0,255,0,.02),rgba(0,0,255,.06));z-index:9999;background-size:100% 2px,3px 100%;pointer-events:none}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-main);border-left:1px solid var(--text-main)}::-webkit-scrollbar-thumb{background:var(--text-main)}h1,h2,h3{margin:0 0 1rem 0;text-transform:uppercase}.text-cyan{color:var(--accent-cyan)}.text-red{color:var(--danger-red)}.text-yellow{color:var(--warning-yellow)}.mt-2{margin-top:1rem}.glitch-title{font-size:4rem;color:var(--accent-cyan);text-shadow:2px 0 var(--danger-red),-2px 0 #00f;animation:glitch 2s infinite alternate-reverse;text-align:center;margin-top:2rem}@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)}100%{transform:translate(0)}}.typewriter{overflow:hidden;border-right:.15em solid var(--text-main);white-space:nowrap;margin:0 auto;letter-spacing:.15em;animation:typing 2.5s steps(40,end),blink-caret .75s step-end infinite}@keyframes typing{from{width:0}to{width:100%}}@keyframes blink-caret{from,to{border-color:transparent}50%{border-color:var(--text-main)}}input{background:var(--bg-main);border:1px solid var(--text-main);color:var(--text-main);padding:.5rem 1rem;font-family:inherit;font-size:1.2rem;outline:0;width:100%;margin-bottom:1rem}input:focus{border-color:var(--accent-cyan);box-shadow:0 0 8px var(--accent-cyan)}button{background:var(--bg-main);border:1px solid var(--text-main);color:var(--text-main);padding:.5rem 1rem;font-family:inherit;font-size:1.2rem;cursor:pointer;text-transform:uppercase;transition:all .1s;width:100%}button:hover:not(:disabled){background:var(--text-main);color:var(--bg-main)}button:disabled{opacity:.5;cursor:not-allowed;border-color:var(--gray-eliminated);color:var(--gray-eliminated)}.panel{border:1px solid var(--text-main);background:var(--bg-panel);padding:2rem;margin:1rem}.container{max-width:1600px;margin:0 auto;display:flex;flex-direction:column;min-height:100vh}.lobby-layout{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh}.lobby-box{width:400px;text-align:center}.game-layout{display:flex;flex-direction:column;flex:1;padding:1rem;gap:1rem;justify-content:flex-start;align-items:center}.main-area{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding-bottom:1rem}.action-box{width:100%;max-width:600px;text-align:center}.sidebar-container{display:flex;flex-direction:row;gap:1rem;width:100%;max-width:1000px;justify-content:center;flex:1}.sidebar{flex:1;display:flex;flex-direction:column;overflow-y:auto;height:100%;min-height:350px;padding-bottom:1rem}.sidebar p{margin:.2rem 0!important}.player-list{list-style:none;padding:0;margin:0}.player-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-bottom:1px dashed var(--gray-eliminated);margin-bottom:.5rem}.player-item.is-me{border:1px solid var(--accent-cyan)}.player-item.eliminated{color:var(--danger-red);text-decoration:line-through}.player-item.eliminated .player-pseudo,.player-item.eliminated .player-score{color:var(--danger-red)}.player-pseudo{font-weight:700}.player-score{color:var(--warning-yellow)}.btn-attack{margin-left:auto;font-size:.8rem;padding:.2rem .5rem;width:auto;flex-shrink:0}.player-info-container{display:flex;gap:1rem;align-items:center;flex:1;justify-content:space-between;margin-right:.5rem}.glitch-active{animation:bg-glitch .2s infinite}.glitch-active .panel,.glitch-active button,.glitch-active input{transform:skew(-2deg)}@keyframes bg-glitch{0%{transform:scale(1) rotate(0);filter:hue-rotate(0deg)}50%{transform:scale(1.02) rotate(1deg);filter:hue-rotate(90deg)}100%{transform:scale(.98) rotate(-1deg);filter:hue-rotate(180deg)}}.popup-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#1a0000;border:2px solid var(--danger-red);padding:2rem;text-align:center;z-index:10000;box-shadow:0 0 20px var(--danger-red);animation:shake .5s}.popup-modal h2{color:var(--danger-red);animation:flash .5s infinite}.popup-modal button.dismiss{border-color:var(--danger-red);color:var(--danger-red)}.popup-modal button.dismiss:hover{background:var(--danger-red);color:#1a0000}@keyframes shake{0%{transform:translate(-50%,-50%)}25%{transform:translate(-52%,-48%)}50%{transform:translate(-48%,-52%)}75%{transform:translate(-52%,-52%)}100%{transform:translate(-50%,-50%)}}@keyframes flash{0%,100%{opacity:1}50%{opacity:0}}.winner-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(10,10,10,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100000}.winner-overlay h1{font-size:5rem;color:var(--accent-cyan);text-shadow:0 0 10px var(--accent-cyan);animation:blink-caret 1s infinite}.keyboard-flipped{border-color:var(--danger-red)!important;color:var(--danger-red)!important}.banner-alert{background:var(--danger-red);color:#fff;text-align:center;padding:.5rem;font-weight:700;text-transform:uppercase;position:fixed;top:0;left:0;right:0;z-index:9000}.dropdown{position:absolute;top:calc(100% - 1rem);left:0;right:0;background:#0d0d0d;border:1px solid #00ff41;z-index:10000;animation:fadeIn .1s;text-align:left}.dropdown-item{padding:8px 12px;font-family:inherit;color:#00ff41;cursor:pointer}.dropdown-item.selected,.dropdown-item:hover{background:#00ff41;color:#0a0a0a;border-left:3px solid var(--accent-cyan)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.hint-item{color:var(--warning-yellow);margin:.2rem 0;font-size:.9rem;display:block;overflow:hidden;white-space:nowrap;border-right:.15em solid var(--warning-yellow);animation:typingHint 1.5s steps(40,end),blinkHint .75s step-end infinite alternate;margin-bottom:5px}@keyframes typingHint{from{width:0}to{width:100%}}@keyframes blinkHint{50%{border-color:transparent}}.hidden{display:none!important}.similarity-wrapper{margin:12px 0;padding:10px 14px;border:1px solid #00ff41;background:#0d0d0d;font-family:inherit}.similarity-wrapper.hidden{display:none}.similarity-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.similarity-title{color:#444;font-size:11px;letter-spacing:1px}.similarity-value{color:#00ff41;font-size:18px;font-weight:700;transition:color .3s ease}.similarity-value.cold{color:#444}.similarity-value.low{color:#f03}.similarity-value.warm{color:#fc0}.similarity-value.hot{color:#f60}.similarity-value.fire{color:#00ff41}.similarity-track{width:100%;height:8px;background:#1a1a1a;border:1px solid #222;position:relative;overflow:hidden}.similarity-track::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(0,0,0,.3) 3px,rgba(0,0,0,.3) 4px)}.similarity-fill{height:100%;width:0%;background:#00ff41;transition:width .6s cubic-bezier(.25, .46, .45, .94),background-color .3s ease;position:relative}.similarity-fill::after{content:'';position:absolute;right:0;top:-2px;bottom:-2px;width:4px;background:#fff;opacity:.8;filter:blur(2px);animation:barGlow 1s ease-in-out infinite alternate}@keyframes barGlow{from{opacity:.4}to{opacity:1}}.similarity-fill.cold{background:#333}.similarity-fill.low{background:#f03}.similarity-fill.warm{background:#fc0}.similarity-fill.hot{background:#f60}.similarity-fill.fire{background:#00ff41}.similarity-word{margin-top:6px;font-size:10px;color:#444;letter-spacing:2px;text-transform:uppercase}@keyframes flipIn{from{transform:rotate(0)}to{transform:rotate(180deg)}}@keyframes flipOut{from{transform:rotate(180deg)}to{transform:rotate(0)}}body.flip-screen-active{animation:flipIn .5s ease-in-out forwards;transform-origin:center center}body.flip-screen-restoring{animation:flipOut .5s ease-in-out forwards;transform-origin:center center}#matrix-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9000;opacity:0;transition:opacity 1s ease}#matrix-canvas.active{opacity:1;pointer-events:none}#matrix-canvas.dense{pointer-events:all}#matrix-abort-btn{display:none;position:fixed;z-index:9999;background:#0a0a0a;border:2px solid #f03;color:#f03;font-family:'Share Tech Mono','Courier New',monospace;font-size:13px;padding:10px 20px;cursor:pointer;letter-spacing:2px;text-transform:uppercase;animation:btnPulse .8s ease-in-out infinite alternate}#matrix-abort-btn:hover{background:#f03;color:#0a0a0a}@keyframes btnPulse{from{box-shadow:0 0 4px #f03}to{box-shadow:0 0 16px #f03}}#matrix-alert-banner{display:none;position:fixed;top:0;left:0;right:0;z-index:9998;background:#1a0000;border-bottom:2px solid #f03;color:#f03;text-align:center;padding:6px;font-family:'Share Tech Mono','Courier New',monospace;font-size:12px;letter-spacing:2px;animation:blink 1s step-end infinite}#crack-input.ghost-active{border-color:#f0f;box-shadow:0 0 8px #f0f,0 0 2px #f0f inset;animation:ghostBorderPulse .6s ease-in-out infinite alternate}@keyframes ghostBorderPulse{from{box-shadow:0 0 4px #f0f}to{box-shadow:0 0 16px #f0f,0 0 4px #f0f inset}}.ghost-char-flash{position:fixed;font-family:'Share Tech Mono','Courier New',monospace;font-size:22px;color:#f0f;pointer-events:none;z-index:8000;animation:ghostCharFade .4s ease-out forwards}@keyframes ghostCharFade{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}#ghost-alert-banner{display:none;position:fixed;top:0;left:0;right:0;z-index:8500;background:#1a001a;border-bottom:2px solid #f0f;color:#f0f;text-align:center;padding:6px;font-family:'Share Tech Mono','Courier New',monospace;font-size:12px;letter-spacing:2px;animation:blink 1s step-end infinite}#terminal-takeover-overlay{display:none;position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,.92);backdrop-filter:blur(2px);align-items:center;justify-content:center}#terminal-takeover-window{width:min(900px,92vw);height:min(520px,82vh);background:#050505;border:2px solid #0f6;box-shadow:0 0 20px rgba(0,255,102,.3);display:flex;flex-direction:column;overflow:hidden;font-family:'Share Tech Mono','Courier New',monospace}#terminal-takeover-header{padding:10px 14px;background:#081108;border-bottom:1px solid #0f6;color:#0f6;font-size:13px;letter-spacing:1px}#terminal-takeover-body{flex:1;padding:14px;color:#0f6;overflow-y:auto;white-space:pre-wrap;font-size:14px;line-height:1.45}#terminal-takeover-input-row{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid #003d19;background:#070d07}#terminal-takeover-prompt{color:#0f6;font-size:14px}#terminal-takeover-input{flex:1;background:#000;border:1px solid #0f6;color:#0f6;padding:10px 12px;font-family:'Share Tech Mono','Courier New',monospace;font-size:14px;outline:0}#terminal-takeover-input::placeholder{color:rgba(0,255,102,.45)}.terminal-caret{display:inline-block;width:8px;margin-left:2px;background:#0f6;animation:terminalBlink .8s step-end infinite}@keyframes terminalBlink{50%{opacity:0}}.terminal-critical{color:#ff4d4d;text-shadow:0 0 8px rgba(255,77,77,.35)}.terminal-warning{color:#ffd166}.guest-modal{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out}.guest-modal.hidden{display:none!important}.guest-modal__content{background:#0d0d0d;border:1px solid #00ff41;padding:24px 32px;width:100%;max-width:440px;text-align:center;font-family:'Share Tech Mono','Courier New',monospace}.guest-modal__title{color:#00ff41;font-size:1.2rem;letter-spacing:3px;margin:0 0 16px 0;text-transform:uppercase}.guest-modal__desc{color:#ccc;font-size:.95rem;margin:0 0 16px 0}.guest-modal__input{width:100%;border:1px solid #00ff41;background:#000;color:#00ff41;padding:10px 14px;font-size:1.1rem;font-family:inherit;margin-bottom:8px;outline:0;text-align:center}.guest-modal__help{color:#666;font-size:.8rem;margin:0 0 16px 0}.guest-modal__error{color:#f03;font-size:.8rem;margin:-8px 0 16px 0}.guest-modal__actions{display:flex;gap:12px;flex-direction:column}.guest-modal__btn{width:100%;padding:12px;font-size:.95rem;font-family:inherit;cursor:pointer;text-transform:uppercase;letter-spacing:2px;border:1px solid transparent;transition:all .2s}.guest-modal__btn--confirm{background:0 0;border-color:#00ff41;color:#00ff41}.guest-modal__btn--confirm:hover{background:#00ff41;color:#0a0a0a}.guest-modal__btn--anon{background:0 0;border-color:#444;color:#444}.guest-modal__btn--anon:hover{border-color:#666;color:#666}.solo-go-overlay{position:fixed;inset:0;background:rgba(0,0,0,.95);border:2px solid var(--danger-red);z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fadeIn .5s}.solo-go-title{color:var(--danger-red);font-size:5rem;text-shadow:0 0 10px var(--danger-red);animation:goTitleGlitch .2s infinite;margin-bottom:2rem}@keyframes goTitleGlitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}100%{transform:translate(0)}}