@import"https://fonts.googleapis.com/css2?family=Share+Tech+Mono:wght@400&family=IBM+Plex+Mono:wght@400&display=swap";*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:Share Tech Mono,IBM Plex Mono,monospace;background:#000!important;background-color:#000!important;color:#fff;overflow:hidden;cursor:none}*{background-color:transparent}#app-container,#game-area,#canvas-container{background:#000!important;background-color:#000!important}canvas{background:#000!important;background-color:#000!important}#canvas-container{min-height:100vh;background:#000!important}#app-container{position:relative;width:100vw;height:100vh;display:flex}#game-area{flex:1;position:relative;min-width:0}#canvas-container{position:absolute;top:0;left:0;width:100%;height:100%}#tactical-dashboard{width:280px;background:#000000d9;border-left:1px solid #FFA500;position:relative;overflow-y:auto;z-index:500}@media (max-width: 1024px){#tactical-dashboard{display:none}#game-area{width:100vw}}.connection-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0af2;display:none;align-items:center;justify-content:center;z-index:1000;cursor:default;overflow:hidden}@keyframes scanlines{0%{transform:translateY(0)}to{transform:translateY(4px)}}.connection-panel{background:#0a0a0afa;border:none;border-radius:0;box-shadow:none;max-width:600px;width:90%;max-height:85vh;overflow-y:auto;position:relative;font-family:Share Tech Mono,IBM Plex Mono,monospace;animation:consoleBootUp .8s ease-out;transform-origin:center center}@keyframes consoleBootUp{0%{transform:scale(.95,.01);opacity:0;filter:brightness(4) contrast(15)}20%{transform:scale(.98,.15);opacity:.4;filter:brightness(3) contrast(10)}45%{transform:scaleY(.85);opacity:.8;filter:brightness(2) contrast(4)}65%{transform:scale(1);opacity:.95;filter:brightness(1.3) contrast(2)}85%{transform:scale(1);opacity:1;filter:brightness(1.1) contrast(1.3)}to{transform:scale(1);opacity:1;filter:brightness(1) contrast(1)}}.boot-sequence{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:10;animation:bootSequenceFade 1s ease-out both}.boot-progress{width:300px;height:2px;background:#ffa50033;margin:0 auto 20px;position:relative;overflow:hidden}.boot-bar{height:100%;background:orange;width:0;animation:bootProgress .8s ease-out both}.boot-messages{color:orange;font-family:Share Tech Mono,monospace;font-size:.8rem;letter-spacing:1px}.boot-msg{opacity:0;margin:5px 0;animation:bootMessageFade .4s ease-out forwards}.boot-msg:nth-child(1){animation-delay:.1s}.boot-msg:nth-child(2){animation-delay:.3s}.boot-msg:nth-child(3){animation-delay:.5s}.boot-msg:nth-child(4){animation-delay:.7s}@keyframes bootProgress{0%{width:0}25%{width:25%}50%{width:60%}75%{width:85%}to{width:100%}}@keyframes bootMessageFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bootSequenceFade{0%,80%{opacity:1}to{opacity:0;pointer-events:none}}.tactical-corners{position:absolute;inset:0;pointer-events:none;z-index:1;animation:cornerFadeIn .3s ease-out 1s both}@keyframes cornerFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.tactical-corners:before,.tactical-corners:after{content:"";position:absolute;width:15px;height:15px;border:1px solid #FFA500}.tactical-corners:before{top:0;left:0;border-right:none;border-bottom:none;clip-path:polygon(0 0,0 100%,20% 100%,20% 20%,100% 20%,100% 0)}.tactical-corners:after{top:0;right:0;border-left:none;border-bottom:none;clip-path:polygon(0 0,100% 0,100% 100%,80% 100%,80% 20%,0 20%)}.connection-panel:before,.connection-panel:after{content:"";position:absolute;width:15px;height:15px;border:1px solid #FFA500;z-index:1}.connection-panel:before{bottom:0;left:0;border-right:none;border-top:none;clip-path:polygon(0 0,20% 0,20% 80%,100% 80%,100% 100%,0 100%)}.connection-panel:after{bottom:0;right:0;border-left:none;border-top:none;clip-path:polygon(0 80%,80% 80%,80% 0,100% 0,100% 100%,0 100%)}@keyframes militaryPanelEntry{0%{opacity:0;transform:scale(.8) rotateX(10deg);filter:brightness(.5)}50%{opacity:.8;transform:scale(1.02) rotateX(0)}to{opacity:1;transform:scale(1) rotateX(0);filter:brightness(1)}}@keyframes borderPulse{0%,to{opacity:.3}50%{opacity:.6}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.connection-header{padding:20px;border-bottom:1px solid #FFA500;background:#0000004d;position:relative;overflow:hidden;opacity:0;animation:fadeIn .3s ease-out 1s both}@keyframes sweep{0%{left:-100%}to{left:100%}}.military-title{text-align:center;position:relative;display:flex;align-items:center;justify-content:center;gap:10px}.logo{width:32px;height:32px;object-fit:contain;opacity:0;animation:logoFlicker .3s ease-out 1.1s both}@keyframes logoFlicker{0%{opacity:0;filter:brightness(3)}20%{opacity:.3;filter:brightness(2)}40%{opacity:0;filter:brightness(3)}60%{opacity:.7;filter:brightness(1.5)}80%{opacity:.2;filter:brightness(2)}to{opacity:1;filter:brightness(1)}}.classification-bar{color:#f44;font-size:.7rem;font-weight:700;letter-spacing:2px;margin-bottom:5px;background:#ff44441a;padding:2px 8px;border:1px solid #ff4444;display:inline-block;animation:classificationBlink 2s ease-in-out infinite}@keyframes classificationBlink{0%,80%,to{opacity:1}90%{opacity:.7}}.military-title h2{color:orange;font-family:Share Tech Mono,monospace;font-size:1.2rem;font-weight:700;margin:0;letter-spacing:2px;text-shadow:none;overflow:hidden;white-space:nowrap;width:0;animation:typewriter .6s steps(12) 1.2s both,blinkCursor .3s linear 1.2s 2}@keyframes typewriter{0%{width:0}to{width:15ch}}@keyframes blinkCursor{0%,50%{border-right:2px solid #FFA500}51%,to{border-right:2px solid transparent}}@keyframes titleGlow{0%{text-shadow:0 0 10px rgba(0,255,65,.8),0 0 20px rgba(0,255,65,.4),0 0 30px rgba(0,255,65,.2)}to{text-shadow:0 0 15px rgba(0,255,65,1),0 0 25px rgba(0,255,65,.6),0 0 35px rgba(0,255,65,.3)}}.subtitle{color:#888;font-size:.8rem;letter-spacing:1px;margin-bottom:15px;font-weight:400}.connection-status{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.9rem;background:#0000004d;padding:8px 15px;border:1px solid #333;margin-top:15px;opacity:0;animation:fadeIn .3s ease-out 2.5s both}.status-label{color:#ccc;font-size:.8rem;letter-spacing:1px}.status-indicator{width:12px;height:12px;border-radius:50%;display:inline-block;animation:pulse 2s infinite}.status-indicator.status-disconnected{background:#666;animation:none}.status-indicator.status-connecting{background:#fa0}.status-indicator.status-connected{background:orange}.status-indicator.status-waiting{background:#0af}.status-indicator.status-error{background:#f44}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.connection-content{padding:20px}.view{animation:fadeIn .2s ease-in}.view.hidden{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.btn{background:#000c;border:none;color:orange;padding:8px 16px;border-radius:0;cursor:pointer;font-family:Share Tech Mono,monospace;font-size:.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:3px;text-decoration:none;min-height:35px;width:auto;position:relative;overflow:visible;box-shadow:none}.btn:before,.btn:after{content:"";position:absolute;width:8px;height:8px;border:1px solid #666666;transition:border-color .3s ease}.btn:before{top:0;left:0;border-right:none;border-bottom:none;clip-path:polygon(0 0,0 100%,25% 100%,25% 25%,100% 25%,100% 0)}.btn:after{bottom:0;right:0;border-left:none;border-top:none;clip-path:polygon(0 75%,75% 75%,75% 0,100% 0,100% 100%,0 100%)}.btn:hover{background:#003200cc;box-shadow:none;transform:translateY(-2px);color:#fff}.btn:hover:before,.btn:hover:after{border-color:orange}.btn:active{transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;background:#32323280;color:#666;border-color:#444}.btn-icon{font-size:1.5rem;margin-bottom:2px}.btn-text{font-size:.9rem;font-weight:700;line-height:1}.btn-sub{font-size:.7rem;opacity:.8;font-weight:400;text-transform:none;letter-spacing:0}.btn.btn-ghost{background:#00000080;border:1px solid #666;color:#ccc;min-height:50px;font-size:.8rem}.btn.btn-ghost:hover{border-color:#999;color:#fff;background:#64646433}.btn.btn-small{padding:8px 15px;font-size:.7rem;min-height:35px;min-width:90px}.btn.btn-small:before,.btn.btn-small:after{width:6px;height:6px}.tactical-briefing{background:#0006;border:1px solid #FFA500;padding:15px;margin-bottom:20px;position:relative}.briefing-text{color:orange;font-size:.9rem;font-family:Share Tech Mono,monospace;letter-spacing:1px;line-height:1.4;text-align:center}.connection-options{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:25px}.connection-options .btn:nth-child(1){animation:fadeInUp .3s ease-out 1.9s both}.connection-options .btn:nth-child(2){animation:fadeInUp .3s ease-out 2.1s both}.connection-options .btn:nth-child(3){animation:fadeInUp .3s ease-out 2.3s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.security-notice{background:#ff44441a;border:1px solid #ff4444;padding:15px;margin-top:20px;position:relative}.notice-header{color:#f44;font-weight:700;font-size:.8rem;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.security-notice p{color:#faa;font-size:.8rem;line-height:1.4;margin:0}.command-center{margin-bottom:25px}.command-header{text-align:center;margin-bottom:20px;background:#00ff410d;border:1px solid #FFA500;padding:15px}.command-header h3{color:orange;font-size:1.2rem;margin:0 0 5px;letter-spacing:2px;text-shadow:none}.command-callsign{color:#fa0;font-size:.8rem;letter-spacing:1px;font-weight:700}.tactical-info{margin-bottom:20px}.tactical-info p{color:#ccc;font-size:.9rem;margin-bottom:10px;text-align:center;letter-spacing:.5px}.room-link-container{display:flex;gap:10px;margin:15px 0}.tactical-link{flex:1;background:#000c;border:none;color:orange;padding:12px;border-radius:0;font-family:Share Tech Mono,monospace;font-size:.8rem;letter-spacing:1px;outline:none;text-transform:uppercase;box-shadow:none;position:relative}.tactical-link:before,.tactical-link:after{content:"";position:absolute;width:8px;height:8px;border:1px solid #666;transition:border-color .3s ease}.tactical-link:before{top:0;left:0;border-right:none;border-bottom:none;clip-path:polygon(0 0,0 100%,25% 100%,25% 25%,100% 25%,100% 0)}.tactical-link:after{bottom:0;right:0;border-left:none;border-top:none;clip-path:polygon(0 75%,75% 75%,75% 0,100% 0,100% 100%,0 100%)}.tactical-link:focus{color:#fff}.tactical-link:focus:before,.tactical-link:focus:after{border-color:orange}.tactical-display{margin:20px 0}.display-frame{background:#000c;border:2px solid #FFA500;padding:20px;position:relative;overflow:hidden}.scan-lines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,65,.05) 2px,rgba(0,255,65,.05) 4px);animation:scanlines 1s linear infinite}.tactical-qr{text-align:center;position:relative;z-index:1}.qr-icon{font-size:3rem;color:orange;margin-bottom:10px;text-shadow:none}.qr-label{color:orange;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}.operatives-status{background:#0009;border:1px solid #FFA500;margin:20px 0}.status-header{background:#00ff411a;border-bottom:1px solid #FFA500;padding:10px 15px;display:flex;align-items:center;gap:10px}.radar-sweep{width:12px;height:12px;border:2px solid #FFA500;border-radius:50%;border-top-color:transparent;animation:radar 1s linear infinite}@keyframes radar{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-header span{color:orange;font-size:.8rem;letter-spacing:1px;font-weight:700;text-transform:uppercase}.operatives-list{padding:15px}.operative-slot{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(0,255,65,.2)}.operative-slot:last-child{border-bottom:none}.operative-callsign{color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.5px}.operative-status.online{color:orange;font-size:1.2rem;text-shadow:none;animation:pulse 2s ease-in-out infinite}.infiltration-panel{margin-bottom:20px}.infiltration-header{text-align:center;background:#ffa5000d;border:1px solid rgba(255,165,0,.3);padding:15px;margin-bottom:15px}.infiltration-header h3{color:orange;margin:0;font-size:1.1rem;letter-spacing:1px;text-shadow:none;font-weight:500}.frequency-input{margin-bottom:15px}.frequency-input label{display:block;color:orange;margin-bottom:8px;font-size:.75rem;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.infiltration-help{margin-top:15px}.tactical-note{background:#ffa5000d;border:1px solid rgba(255,165,0,.2);padding:10px}.note-header{color:orange;font-weight:500;font-size:.7rem;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.tactical-note p{color:#ccc;font-size:.7rem;line-height:1.3;margin:0}.input-group{display:flex;gap:8px;align-items:stretch}.input-group .btn{min-height:auto;padding:10px 16px;font-size:.75rem}.room-code-input{flex:1;background:#00000080;border:1px solid rgba(255,165,0,.3);color:#fff;padding:10px;border-radius:2px;font-family:Share Tech Mono,monospace;font-size:.8rem;outline:none}.room-code-input:focus{border-color:orange;box-shadow:none}.room-code-input::placeholder{color:#888}.join-help{background:#ffa5000d;border:1px solid rgba(255,165,0,.2);border-radius:2px;padding:8px;margin-top:10px;font-size:.7rem;line-height:1.3}.connecting-animation{text-align:center;margin-bottom:30px}.spinner{width:40px;height:40px;border:3px solid #333;border-top:3px solid #FFA500;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.connecting-animation h3{color:orange;margin-bottom:10px}.connection-progress{margin:20px 0}.progress-bar{background:#333;border-radius:10px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,orange,#4f7);height:100%;width:0%;transition:width .3s ease;border-radius:10px}.mission-ready{margin-bottom:25px}.success-header{text-align:center;background:#00ff411a;border:2px solid #FFA500;padding:20px;margin-bottom:20px}.success-header h3{color:orange;margin:0 0 10px;font-size:1.4rem;letter-spacing:2px;text-shadow:none}.mission-status{color:#fa0;font-size:.9rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.tactical-readout{background:#000c;border:1px solid #FFA500;overflow:hidden}.readout-item{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid rgba(0,255,65,.2);background:linear-gradient(90deg,rgba(0,255,65,.02),transparent)}.readout-item:last-child{border-bottom:none}.readout-item:nth-child(2n){background:linear-gradient(90deg,rgba(0,255,65,.05),transparent)}.readout-label{color:#888;font-size:.8rem;letter-spacing:1px;text-transform:uppercase;font-weight:700}.readout-value{color:#fff;font-weight:700;font-family:Share Tech Mono,monospace;letter-spacing:.5px}.readout-value.status-secure{color:orange;text-shadow:none}.mission-failure{margin-bottom:25px}.failure-header{text-align:center;background:#ff44441a;border:2px solid #ff4444;padding:20px;margin-bottom:20px;animation:alertPulse 1s ease-in-out infinite alternate}@keyframes alertPulse{0%{box-shadow:0 0 10px #ff44444d;border-color:#f44}to{box-shadow:0 0 20px #f449;border-color:#f88}}.failure-header h3{color:#f44;margin:0 0 10px;font-size:1.3rem;letter-spacing:2px;text-shadow:none}.alert-status{color:#fa4;font-size:.8rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.error-analysis{background:#320000cc;border:1px solid #ff4444;padding:15px;margin-top:15px;font-family:Share Tech Mono,monospace;font-size:.8rem;color:#faa;max-height:150px;overflow-y:auto;line-height:1.4}.command-actions,.infiltration-actions,.connecting-actions,.mission-actions,.failure-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:15px;padding:12px;background:#0000001a;border-top:1px solid rgba(255,165,0,.2)}.waiting-message{display:none;text-align:center;padding:12px 20px;margin:10px 0;background:#ffa5001a;border:1px solid #FFA500;border-radius:4px;color:orange;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.tactical-spinner{width:50px;height:50px;border:3px solid rgba(0,255,65,.2);border-top:3px solid #FFA500;border-radius:50%;animation:tacticalSpin 1s linear infinite;margin:0 auto 20px;position:relative}.tactical-spinner:before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;background:orange;border-radius:50%;transform:translate(-50%,-50%);opacity:.8;animation:pulse 1s ease-in-out infinite alternate}@keyframes tacticalSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.infiltration-progress{text-align:center;margin-bottom:20px}.infiltration-progress h3{color:orange;margin:15px 0 10px;font-size:1rem;letter-spacing:1px;text-shadow:none;font-weight:500}.infiltration-progress p{color:#ccc;margin-bottom:15px;font-size:.8rem;letter-spacing:.3px}.progress-label{color:#888;font-size:.65rem;text-transform:uppercase;letter-spacing:.5px;margin-top:5px}@media (max-width: 600px){.connection-panel{margin:5px;max-height:95vh;width:98%}.military-title h2{font-size:1.4rem;letter-spacing:2px}.classification-bar{font-size:.6rem;letter-spacing:1px}.connection-options{gap:12px}.room-link-container,.input-group{flex-direction:column;gap:10px}.command-actions,.infiltration-actions,.connecting-actions,.mission-actions,.failure-actions{flex-direction:column;align-items:center;gap:10px}.btn{width:100%;max-width:280px;min-height:70px}.btn-icon{font-size:1.2rem}.btn-text{font-size:.8rem}.btn-sub{font-size:.65rem}.tactical-readout{font-size:.85rem}.readout-item{padding:10px 15px}.operatives-list{padding:10px}}.dashboard-chat-panel{position:fixed;top:0;right:0;width:280px;height:100vh;background:#000000e6;border-left:1px solid rgba(255,165,0,.6);z-index:1000;display:flex;flex-direction:column;font-family:Share Tech Mono,monospace;font-size:.8rem}.integrated-chat{background:#0009;border:1px solid rgba(255,165,0,.4);border-radius:4px;margin:15px 0;padding:0;font-family:Share Tech Mono,monospace;font-size:.8rem}.integrated-chat .chat-header{background:#0006;border-bottom:1px solid rgba(255,165,0,.3);padding:6px 12px;font-size:.7rem;font-weight:400;color:#ffa500cc;text-align:left;letter-spacing:1px;position:relative}.integrated-chat .chat-header:after{content:"●";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:orange;font-size:.5rem;opacity:.7}.integrated-chat .chat-messages{height:120px;overflow-y:auto;padding:8px;background:#0003;border-bottom:1px solid rgba(255,165,0,.2);font-size:.7rem;line-height:1.3}.integrated-chat .chat-messages::-webkit-scrollbar{width:3px}.integrated-chat .chat-messages::-webkit-scrollbar-track{background:#0003}.integrated-chat .chat-messages::-webkit-scrollbar-thumb{background:#ffa50066;border-radius:2px}.integrated-chat .chat-input-container{display:flex;padding:6px 8px;background:#0000004d;gap:6px;align-items:center}.integrated-chat .chat-input-field{flex:1;background:#0009;border:1px solid rgba(255,165,0,.4);border-radius:2px;padding:4px 6px;color:#fff;font-family:Share Tech Mono,monospace;font-size:.7rem;outline:none}.integrated-chat .chat-input-field:focus{border-color:#ffa500cc}.integrated-chat .chat-input-field::placeholder{color:#666;font-style:italic}#hosting-send-btn,#connected-send-btn{background:#ffa50099;border:1px solid rgba(255,165,0,.4);border-radius:2px;padding:4px 8px;color:#fff;font-family:Share Tech Mono,monospace;font-size:.6rem;cursor:pointer;transition:background-color .2s ease;min-width:40px}#hosting-send-btn:hover,#connected-send-btn:hover{background:#ffa500cc}.lobby-chat{background:#000000b3;border:1px solid rgba(255,165,0,.4);border-radius:0;margin:0;padding:0;position:relative;overflow:hidden}.chat-header{background:#00000080;border-bottom:1px solid rgba(255,165,0,.3);padding:8px 12px;font-size:.75rem;font-weight:400;color:#ffa500cc;text-align:left;letter-spacing:1px;position:relative}.chat-header:after{content:"●";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:orange;font-size:.6rem;opacity:.7}.chat-messages{height:150px;overflow-y:auto;padding:8px;background:#0000004d;border-bottom:1px solid rgba(255,165,0,.2);font-family:Share Tech Mono,monospace;font-size:.7rem;line-height:1.3}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:#0003}.chat-messages::-webkit-scrollbar-thumb{background:#ffa50066;border-radius:2px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#ffa50099}.system-message{color:#ffd700b3;font-style:italic;margin-bottom:4px;padding:2px 4px;background:#ffd7000d;border-left:2px solid rgba(255,215,0,.3);font-size:.65rem}.chat-message{margin-bottom:3px;padding:2px 4px;position:relative;word-wrap:break-word;font-size:.7rem}.local-message{background:#ffa5000d;border-left:2px solid rgba(255,165,0,.3);margin-left:8px}.remote-message{background:#ffaa000d;border-left:2px solid rgba(255,170,0,.3);margin-right:8px}.message-time{color:#666;font-size:.6rem;margin-right:4px;opacity:.5}.message-sender{color:#fa0c;font-weight:400;margin-right:4px;font-size:.65rem}.local-message .message-sender{color:#ffa500cc}.message-text{color:#ffffffe6;word-break:break-word;font-size:.7rem}.chat-input-container{display:flex;padding:6px 8px;background:#0006;gap:6px;align-items:center}.chat-input-field{flex:1;background:#0009;border:1px solid rgba(255,165,0,.4);border-radius:2px;padding:4px 6px;color:#fff;font-family:Share Tech Mono,monospace;font-size:.7rem;transition:border-color .2s ease;outline:none}.chat-input-field:focus{border-color:#ffa500cc}.chat-input-field::placeholder{color:#666;font-style:italic}#send-chat-btn,#send-chat-btn-connected,#dashboard-send-btn{background:#ffa50099;border:1px solid rgba(255,165,0,.4);border-radius:2px;padding:4px 8px;color:#fff;font-family:Share Tech Mono,monospace;font-size:.6rem;font-weight:400;letter-spacing:.5px;cursor:pointer;transition:background-color .2s ease;min-width:40px}#send-chat-btn:hover,#send-chat-btn-connected:hover,#dashboard-send-btn:hover{background:#ffa500cc}#send-chat-btn:active,#send-chat-btn-connected:active,#dashboard-send-btn:active{background:#ffa500e6}.chat-connecting{opacity:.5;pointer-events:none}.chat-connected{animation:chatOnline .5s ease-out}@keyframes chatOnline{0%{opacity:.5;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (max-width: 1024px){.dashboard-chat-panel{display:none}.chat-messages{height:120px;font-size:.65rem}.chat-input-field{font-size:.65rem;padding:3px 5px}#send-chat-btn,#send-chat-btn-connected,#dashboard-send-btn{padding:3px 6px;font-size:.55rem;min-width:35px}}.tactical-alert{position:relative;margin-bottom:10px;padding:12px;border:1px solid;border-radius:3px;font-family:Share Tech Mono,IBM Plex Mono,monospace;font-size:.7rem;animation:tacticalAlertSlide .3s ease-out}@keyframes tacticalAlertSlide{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.tactical-alert-warning{background:#ffa5001a;border-color:orange;color:orange}.tactical-alert-error{background:#dc143c1a;border-color:#dc143c;color:#dc143c}.tactical-alert-info{background:#00bfff1a;border-color:#00bfff;color:#00bfff}.alert-header{display:flex;align-items:center;margin-bottom:8px;font-weight:600}.alert-icon{margin-right:8px;font-weight:700;font-size:.8rem}.alert-title{flex:1;font-weight:600;letter-spacing:.05em}.alert-close{background:none;border:none;color:inherit;font-size:1rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s ease}.alert-close:hover{opacity:1}.alert-message{font-size:.65rem;opacity:.9;line-height:1.3}.status-indicator.status-warning{background:orange;box-shadow:0 0 8px #ffa50099}
