@tailwind base;@tailwind components;@tailwind utilities;body{background-color:#000;color:#00ff41;font-family:VT323,monospace;overflow:hidden;margin:0}#root:before{content:" ";display:block;position:absolute;inset:0;background:linear-gradient(#12101000 50%,#00000040 50%),linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f);z-index:2;background-size:100% 2px,3px 100%;pointer-events:none}@keyframes textShadow{0%{text-shadow:.438px 0 1px rgba(0,30,255,.5),-.438px 0 1px rgba(255,0,80,.3),0 0 3px}50%{text-shadow:2.792px 0 1px rgba(0,30,255,.5),-2.792px 0 1px rgba(255,0,80,.3),0 0 3px}to{text-shadow:.438px 0 1px rgba(0,30,255,.5),-.438px 0 1px rgba(255,0,80,.3),0 0 3px}}.crt-flicker{animation:textShadow 1.6s infinite}::-webkit-scrollbar{display:none}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes flash-green{0%{background-color:#22c55e4d}to{background-color:transparent}}@keyframes flash-red{0%{background-color:#ef44444d}to{background-color:transparent}}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes pulse-danger{0%,to{opacity:1}50%{opacity:.5}}@keyframes celebrate{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes credits-scroll{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scan{0%{transform:translateY(-100vh)}to{transform:translateY(100vh)}}.bg-gradient-radial{background:radial-gradient(circle at center,var(--tw-gradient-from, transparent),var(--tw-gradient-via, transparent) 50%,var(--tw-gradient-to, black))}@keyframes fog{0%{transform:translate(-20%)}to{transform:translate(20%)}}@keyframes drawLine{0%{stroke-dasharray:100;stroke-dashoffset:100;opacity:0}to{stroke-dasharray:100;stroke-dashoffset:0;opacity:1}}@keyframes drawCircle{0%{stroke-dasharray:400;stroke-dashoffset:400;opacity:0}to{stroke-dasharray:400;stroke-dashoffset:0;opacity:1}}@keyframes eyeOpen{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}@keyframes scanHorizontal{0%,to{transform:translateY(-20px);opacity:0}50%{transform:translateY(0);opacity:.8}}@keyframes growBranch{0%{stroke-dashoffset:200;opacity:0}10%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes growVine{0%{stroke-dashoffset:150;opacity:0}10%{opacity:.6}to{stroke-dashoffset:0;opacity:.6}}@keyframes driftRight{0%{transform:translate(0) scale(.9);opacity:0}20%{opacity:.3}80%{opacity:.3}to{transform:translate(calc(100vw + 200px)) scale(1);opacity:0}}@keyframes driftLeft{0%{transform:translate(0) scale(.9);opacity:0}20%{opacity:.2}80%{opacity:.2}to{transform:translate(calc(-100vw - 200px)) scale(1);opacity:0}}@keyframes baronReveal{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}50%{opacity:.4;transform:translate(-50%,-50%) scale(1.05)}to{opacity:.15;transform:translate(-50%,-50%) scale(1)}}@keyframes dangerFlash{0%,to{opacity:0}50%{opacity:.8}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes titleReveal{0%{opacity:0;transform:scale(.8) translateY(20px);filter:blur(10px)}60%{opacity:1;transform:scale(1.05) translateY(-5px);filter:blur(0)}to{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}.rivalry-notification{position:fixed;top:0;left:50%;transform:translate(-50%);z-index:100;padding:12px 24px;background:linear-gradient(135deg,#1a1a2e,#0a0a15);border:1px solid #00ff41;border-top:none;border-radius:0 0 8px 8px;font-family:VT323,monospace;font-size:18px;color:#00ff41;display:flex;align-items:center;gap:8px;animation:rivalry-slide-down .3s ease-out,rivalry-fade-out .5s ease-in 3s forwards;box-shadow:0 4px 20px #00ff414d}.rivalry-notification.fading{opacity:0;transform:translate(-50%) translateY(-20px)}.rivalry-notification .rivalry-team-name{color:#22d3ee;font-weight:700}.rivalry-notification .rivalry-lightning{color:#f59e0b}@keyframes rivalry-slide-down{0%{transform:translate(-50%) translateY(-100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@keyframes rivalry-fade-out{to{opacity:0;transform:translate(-50%) translateY(-20px)}}.assistance-button{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1px solid #ef4444;color:#ef4444;font-family:VT323,monospace;font-size:14px;cursor:pointer;transition:all .2s ease;border-radius:4px}.assistance-button:hover:not(:disabled){background:#ef444433}.assistance-button:disabled{opacity:.5;cursor:not-allowed}.assistance-button.requested{background:#22c55e33;border-color:#22c55e;color:#22c55e;cursor:pointer}.assistance-button.requested .cancel-icon{opacity:.5;margin-left:4px;transition:all .2s ease}.assistance-button.requested:hover:not(:disabled){background:#ef444433;border-color:#ef4444;color:#ef4444}.assistance-button.requested:hover:not(:disabled) .cancel-icon{opacity:1}.assistance-container{display:inline-block}.help-indicator{position:fixed;top:20px;right:20px;z-index:50;width:16px;height:16px}.help-indicator .pulse-dot{width:16px;height:16px;background:#ef4444;border-radius:50%;position:relative}.help-indicator .pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid #ef4444;border-radius:50%;animation:help-pulse-ring 1.5s ease-out infinite}@keyframes help-pulse-ring{0%{width:16px;height:16px;opacity:1}to{width:40px;height:40px;opacity:0}}.team-card.stuck{border-color:#f59e0b!important;box-shadow:0 0 20px #f59e0b33}.team-card.help-requested{border-color:#ef4444!important;box-shadow:0 0 20px #ef44444d;animation:pulse-border 2s infinite}.stuck-badge{position:absolute;top:-10px;right:10px;padding:4px 12px;background:#f59e0b;color:#000;font-family:VT323,monospace;font-size:12px;font-weight:700;border-radius:4px}.help-badge{position:absolute;top:-10px;right:10px;padding:4px 12px;background:#ef4444;color:#fff;font-family:VT323,monospace;font-size:12px;font-weight:700;border-radius:4px;animation:pulse-badge 1s infinite}@keyframes pulse-border{0%,to{box-shadow:0 0 20px #ef44444d}50%{box-shadow:0 0 30px #ef444480}}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.showdown-overlay{position:fixed;inset:0;z-index:60;background:#000000f2;display:flex;align-items:center;justify-content:center;font-family:VT323,monospace}.showdown-intro{text-align:center;animation:showdown-appear .5s ease-out}.showdown-intro .showdown-icon{color:#f59e0b;margin-bottom:20px;animation:showdown-pulse 1s ease-in-out infinite}.showdown-intro h1{font-size:64px;color:#f59e0b;margin-bottom:10px;text-shadow:0 0 20px rgba(245,158,11,.5)}.showdown-intro .showdown-game-name{font-size:28px;color:#22d3ee;margin-bottom:20px}.showdown-intro .showdown-vs{font-size:20px;color:#888;margin-bottom:30px}.showdown-intro .intro-countdown{font-size:96px;color:#fff;animation:countdown-pulse 1s ease-in-out infinite}@keyframes showdown-appear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes showdown-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes countdown-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.showdown-game{width:100%;max-width:500px;padding:30px}.showdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #333}.showdown-header h2{font-size:28px;color:#f59e0b}.showdown-timer{display:flex;align-items:center;gap:8px;font-size:24px;color:#22c55e}.showdown-timer.danger{color:#ef4444;animation:timer-danger .5s ease-in-out infinite}@keyframes timer-danger{0%,to{opacity:1}50%{opacity:.5}}.showdown-content{text-align:center}.showdown-result{font-size:32px;padding:30px;border-radius:8px}.showdown-result.success{color:#22c55e;background:#22c55e1a;border:2px solid #22c55e}.showdown-result.failure{color:#ef4444;background:#ef44441a;border:2px solid #ef4444}.cipher-display{background:#111;border:2px solid #333;padding:30px;border-radius:8px;margin-bottom:30px}.cipher-type{font-size:14px;color:#888;margin-bottom:15px;letter-spacing:2px}.encoded-text{font-size:36px;color:#22d3ee;letter-spacing:4px;font-weight:700}.decode-input{display:flex;gap:10px}.decode-input input{flex:1;background:#000;border:2px solid #00ff41;color:#00ff41;padding:15px;font-size:20px;font-family:VT323,monospace;text-transform:uppercase;letter-spacing:2px}.decode-input input:focus{outline:none;box-shadow:0 0 10px #00ff414d}.decode-input button{background:#00ff41;color:#000;border:none;padding:15px 30px;font-size:18px;font-family:VT323,monospace;font-weight:700;cursor:pointer;transition:all .2s ease}.decode-input button:hover{background:#0c3}.memorize-phase{animation:fadeIn .5s ease-out}.memorize-instruction{display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;color:#888;margin-bottom:30px}.sequence-display{display:flex;justify-content:center;gap:15px;margin-bottom:30px}.memory-symbol{width:60px;height:60px;display:flex;align-items:center;justify-content:center;font-size:36px;background:#111;border:2px solid #22d3ee;border-radius:8px;color:#22d3ee}.memory-symbol.empty{border-color:#333;color:#333}.memory-symbol.filled{border-color:#22c55e;color:#22c55e}.memorize-countdown{font-size:48px;color:#f59e0b;animation:countdown-pulse 1s ease-in-out infinite}.recall-phase{animation:fadeIn .5s ease-out}.recall-instruction{font-size:18px;color:#888;margin-bottom:20px}.user-sequence{display:flex;justify-content:center;gap:10px;margin-bottom:30px}.symbol-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:20px}.symbol-btn{width:60px;height:60px;font-size:28px;background:#1a1a2e;border:2px solid #444;color:#fff;border-radius:8px;cursor:pointer;transition:all .2s ease}.symbol-btn:hover{border-color:#22d3ee;background:#22d3ee1a}.clear-btn{background:transparent;border:1px solid #666;color:#666;padding:8px 20px;font-family:VT323,monospace;cursor:pointer;transition:all .2s ease}.clear-btn:hover{border-color:#ef4444;color:#ef4444}.correct-sequence{font-size:18px;color:#888;margin-top:10px}.reaction-zone{min-height:300px;display:flex;align-items:center;justify-content:center;border-radius:12px;cursor:pointer;transition:all .2s ease}.reaction-zone.waiting{background:linear-gradient(135deg,#1a1a2e,#0a0a15);border:3px solid #333}.reaction-zone.go{background:linear-gradient(135deg,#064e3b,#022c22);border:3px solid #22c55e;animation:go-flash .5s ease-out}.reaction-zone.early{background:linear-gradient(135deg,#450a0a,#1c0202);border:3px solid #ef4444}.reaction-zone.done{background:linear-gradient(135deg,#1e3a5f,#0a1929);border:3px solid #22d3ee}@keyframes go-flash{0%{background:#22c55e}to{background:linear-gradient(135deg,#064e3b,#022c22)}}.waiting-content,.go-content,.early-content,.done-content{text-align:center}.target-icon{color:#444;margin-bottom:20px}.wait-text{font-size:24px;color:#666;margin-bottom:15px}.countdown-hint{font-size:48px;color:#f59e0b;animation:countdown-pulse 1s ease-in-out}.instruction-text{font-size:14px;color:#444}.nexus-symbol{font-size:100px;color:#22c55e;margin-bottom:10px;animation:nexus-pulse .3s ease-out}.nexus-symbol.success{color:#22d3ee}@keyframes nexus-pulse{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.click-now{font-size:32px;color:#22c55e;font-weight:700}.error-icon{color:#ef4444;margin-bottom:20px}.error-text{font-size:32px;color:#ef4444;margin-bottom:10px}.penalty-text{font-size:16px;color:#888}.reaction-result{font-size:18px;color:#888;margin-bottom:5px}.reaction-time{font-size:64px;color:#22d3ee;font-weight:700}.showdown-waiting{text-align:center;color:#888}.showdown-waiting h2{font-size:24px;color:#f59e0b;margin:20px 0}.waiting-dots{font-size:36px;color:#444}.waiting-dots span{animation:dots-bounce 1.4s ease-in-out infinite}.waiting-dots span:nth-child(2){animation-delay:.2s}.waiting-dots span:nth-child(3){animation-delay:.4s}@keyframes dots-bounce{0%,80%,to{opacity:.3}40%{opacity:1}}.showdown-results{text-align:center;animation:results-appear .5s ease-out}.showdown-results .trophy-icon{color:#f59e0b;margin-bottom:20px;animation:trophy-bounce 1s ease-out}@keyframes trophy-bounce{0%{transform:scale(0) rotate(-20deg)}50%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0)}}@keyframes results-appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.showdown-results h1{font-size:48px;margin-bottom:30px}.showdown-results h1:first-of-type{color:#22c55e}.winner-announcement{display:flex;flex-direction:column;align-items:center;gap:10px;background:#f59e0b1a;border:2px solid #f59e0b;padding:20px 40px;border-radius:8px}.winner-label{font-size:14px;color:#888;letter-spacing:3px}.winner-name{font-size:32px;color:#f59e0b;font-weight:700}.winner-time{font-size:18px;color:#22d3ee}.winner-announcement-overlay{position:fixed;inset:0;z-index:100;background:#000000e6;display:flex;align-items:center;justify-content:center;animation:winner-overlay-appear .3s ease-out}@keyframes winner-overlay-appear{0%{opacity:0}to{opacity:1}}.winner-announcement-content{text-align:center;animation:winner-content-bounce .5s ease-out}@keyframes winner-content-bounce{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.winner-trophy{color:#f59e0b;margin-bottom:20px;animation:trophy-spin 1s ease-out}@keyframes trophy-spin{0%{transform:rotate(-360deg) scale(0)}to{transform:rotate(0) scale(1)}}.winner-announcement-content h1{font-size:36px;color:#f59e0b;margin-bottom:10px;text-shadow:0 0 20px rgba(245,158,11,.5)}.winner-time-display{font-size:24px;color:#22d3ee}.showdown-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:4px;color:#000;font-family:VT323,monospace;font-size:14px;font-weight:700}.showdown-badge svg{color:#000}.showdown-opportunity{background:linear-gradient(135deg,#1e1b4b,#0c0a1d);border:2px solid #f59e0b;border-radius:8px;padding:16px;margin-bottom:16px;animation:showdown-opportunity-pulse 2s ease-in-out infinite}@keyframes showdown-opportunity-pulse{0%,to{box-shadow:0 0 10px #f59e0b4d}50%{box-shadow:0 0 20px #f59e0b80}}.showdown-opportunity-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.showdown-opportunity-header svg{color:#f59e0b}.showdown-opportunity-header span{font-size:16px;font-weight:700;color:#f59e0b}.showdown-opportunity-teams{font-size:14px;color:#888;margin-bottom:12px}.trigger-showdown-btn{width:100%;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#000;padding:12px;font-family:VT323,monospace;font-size:16px;font-weight:700;cursor:pointer;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.trigger-showdown-btn:hover{transform:scale(1.02);box-shadow:0 4px 15px #f59e0b66}.showdown-game-selector{display:flex;gap:8px;margin-bottom:12px}.game-type-btn{flex:1;padding:8px;background:#ffffff0d;border:1px solid #333;color:#888;font-family:VT323,monospace;font-size:12px;cursor:pointer;border-radius:4px;transition:all .2s ease}.game-type-btn:hover{border-color:#f59e0b;color:#f59e0b}.game-type-btn.selected{background:#f59e0b33;border-color:#f59e0b;color:#f59e0b}.extraction-terminal{--et-bg-primary: #0a0a0a;--et-bg-secondary: #0f0f0f;--et-bg-card: #111111;--et-border: #1a3a1a;--et-border-active: #00ff41;--et-text-primary: #00ff41;--et-text-secondary: #00aa2a;--et-text-muted: #006615;--et-text-body: #a0a0a0;--et-accent-success: #22d3ee;--et-accent-warning: #f59e0b;--et-accent-danger: #ef4444;--et-accent-nexus: #a855f7}.extraction-terminal{position:fixed;inset:0;background:var(--et-bg-primary);font-family:VT323,monospace;color:var(--et-text-primary);display:flex;flex-direction:column;overflow:hidden;z-index:50}.et-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,255,65,.03) 2px,rgba(0,255,65,.03) 4px);pointer-events:none;z-index:100}.et-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--et-bg-secondary);border-bottom:2px solid var(--et-border);flex-shrink:0}.et-status-badge{display:flex;align-items:center;gap:8px;padding:8px 16px;border:2px solid;font-size:18px;font-weight:700;letter-spacing:2px}.et-status-badge.et-success{border-color:var(--et-text-primary);color:var(--et-text-primary);background:#00ff411a}.et-icon{width:20px;height:20px}.et-team-info{display:flex;flex-direction:column;align-items:center;gap:4px}.et-team-name{font-size:20px;color:#fff;font-weight:700}.et-completion-time{font-size:14px;color:var(--et-text-muted)}.et-awaiting-notice{display:flex;align-items:center;gap:8px;color:var(--et-text-secondary);font-size:14px}.et-pulse-dot{width:10px;height:10px;background:var(--et-text-primary);border-radius:50%;animation:et-pulse 2s infinite}@keyframes et-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.et-tab-navigation{display:flex;gap:4px;padding:8px 12px;background:var(--et-bg-secondary);border-bottom:1px solid var(--et-border);flex-shrink:0;overflow-x:auto}.et-tab-button{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:1px solid transparent;color:var(--et-text-muted);font-family:VT323,monospace;font-size:16px;cursor:pointer;transition:all .2s;white-space:nowrap}.et-tab-button:hover{color:var(--et-text-secondary);border-color:var(--et-border)}.et-tab-button.active{color:var(--et-text-primary);border-color:var(--et-border-active);background:var(--et-bg-card)}.et-tab-icon{width:18px;height:18px}.et-tab-content{flex:1;overflow-y:auto;padding:16px;background:var(--et-bg-primary)}.et-section-header{margin-bottom:24px;text-align:center}.et-section-header h2{font-size:28px;color:var(--et-text-primary);margin:0 0 8px;letter-spacing:4px}.et-section-header .et-subtitle{font-size:14px;color:var(--et-text-muted)}.et-card{background:var(--et-bg-card);border:1px solid var(--et-border);padding:16px;margin-bottom:12px;transition:all .2s}.et-card:hover{border-color:var(--et-text-secondary)}.et-card.et-active{border-color:var(--et-border-active);box-shadow:0 0 10px #00ff4133}.et-grid{display:grid;gap:16px}.et-grid-2{grid-template-columns:repeat(2,1fr)}.et-grid-3{grid-template-columns:repeat(3,1fr)}@media(max-width:768px){.et-grid-2,.et-grid-3{grid-template-columns:1fr}.et-header{flex-direction:column;gap:12px;text-align:center}.et-tab-navigation{justify-content:flex-start}.et-tab-button{padding:10px 14px;font-size:14px}.et-tab-button span{display:none}}.et-button{padding:10px 20px;background:transparent;border:1px solid var(--et-text-primary);color:var(--et-text-primary);font-family:VT323,monospace;font-size:16px;cursor:pointer;transition:all .2s}.et-button:hover{background:#00ff411a}.et-button:disabled{opacity:.5;cursor:not-allowed}.et-button.et-primary{background:var(--et-text-primary);color:#000}.et-button.et-primary:hover{background:var(--et-text-secondary)}.et-input{width:100%;padding:12px 16px;background:var(--et-bg-primary);border:1px solid var(--et-border);color:var(--et-text-primary);font-family:VT323,monospace;font-size:18px;outline:none}.et-input:focus{border-color:var(--et-border-active)}.et-input::placeholder{color:var(--et-text-muted)}.et-badge{display:inline-block;padding:4px 12px;font-size:12px;letter-spacing:1px;border:1px solid}.et-badge.et-success{border-color:var(--et-accent-success);color:var(--et-accent-success);background:#22d3ee1a}.et-badge.et-warning{border-color:var(--et-accent-warning);color:var(--et-accent-warning);background:#f59e0b1a}.et-badge.et-danger{border-color:var(--et-accent-danger);color:var(--et-accent-danger);background:#ef44441a}.et-badge.et-nexus{border-color:var(--et-accent-nexus);color:var(--et-accent-nexus);background:#a855f71a}@keyframes et-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.8}94%{opacity:1}}.et-flicker{animation:et-flicker 4s infinite}@keyframes et-typing{0%{max-height:0}to{max-height:1000px}}.et-typing-reveal{overflow:hidden;animation:et-typing 3s ease-out forwards}@keyframes et-glitch{0%,to{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}}.et-glitch{animation:et-glitch .3s infinite}.et-progress{height:8px;background:var(--et-bg-secondary);border:1px solid var(--et-border);overflow:hidden}.et-progress-fill{height:100%;background:linear-gradient(90deg,var(--et-text-secondary),var(--et-text-primary));transition:width .3s ease}.et-tab-content::-webkit-scrollbar{width:8px}.et-tab-content::-webkit-scrollbar-track{background:var(--et-bg-secondary)}.et-tab-content::-webkit-scrollbar-thumb{background:var(--et-border);border-radius:4px}.et-tab-content::-webkit-scrollbar-thumb:hover{background:var(--et-text-muted)}
