.particle-field{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:2;overflow:hidden}.particle{position:absolute;bottom:-10px;border-radius:50%;animation:particleFloat 10s ease-in-out infinite}.particle-pink{background:var(--color-neon-pink);box-shadow:0 0 10px var(--color-neon-pink)}.particle-blue{background:var(--color-neon-blue);box-shadow:0 0 10px var(--color-neon-blue)}.particle-mixed:nth-child(odd){background:var(--color-neon-pink);box-shadow:0 0 10px var(--color-neon-pink)}.particle-mixed:nth-child(2n){background:var(--color-neon-blue);box-shadow:0 0 10px var(--color-neon-blue)}.neon-text{font-weight:900;letter-spacing:.05em}.neon-size-sm{font-size:var(--font-size-lg)}.neon-size-md{font-size:var(--font-size-2xl)}.neon-size-lg{font-size:var(--font-size-3xl)}.neon-size-xl{font-size:var(--font-size-4xl)}.glowing-border{position:relative;border:2px solid transparent;border-radius:var(--radius-lg);background:var(--color-bg-card);overflow:hidden}.glowing-border:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:inherit;z-index:-1}.glowing-border-pink{border-color:var(--color-neon-pink);box-shadow:var(--glow-pink)}.glowing-border-blue{border-color:var(--color-neon-blue);box-shadow:var(--glow-blue)}.glowing-border-purple{border-color:var(--color-neon-purple);box-shadow:var(--glow-purple)}.glowing-border-accent{border-color:var(--color-accent);box-shadow:var(--glow-accent)}.cyber-btn{position:relative;padding:var(--spacing-md) var(--spacing-xl);font-weight:700;font-size:var(--font-size-lg);border:2px solid;background:transparent;cursor:pointer;transition:all var(--transition-fast);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cyber-btn-corner{position:absolute;width:10px;height:10px;border:2px solid;border-color:inherit}.cyber-btn-corner-tl{top:-2px;left:-2px;border-right:none;border-bottom:none}.cyber-btn-corner-tr{top:-2px;right:-2px;border-left:none;border-bottom:none}.cyber-btn-corner-bl{bottom:-2px;left:-2px;border-right:none;border-top:none}.cyber-btn-corner-br{bottom:-2px;right:-2px;border-left:none;border-top:none}.cyber-btn-primary{border-color:var(--color-neon-pink);color:var(--color-neon-pink)}.cyber-btn-primary:hover{background:#f0a3;box-shadow:var(--glow-pink)}.cyber-btn-accent{border-color:var(--color-accent);color:var(--color-accent)}.cyber-btn-accent:hover{background:#0ff3;box-shadow:var(--glow-accent)}.cyber-btn-content{position:relative;z-index:1}.cyber-btn.glow-rotate{overflow:visible}.cyber-btn-accent.glow-rotate{--glow-color: var(--color-accent)}.cyber-btn-primary.glow-rotate{--glow-color: var(--color-neon-pink)}.cyber-btn.glow-rotate:before{content:"";position:absolute;width:20px;height:20px;background:var(--glow-color, var(--color-accent));border-radius:50%;opacity:.8;z-index:4;pointer-events:none;animation:borderTrace 2.5s linear infinite;transform:translate(-50%,-50%);filter:blur(8px)}.cyber-btn.glow-rotate:after{content:"";position:absolute;width:8px;height:8px;background:#fff;border-radius:50%;opacity:1;z-index:10;pointer-events:none;animation:borderTrace 2.5s linear infinite;transform:translate(-50%,-50%)}.glow-trail{position:absolute;border-radius:50%;pointer-events:none;animation:borderTrace 2.5s linear infinite;transform:translate(-50%,-50%);background:var(--glow-color, var(--color-accent));filter:blur(8px);z-index:4}.glow-trail:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:50%;z-index:10}.glow-trail-1{width:18px;height:18px;opacity:.75;animation-delay:4ms}.glow-trail-1:after{width:7px;height:7px;opacity:.95}.glow-trail-2{width:18px;height:18px;opacity:.7;animation-delay:8ms}.glow-trail-2:after{width:7px;height:7px;opacity:.9}.glow-trail-3{width:16px;height:16px;opacity:.65;animation-delay:12ms}.glow-trail-3:after{width:6px;height:6px;opacity:.85}.glow-trail-4{width:16px;height:16px;opacity:.6;animation-delay:16ms}.glow-trail-4:after{width:6px;height:6px;opacity:.8}.glow-trail-5{width:14px;height:14px;opacity:.55;animation-delay:.02s}.glow-trail-5:after{width:5px;height:5px;opacity:.75}.glow-trail-6{width:14px;height:14px;opacity:.5;animation-delay:24ms}.glow-trail-6:after{width:5px;height:5px;opacity:.7}.glow-trail-7{width:14px;height:14px;opacity:.45;animation-delay:28ms}.glow-trail-7:after{width:5px;height:5px;opacity:.65}.glow-trail-8{width:12px;height:12px;opacity:.4;animation-delay:32ms}.glow-trail-8:after{width:4px;height:4px;opacity:.6}.glow-trail-9{width:12px;height:12px;opacity:.35;animation-delay:36ms}.glow-trail-9:after{width:4px;height:4px;opacity:.55}.glow-trail-10{width:12px;height:12px;opacity:.3;animation-delay:.04s}.glow-trail-10:after{width:4px;height:4px;opacity:.5}.glow-trail-11{width:10px;height:10px;opacity:.25;animation-delay:44ms}.glow-trail-11:after{width:3px;height:3px;opacity:.45}.glow-trail-12{width:10px;height:10px;opacity:.2;animation-delay:48ms}.glow-trail-12:after{width:3px;height:3px;opacity:.4}.glow-trail-13{width:10px;height:10px;opacity:.15;animation-delay:52ms}.glow-trail-13:after{width:3px;height:3px;opacity:.35}.glow-trail-14{width:8px;height:8px;opacity:.1;animation-delay:56ms}.glow-trail-14:after{width:2px;height:2px;opacity:.3}.glow-trail-15{width:8px;height:8px;opacity:.08;animation-delay:.06s}.glow-trail-15:after{width:2px;height:2px;opacity:.25}.glow-trail-16{width:8px;height:8px;opacity:.05;animation-delay:64ms}.glow-trail-16:after{width:2px;height:2px;opacity:.2}@keyframes borderTrace{0%{top:0;left:0}37.5%{top:0;left:100%}50%{top:100%;left:100%}87.5%{top:100%;left:0}to{top:0;left:0}}.countdown-display{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:100}.countdown-number{font-size:clamp(80px,20vw,150px);font-weight:900;color:var(--color-accent);text-shadow:0 0 20px var(--color-accent),0 0 40px var(--color-accent),0 0 80px var(--color-accent);animation:countdownZoom 1s ease-out forwards}.countdown-text{font-size:clamp(40px,10vw,80px);font-weight:900;color:var(--color-neon-pink);text-shadow:0 0 20px var(--color-neon-pink),0 0 40px var(--color-neon-pink),0 0 80px var(--color-neon-pink);animation:countdownBeat .5s ease-out;letter-spacing:.1em}.countdown-open .countdown-text{animation:correctExplosion .8s ease-out}.slot-panel{position:relative;width:60px;height:80px;perspective:1000px}.slot-inner{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--color-bg-card) 0%,var(--color-bg-light) 100%);border:2px solid var(--color-secondary);border-radius:var(--radius-md);transition:all .3s ease}.slot-char{font-size:var(--font-size-2xl);font-weight:900;color:var(--color-text)}.slot-meta{position:absolute;top:4px;right:4px}.slot-script{font-size:8px;padding:1px 4px;background:var(--color-secondary);border-radius:4px;color:#fff}.slot-player{position:absolute;bottom:-20px;font-size:10px;color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:60px}.slot-glow{position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:calc(var(--radius-md) + 4px);opacity:0;transition:opacity .3s ease;pointer-events:none}.slot-revealed .slot-inner{animation:slotOpenDramatic .6s ease-out forwards}.slot-correct .slot-inner{background:linear-gradient(180deg,var(--color-correct) 0%,#cc0033 100%);border-color:var(--color-correct)}.slot-correct .slot-glow{opacity:1;box-shadow:var(--glow-correct)}.slot-correct .slot-char{text-shadow:0 0 10px rgba(255,255,255,.8)}.slot-incorrect .slot-inner{background:linear-gradient(180deg,var(--color-incorrect) 0%,#0044cc 100%);border-color:var(--color-incorrect);animation:slotOpenDramatic .6s ease-out forwards,incorrectShake .5s ease-out .6s}.slot-incorrect .slot-glow{opacity:1;box-shadow:var(--glow-incorrect)}.result-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);border-radius:var(--radius-xl);animation:scaleIn .5s ease-out}.result-badge-sm{padding:var(--spacing-md)}.result-badge-md{padding:var(--spacing-lg)}.result-badge-lg{padding:var(--spacing-xl)}.result-perfect{background:linear-gradient(135deg,#ff00444d,#ff00aa4d);border:2px solid var(--color-correct);box-shadow:var(--glow-correct)}.result-fail{background:linear-gradient(135deg,#0066ff4d,#0044cc4d);border:2px solid var(--color-incorrect);box-shadow:var(--glow-incorrect)}.result-emoji{font-size:var(--font-size-4xl);animation:countdownBeat .5s ease-out}.result-text{font-size:var(--font-size-xl);font-weight:900;margin-top:var(--spacing-sm);letter-spacing:.1em}.result-perfect .result-text{color:var(--color-correct);text-shadow:var(--text-glow-pink)}.result-fail .result-text{color:var(--color-incorrect);text-shadow:var(--text-glow-blue)}.timer-ring{position:relative;width:80px;height:80px}.timer-ring svg{width:100%;height:100%}.timer-ring-bg{stroke:var(--color-bg-light)}.timer-ring-progress{stroke:var(--color-accent);stroke-linecap:round;transition:stroke-dashoffset 1s linear}.timer-ring-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-xl);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.timer-danger .timer-ring-progress{stroke:var(--color-correct);animation:neonPulse .5s ease-in-out infinite}.timer-danger .timer-ring-text{color:var(--color-correct);text-shadow:var(--text-glow-pink);animation:countdownBeat .5s ease-in-out infinite}.flash-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;pointer-events:none;animation:screenFlash .3s ease-out forwards}.flash-white{background:#ffffff80}.flash-pink{background:#ff00aa4d}.flash-blue{background:#00d4ff4d}.ad-container{width:100%;max-width:728px;margin:var(--spacing-md) auto;text-align:center}.ad-container .adsbygoogle{display:block;width:100%}.ad-placeholder{width:100%;max-width:320px;height:50px;margin:var(--spacing-md) auto;display:flex;align-items:center;justify-content:center;background:var(--color-bg-light);border:1px dashed var(--color-secondary);border-radius:var(--radius-sm)}.ad-placeholder-text{font-size:var(--font-size-xs);color:var(--color-text-muted);opacity:.5}@media (max-width: 480px){.ad-container{max-width:100%}.ad-placeholder{max-width:100%;height:50px}}.how-to-play-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .3s ease}.how-to-play-modal{width:100%;max-width:420px;max-height:90vh;overflow-y:auto;animation:slideUp .4s ease}.how-to-play-content{padding:var(--spacing-lg);background:var(--color-bg-card);border-radius:var(--radius-lg);position:relative;min-height:480px;display:flex;flex-direction:column}.page-indicator{display:flex;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.indicator-dot{width:10px;height:10px;border-radius:50%;background:var(--color-bg-light);cursor:pointer;transition:all .3s ease}.indicator-dot.active{background:var(--color-neon-pink);box-shadow:0 0 10px var(--color-neon-pink);transform:scale(1.2)}.indicator-dot:hover:not(.active){background:var(--color-text-muted)}.skip-btn{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:transparent;border:none;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);transition:color .2s}.skip-btn:hover{color:var(--color-text)}.how-to-play-title{text-align:center;margin-bottom:var(--spacing-lg);display:flex;flex-wrap:wrap;justify-content:center;gap:0 var(--spacing-sm)}.how-to-play-title .neon-text{white-space:nowrap}.intro-section{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.intro-tagline{margin-bottom:var(--spacing-md)}.intro-description{margin-bottom:var(--spacing-lg);line-height:1.8;color:var(--color-text)}.intro-description strong{color:var(--color-neon-pink)}.intro-features{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;margin-bottom:var(--spacing-lg)}.feature-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);border-left:3px solid var(--color-neon-blue)}.feature-icon{font-size:var(--font-size-2xl)}.feature-text{font-size:var(--font-size-md);font-weight:600}.game-flow-section{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md)}.flow-step{display:flex;gap:var(--spacing-md);align-items:flex-start}.flow-number{font-size:var(--font-size-xl);flex-shrink:0}.flow-content{flex:1}.flow-title{font-size:var(--font-size-md);font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-xs)}.flow-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5}.flow-desc strong{color:var(--color-neon-pink)}.tv-mode-section{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.tv-highlight{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:#ff00aa1a;border-radius:var(--radius-md);border:1px solid var(--color-neon-pink)}.tv-description{margin-bottom:var(--spacing-lg);line-height:1.8;color:var(--color-text)}.tv-description strong{color:var(--color-accent)}.tv-features{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-lg)}.tv-feature{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-sm)}.tv-icon{font-size:var(--font-size-lg)}.tv-text{font-size:var(--font-size-sm);font-weight:600}.tv-tip{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#00ffff1a;border-radius:var(--radius-md);border:1px solid rgba(0,255,255,.3)}.tip-label{font-weight:700;color:var(--color-neon-blue)}.tip-text{font-size:var(--font-size-sm);color:var(--color-text)}.tv-tip.recommended{background:linear-gradient(135deg,#ffd70033,#ffa50033);border:2px solid var(--color-neon-yellow);animation:pulse 2s ease-in-out infinite}.tv-tip.recommended .tip-label{color:var(--color-neon-yellow)}.goal-section{flex:1;display:flex;flex-direction:column;align-items:center}.goal-main{display:flex;align-items:baseline;justify-content:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.goal-number{font-weight:700}.goal-text{font-size:var(--font-size-lg);font-weight:600}.goal-rules{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-lg)}.rule-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-sm)}.rule-icon{font-size:var(--font-size-lg)}.rule-text{font-size:var(--font-size-sm)}.rule-text strong{color:var(--color-neon-pink)}.goal-example{width:100%;padding:var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-md);text-align:center}.goal-example .example-title{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.example-players{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.example-player{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.player-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.player-char{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-neon-pink);color:#fff;font-size:var(--font-size-lg);font-weight:700;border-radius:var(--radius-sm);box-shadow:0 0 10px var(--color-neon-pink)}.example-note{font-size:var(--font-size-sm);color:var(--color-accent);font-weight:600}.ready-section{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.ready-checklist{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-lg)}.check-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.check-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-secondary);color:#fff;border-radius:50%;font-size:var(--font-size-sm);font-weight:700}.check-text{font-size:var(--font-size-md);font-weight:600}.ready-message{margin-bottom:var(--spacing-lg);line-height:2;font-size:var(--font-size-lg)}.ready-cta{padding:var(--spacing-md);background:linear-gradient(135deg,#f0a3,#0ff3);border-radius:var(--radius-md);animation:pulse 2s ease-in-out infinite}.cta-text{font-size:var(--font-size-md);font-weight:700;color:var(--color-accent)}.nav-buttons{display:flex;gap:var(--spacing-md);margin-top:auto;padding-top:var(--spacing-lg)}.how-to-play-btn{width:100%;padding:var(--spacing-md)!important;font-size:var(--font-size-lg)!important}.how-to-play-btn-small{flex:1;padding:var(--spacing-md)!important;font-size:var(--font-size-md)!important}.start-btn{animation:neonPulse 1.5s ease-in-out infinite;white-space:nowrap!important;overflow:visible!important;text-overflow:unset!important;min-width:fit-content}.intro-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.narration-btn{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);font-weight:700;background:linear-gradient(135deg,#f0a3,#0ff3);border:2px solid var(--color-neon-pink);border-radius:var(--radius-md);color:var(--color-neon-pink);cursor:pointer;transition:all .2s ease}.narration-btn:hover{background:linear-gradient(135deg,#ff00aa4d,#00ffff4d);box-shadow:0 0 20px #f0a6;transform:scale(1.02)}.narration-stop-btn{width:100%;padding:var(--spacing-lg);font-size:var(--font-size-lg);font-weight:700;background:var(--color-neon-pink);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;animation:neonPulse 1.5s ease-in-out infinite}.narrating-indicator{position:absolute;top:var(--spacing-md);left:50%;transform:translate(-50%);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-neon-pink);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:700;color:#fff;animation:neonPulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes neonPulse{0%,to{box-shadow:0 0 10px var(--color-primary)}50%{box-shadow:0 0 25px var(--color-primary),0 0 40px var(--color-primary)}}@media (max-height: 600px){.how-to-play-content{min-height:auto;padding:var(--spacing-md)}.how-to-play-title{margin-bottom:var(--spacing-md)}.intro-features,.goal-rules,.ready-checklist{gap:var(--spacing-xs)}.feature-item,.rule-item,.check-item{padding:var(--spacing-sm)}}.auth-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .3s ease}.auth-modal{width:100%;max-width:380px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}.auth-content{padding:var(--spacing-lg);background:var(--color-bg-card);border-radius:var(--radius-lg);position:relative}.auth-back-btn{position:absolute;top:var(--spacing-md);left:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid var(--color-neon-blue);border-radius:var(--radius-sm);color:var(--color-neon-blue);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.auth-back-btn:hover{background:#00d4ff33}.auth-title{text-align:center;margin-bottom:var(--spacing-md);margin-top:var(--spacing-sm)}.auth-desc{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg);line-height:1.5}.auth-benefits{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:linear-gradient(135deg,#00ffff0d,#ff00aa0d);border-radius:var(--radius-md);border:1px solid rgba(0,255,255,.2)}.auth-benefits-title{text-align:center;font-size:var(--font-size-sm);color:var(--color-accent);font-weight:700;margin-bottom:var(--spacing-sm)}.auth-benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.auth-benefits-list li{font-size:var(--font-size-sm);color:var(--color-text);padding:var(--spacing-xs) var(--spacing-sm);background:#0003;border-radius:var(--radius-sm)}.auth-benefits-list li:nth-child(2){color:var(--color-neon-pink);font-weight:600;border-left:3px solid var(--color-neon-pink)}.auth-info{text-align:center;margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.auth-email{font-size:var(--font-size-md);color:var(--color-accent);font-weight:600;margin-bottom:var(--spacing-xs);word-break:break-all}.auth-status{font-size:var(--font-size-sm);color:var(--color-text-muted)}.auth-menu-buttons{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.auth-btn{width:100%;padding:var(--spacing-md)!important;font-size:var(--font-size-md)!important}.auth-close-btn{width:100%;padding:var(--spacing-md);background:transparent;border:1px solid var(--color-bg-light);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-md);cursor:pointer;transition:all var(--transition-fast)}.auth-close-btn:hover{background:var(--color-bg-light);color:var(--color-text)}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-field{text-align:left}.auth-label{display:block;font-size:var(--font-size-sm);color:var(--color-accent);margin-bottom:var(--spacing-xs);font-weight:600;letter-spacing:.05em}.auth-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);background:var(--color-bg);border:2px solid var(--color-bg-light);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-fast)}.auth-input:focus{border-color:var(--color-neon-pink);box-shadow:var(--glow-pink);outline:none}.auth-input::placeholder{color:var(--color-text-muted);opacity:.6}.auth-input:disabled{opacity:.5;cursor:not-allowed}.auth-error{color:var(--color-correct);font-size:var(--font-size-sm);padding:var(--spacing-sm);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-sm);text-align:center}.auth-submit-btn{width:100%;padding:var(--spacing-md)!important;font-size:var(--font-size-lg)!important;margin-top:var(--spacing-sm)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.question-submit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .2s ease}.question-submit-modal{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid var(--color-bg-light);box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease}.modal-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:32px;height:32px;border-radius:50%;background:var(--color-bg-light);border:none;color:var(--color-text-muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--color-bg);color:var(--color-text)}.modal-title{text-align:center;margin-bottom:var(--spacing-md)}.login-notice{background:#00a8ff26;border:1px solid rgba(0,168,255,.3);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-primary);text-align:center}.success-message{text-align:center;padding:var(--spacing-xl)}.success-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#0c6,#0a4);display:flex;align-items:center;justify-content:center;font-size:36px;color:#fff;margin:0 auto var(--spacing-md)}.success-message p{font-size:var(--font-size-lg);margin-bottom:var(--spacing-sm)}.success-note{font-size:var(--font-size-sm);color:var(--color-text-muted)}.submit-form .form-row{margin-bottom:var(--spacing-md)}.submit-form .form-row label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.submit-form .form-row input,.submit-form .form-row select,.submit-form .form-row textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);background:var(--color-bg-light);border:2px solid transparent;border-radius:var(--radius-md);color:var(--color-text);transition:border-color .2s}.submit-form .form-row input:focus,.submit-form .form-row select:focus,.submit-form .form-row textarea:focus{border-color:var(--color-primary);outline:none}.submit-form .form-row textarea{resize:vertical;min-height:80px}.form-row-group{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.answer-section{background:var(--color-bg-light);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-sm)}.answer-section label{text-align:center;display:block;margin-bottom:var(--spacing-sm)!important}.answer-inputs{display:flex;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-sm);flex-wrap:wrap}.answer-char-input{width:52px!important;height:52px!important;min-width:52px;text-align:center;font-size:24px!important;font-weight:700;border-radius:var(--radius-md)!important;background:var(--color-bg)!important;border:2px solid var(--color-primary)!important;color:var(--color-text)!important;padding:0!important}.answer-char-input:focus{border-color:var(--color-accent)!important;box-shadow:0 0 0 3px #ff008033;outline:none}.answer-char-input::placeholder{color:var(--color-text-muted);opacity:.5;font-size:16px}.answer-preview{text-align:center;font-size:var(--font-size-md);color:var(--color-text-muted);padding-top:var(--spacing-xs);border-top:1px solid var(--color-bg)}.answer-preview strong{color:var(--color-accent);font-size:var(--font-size-lg);letter-spacing:4px;font-weight:700}.submit-form .error-message{color:#f44;font-size:var(--font-size-sm);text-align:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#ff444426;border-radius:var(--radius-sm)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-lg)}.cancel-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-md);background:transparent;border:1px solid var(--color-text-muted);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer}.cancel-btn:hover{border-color:var(--color-text);color:var(--color-text)}@media (max-width: 480px){.question-submit-modal{padding:var(--spacing-md)}.form-row-group{grid-template-columns:1fr}.answer-char-input{width:40px!important;height:40px;font-size:var(--font-size-md)!important}.form-actions{flex-direction:column}.cancel-btn{order:1}}.home-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:var(--spacing-lg);text-align:center;position:relative;overflow-x:hidden;overflow-y:auto}.home-container.has-back-btn{justify-content:flex-start;padding-top:env(safe-area-inset-top,20px)}.home-container.has-back-btn .home-content{width:100%}.home-container.has-back-btn .back-btn{position:static;width:auto;margin-bottom:var(--spacing-lg)}.home-container.has-back-btn .home-header,.home-container.has-back-btn .form-title{text-align:center;width:100%}.home-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px}.home-header{margin-bottom:var(--spacing-xl)}.home-title{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.home-title .neon-text{text-transform:uppercase;letter-spacing:.2em}.home-subtitle{margin-top:var(--spacing-sm)}.home-description-box{margin-bottom:var(--spacing-xl);padding:var(--spacing-md)}.home-description{line-height:1.8;color:var(--color-text);font-size:var(--font-size-md)}.home-description p{margin:var(--spacing-xs) 0}.home-buttons{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:320px}.home-btn{width:100%;padding:var(--spacing-lg) var(--spacing-xl)!important;font-size:var(--font-size-lg)!important}.home-btn.quick-btn{animation:neonPulse 2s ease-in-out infinite}.cyber-btn-secondary{position:relative;padding:var(--spacing-lg) var(--spacing-xl);font-weight:700;font-size:var(--font-size-lg);border:2px solid var(--color-neon-blue);background:transparent;color:var(--color-neon-blue);cursor:pointer;transition:all var(--transition-fast);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.home-footer{margin-top:var(--spacing-xl)}.footer-text{font-size:var(--font-size-sm);color:var(--color-text-muted);letter-spacing:.1em}.footer-links{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-wrap:wrap}.footer-link{background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-xs);cursor:pointer;padding:var(--spacing-xs);transition:color var(--transition-fast)}.footer-link:hover{color:var(--color-accent)}.footer-divider{color:var(--color-secondary);font-size:var(--font-size-xs)}.back-btn{align-self:flex-start;margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-neon-blue);border-radius:var(--radius-md);color:var(--color-neon-blue);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.form-title{margin-bottom:var(--spacing-xl)}.form-box{width:100%;padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.form-group{width:100%;margin-bottom:var(--spacing-md);text-align:left}.form-group:last-child{margin-bottom:0}.form-label{display:block;font-size:var(--font-size-sm);color:var(--color-accent);margin-bottom:var(--spacing-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.cyber-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-lg);background:var(--color-bg);border:2px solid var(--color-bg-light);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-fast)}.cyber-input:focus{border-color:var(--color-neon-pink);box-shadow:var(--glow-pink);outline:none}.cyber-input::placeholder{color:var(--color-text-muted);opacity:.6}.room-code-input{text-align:center;font-family:Courier New,monospace;font-size:var(--font-size-2xl)!important;letter-spacing:.3em;text-transform:uppercase;font-weight:700}.role-selector{display:flex;gap:var(--spacing-sm)}.role-btn{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--color-bg-card);border:2px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-fast)}.role-btn:hover{border-color:var(--color-neon-blue)}.role-btn.active{border-color:var(--color-neon-pink);background:#f0a3;box-shadow:var(--glow-pink)}.role-icon{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs)}.role-name{font-size:var(--font-size-sm);font-weight:700}.role-desc{font-size:10px;color:var(--color-text-muted)}.submit-btn{width:100%;max-width:320px}.quick-desc{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xl);line-height:1.6;padding:var(--spacing-sm);background:#00ffff0d;border-radius:var(--radius-sm);border:1px solid rgba(0,255,255,.2)}.cyber-input:disabled,.cyber-btn:disabled,.cyber-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.submit-btn:disabled{animation:neonFlicker .5s ease-in-out infinite}.how-to-play-btn{margin-top:var(--spacing-sm);font-size:var(--font-size-md)!important;padding:var(--spacing-md) var(--spacing-lg)!important;border-color:var(--color-accent)!important;color:var(--color-accent)!important}.how-to-play-btn:hover{background:#f1c40f33!important;box-shadow:var(--glow-accent)!important}.account-btn{font-size:var(--font-size-sm)!important;padding:var(--spacing-sm) var(--spacing-md)!important;border-color:var(--color-text-muted)!important;color:var(--color-text-muted)!important}.account-btn:hover{background:#ffffff1a!important;border-color:var(--color-neon-blue)!important;color:var(--color-neon-blue)!important}.mode-selection{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;margin-bottom:var(--spacing-lg)}.mode-card{cursor:pointer;transition:all .3s ease;opacity:.7}.mode-card.selected{opacity:1;transform:scale(1.02)}.mode-card:hover{opacity:.9}.mode-card-content{padding:var(--spacing-md);text-align:left}.mode-title{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-xs);color:var(--color-text)}.mode-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.mode-features{list-style:none;padding:0;margin:0}.mode-features li{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.mode-card.selected .mode-title{color:var(--color-accent)}.mode-card.selected .mode-features li{color:var(--color-text)}.chain-options{width:100%;margin-bottom:var(--spacing-lg);animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chain-option-content{padding:var(--spacing-md)}.option-label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm);text-align:center}.answer-count-buttons{display:flex;gap:var(--spacing-md);justify-content:center}.answer-count-btn{flex:1;max-width:120px;padding:var(--spacing-md);background:#0000004d;border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-lg);font-weight:700;cursor:pointer;transition:all .2s ease}.answer-count-btn .time-label{display:block;font-size:var(--font-size-xs);font-weight:400;color:var(--color-text-muted);margin-top:var(--spacing-xs)}.answer-count-btn:hover{border-color:var(--color-neon-blue);background:#0066ff1a}.answer-count-btn.selected{border-color:var(--color-accent);background:#f1c40f33;box-shadow:var(--glow-accent)}.answer-count-btn.selected .time-label{color:var(--color-accent)}.wait-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg);padding-bottom:100px;overflow-x:hidden;overflow-y:auto;position:relative}.wait-content{position:relative;z-index:10;width:100%;max-width:450px;display:flex;flex-direction:column;align-items:center}.wait-header{text-align:center;margin-bottom:var(--spacing-xl);width:100%}.wait-title{margin-bottom:var(--spacing-md)}.room-code-display{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-lg)!important;margin:0 auto;width:100%;max-width:100%}.room-code-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.room-code-value{font-size:clamp(32px,10vw,48px);font-weight:900;font-family:Courier New,monospace;letter-spacing:.15em;color:var(--color-accent);text-shadow:var(--text-glow-accent);word-break:keep-all;white-space:nowrap}.room-code-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.code-action-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.code-action-btn:hover{background:var(--color-secondary);border-color:var(--color-accent)}.code-action-btn:active{transform:scale(.95)}.tv-link-section{margin-top:var(--spacing-md);text-align:center}.copy-url-btn{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:1px solid var(--color-neon-blue);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-neon-blue);cursor:pointer;transition:all var(--transition-fast)}.copy-url-btn:hover{background:#00d4ff33;box-shadow:var(--glow-blue)}.players-section{width:100%;margin-bottom:var(--spacing-xl)}.players-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.player-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md)!important;transition:all var(--transition-fast)}.player-card.is-me{border-color:var(--color-accent)!important;box-shadow:var(--glow-accent)!important}.player-card.ready{background:#00ff881a!important}.player-card.empty{background:var(--color-bg-light);border:2px dashed var(--color-bg-light);border-radius:var(--radius-lg);justify-content:center;opacity:.5;padding:var(--spacing-md)}.player-info{display:flex;align-items:center;gap:var(--spacing-sm)}.player-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-neon-purple) 100%);border-radius:50%;font-size:var(--font-size-md);font-weight:700;color:#fff}.player-name{font-weight:600;display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text)}.host-badge{font-size:var(--font-size-md)}.ready-badge{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.ready-badge.active{background:linear-gradient(135deg,var(--color-neon-green) 0%,#00cc66 100%);color:var(--color-bg-dark);font-weight:900;box-shadow:0 0 15px #00ff8880}.empty-slot{color:var(--color-text-muted);font-size:var(--font-size-sm)}.wait-actions{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:320px;margin-bottom:var(--spacing-lg)}.ready-btn,.cancel-ready-btn,.start-btn,.leave-btn{width:100%}.start-btn{background:linear-gradient(135deg,#e63946,#d62839)!important;border-color:#e63946!important;color:#fff!important;font-size:var(--font-size-xl)!important;padding:var(--spacing-lg)!important;box-shadow:0 0 20px #e6394680!important;animation:startBtnPulse 1.5s ease-in-out infinite}.start-btn:disabled{animation:none;opacity:.4;box-shadow:none!important}@keyframes startBtnPulse{0%,to{box-shadow:0 0 20px #e6394680;transform:scale(1)}50%{box-shadow:0 0 30px #e63946cc;transform:scale(1.02)}}.cyber-btn-secondary{position:relative;padding:var(--spacing-md) var(--spacing-xl);font-weight:700;font-size:var(--font-size-lg);border:2px solid var(--color-neon-blue);background:transparent;color:var(--color-neon-blue);cursor:pointer;transition:all var(--transition-fast);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cyber-btn-secondary:hover{background:#00d4ff33;box-shadow:var(--glow-blue)}.wait-info{text-align:center;padding:var(--spacing-md);background:#00ffff0d;border:1px solid rgba(0,255,255,.2);border-radius:var(--radius-md)}.wait-info p{color:var(--color-text-muted);font-size:var(--font-size-sm);animation:neonPulse 2s ease-in-out infinite}.error-message{color:var(--color-correct);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);text-align:center;padding:var(--spacing-sm) var(--spacing-md);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-sm)}.loading-spinner{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--color-accent);text-shadow:var(--text-glow-accent);animation:neonPulse 1.5s ease-in-out infinite}.canvas-container{display:flex;flex-direction:column;align-items:center}.keyboard-fallback-link{margin-top:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);background:transparent;border:none;text-decoration:underline;cursor:pointer}.keyboard-fallback-link:hover{color:var(--color-text)}.keyboard-fallback-link:disabled{opacity:.5}.back-to-draw-link{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-accent);background:transparent;border:none;cursor:pointer}.back-to-draw-link:hover{text-decoration:underline}.keyboard-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.canvas-wrapper{position:relative;width:100%;max-width:min(180px,40vw)}.drawing-canvas{width:100%;height:auto;aspect-ratio:1;border:3px solid var(--color-bg-light);border-radius:var(--radius-md);touch-action:none;cursor:crosshair;background:#1a1a2e}.canvas-placeholder{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;-webkit-user-select:none;user-select:none}.placeholder-text{font-size:60px;font-weight:300;color:#ffffff26;line-height:1}.placeholder-hint{font-size:var(--font-size-sm);color:#ffffff4d;margin-top:var(--spacing-sm)}.canvas-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-xs);width:100%;max-width:min(180px,40vw)}.action-btn{flex:1;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;white-space:nowrap}.recognize-btn{flex:1}.api-status{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.api-status.success{color:#4caf50}.keyboard-input-section{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);width:100%;max-width:280px}.keyboard-input{width:120px;height:120px;font-size:60px;text-align:center;background:var(--color-bg-light);border:3px solid var(--color-primary);border-radius:var(--radius-md);color:#fff}.keyboard-input::placeholder{color:#ffffff4d}.keyboard-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #f1c40f33}.keyboard-submit-btn{width:100%;padding:var(--spacing-md);font-size:var(--font-size-lg);font-weight:700}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);animation:fadeIn .2s ease}.feedback-modal{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:420px;width:100%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid var(--color-bg-light);box-shadow:0 10px 40px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.feedback-modal .modal-close{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:32px;height:32px;border-radius:50%;background:var(--color-bg-light);border:none;color:var(--color-text-muted);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.feedback-modal .modal-close:hover{background:var(--color-bg);color:var(--color-text)}.feedback-modal .modal-title{text-align:center;margin-bottom:var(--spacing-md)}.feedback-question{background:var(--color-bg-light);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md)}.question-label{font-size:var(--font-size-xs);color:var(--color-text-muted);display:block;margin-bottom:var(--spacing-xs)}.question-text{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.4;margin:0}.feedback-modal .success-message{text-align:center;padding:var(--spacing-lg)}.feedback-modal .success-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#0c6,#0a4);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;margin:0 auto var(--spacing-md)}.feedback-modal .success-message p{font-size:var(--font-size-md);margin-bottom:var(--spacing-xs)}.feedback-modal .success-note{font-size:var(--font-size-sm);color:var(--color-text-muted)}.feedback-form .form-row{margin-bottom:var(--spacing-md)}.feedback-form .form-row label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.feedback-form .form-row textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-md);background:var(--color-bg-light);border:2px solid transparent;border-radius:var(--radius-md);color:var(--color-text);transition:border-color .2s;resize:vertical;min-height:80px}.feedback-form .form-row textarea:focus{border-color:var(--color-primary);outline:none}.feedback-type-options{display:flex;flex-direction:column;gap:var(--spacing-xs)}.feedback-type-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-sm);cursor:pointer;transition:background .2s}.feedback-type-option:hover{background:var(--color-bg)}.feedback-type-option input[type=radio]{width:18px;height:18px;accent-color:var(--color-primary)}.feedback-type-option span{font-size:var(--font-size-sm);color:var(--color-text)}.feedback-form .error-message{color:#f44;font-size:var(--font-size-sm);text-align:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#ff444426;border-radius:var(--radius-sm)}.feedback-form .form-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-lg)}.feedback-form .cancel-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-md);background:transparent;border:1px solid var(--color-text-muted);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer}.feedback-form .cancel-btn:hover{border-color:var(--color-text);color:var(--color-text)}@media (max-width: 480px){.feedback-modal{padding:var(--spacing-md)}.feedback-form .form-actions{flex-direction:column}.feedback-form .cancel-btn{order:1}}.game-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg);overflow:hidden;position:relative}.controller-mode{padding-bottom:60px}.game-sound-toggle{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:100;width:44px;height:44px;border-radius:50%;border:2px solid var(--color-secondary);background:var(--color-bg-card);font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.game-sound-toggle.on{background:linear-gradient(135deg,#4caf50,#2e7d32);border-color:#4caf50;box-shadow:0 0 15px #4caf5080}.game-sound-toggle.off{background:var(--color-bg-card);border-color:var(--color-secondary);opacity:.8}.game-sound-toggle:hover{transform:translate(-50%) scale(1.1)}.game-sound-toggle:active{transform:translate(-50%) scale(.95)}.game-display.mini{flex:0 0 auto;margin:var(--spacing-sm);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--color-bg-card) 0%,var(--color-bg-dark) 100%);border:2px solid var(--color-neon-purple);box-shadow:var(--glow-purple),inset 0 0 30px #aa00ff1a;overflow:hidden;position:relative}.game-display.mini:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 1px,transparent 1px,transparent 3px);pointer-events:none;z-index:50}.game-display.mini .display-content{padding:var(--spacing-sm);position:relative}.game-display.mini .display-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.game-display.mini .question-badge{display:flex;align-items:center;gap:var(--spacing-xs)}.game-display.mini .q-num{font-size:var(--font-size-md);font-weight:900;color:var(--color-neon-pink);text-shadow:var(--text-glow-pink)}.game-display.mini .q-diff{font-size:10px;color:var(--color-text-muted);padding:2px 6px;background:#7b2cbf4d;border-radius:4px}.game-display.mini .category-badge{display:flex;align-items:center;gap:var(--spacing-xs);font-size:11px;padding:4px 10px;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-neon-purple) 100%);border-radius:var(--radius-sm);border:1px solid var(--color-neon-purple)}.game-display.mini .script-type{color:var(--color-accent);font-weight:700}.game-display.mini .display-prompt{text-align:center;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(180deg,#00ffff0d,#aa00ff0d);border:1px solid rgba(0,255,255,.2);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.game-display.mini .display-prompt p{font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text)}.game-display.mini .display-timer{position:relative;display:flex;align-items:center;justify-content:center;width:70px;height:70px;margin:0 auto var(--spacing-md);font-size:var(--font-size-3xl);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent);background:radial-gradient(circle,rgba(0,255,255,.15) 0%,transparent 70%);border:3px solid var(--color-accent);border-radius:50%;box-shadow:var(--glow-accent)}.game-display.mini .display-timer.danger{color:var(--color-correct);text-shadow:var(--text-glow-pink);border-color:var(--color-correct);background:radial-gradient(circle,rgba(255,0,68,.2) 0%,transparent 70%);box-shadow:var(--glow-pink);animation:neonFlicker .3s linear infinite,timerPulse .5s ease-in-out infinite}.game-display.mini .display-reading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg)}.game-display.mini .reading-icon{font-size:50px;margin-bottom:var(--spacing-sm);animation:neonPulse 1s ease-in-out infinite}.game-display.mini .reading-text{font-size:var(--font-size-lg);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent);animation:neonPulse 1s ease-in-out infinite}.game-display.mini .display-countdown{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(80px,20vw,150px);font-weight:900;color:var(--color-accent);text-shadow:0 0 20px var(--color-accent),0 0 40px var(--color-accent),0 0 80px var(--color-accent),0 0 120px var(--color-accent);z-index:100;animation:countdownNumber .8s ease-out forwards}@keyframes countdownNumber{0%{transform:translate(-50%,-50%) scale(2);opacity:0;filter:blur(20px)}30%{opacity:1;filter:blur(0)}60%{transform:translate(-50%,-50%) scale(1)}to{transform:translate(-50%,-50%) scale(.9);opacity:.8}}.game-display.mini .display-slots{display:flex;justify-content:center;gap:var(--spacing-sm);flex-wrap:wrap;perspective:1000px}.game-display.mini .display-slot{width:55px;height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--color-bg-card) 0%,var(--color-bg-dark) 100%);border-radius:var(--radius-md);border:2px solid var(--color-secondary);position:relative;transform-style:preserve-3d;transition:all .3s ease}.game-display.mini .display-slot.correct{background:linear-gradient(180deg,var(--color-correct) 0%,#cc0033 100%);border-color:var(--color-correct);box-shadow:var(--glow-correct)}.game-display.mini .display-slot.incorrect{background:linear-gradient(180deg,var(--color-incorrect) 0%,#0044cc 100%);border-color:var(--color-incorrect);box-shadow:var(--glow-incorrect)}.game-display.mini .slot-char{font-size:var(--font-size-xl);font-weight:900;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.8)}.game-display.mini .slot-type-badge{font-size:7px;padding:1px 4px;background:var(--color-neon-purple);color:#fff;border-radius:3px;margin-top:2px}.game-display.mini .slot-name{font-size:8px;color:var(--color-text-muted);max-width:50px;overflow:hidden;text-overflow:ellipsis;position:absolute;bottom:-18px}.game-display.mini .display-slot.reveal-anim{animation:slotOpenDramatic .6s ease-out forwards}.game-display.mini .display-slot.correct.reveal-anim{animation:slotOpenDramatic .6s ease-out forwards,correctExplosion .8s ease-out .6s}.game-display.mini .display-slot.incorrect.reveal-anim{animation:slotOpenDramatic .6s ease-out forwards,incorrectShake .5s ease-out .6s}.game-display.mini .display-solution{text-align:center;padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-neon-yellow) 100%);border-radius:var(--radius-lg);margin-top:var(--spacing-lg);animation:slideUp .5s ease-out;box-shadow:var(--glow-accent)}.game-display.mini .solution-label{font-size:var(--font-size-xs);color:#0009;display:block;margin-bottom:4px;font-weight:700}.game-display.mini .solution-answer{font-size:var(--font-size-2xl);font-weight:900;color:var(--color-bg-dark);letter-spacing:.15em;text-shadow:0 1px 0 rgba(255,255,255,.5)}.game-display.mini .display-result{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-xl);font-size:var(--font-size-xl);font-weight:900;z-index:80;animation:scaleIn .4s ease-out;letter-spacing:.1em}.game-display.mini .display-result.perfect{background:linear-gradient(135deg,var(--color-correct) 0%,var(--color-neon-pink) 100%);border:2px solid var(--color-correct);box-shadow:var(--glow-correct);text-shadow:0 0 10px rgba(255,255,255,.8)}.game-display.mini .display-result.failed{background:linear-gradient(135deg,var(--color-incorrect) 0%,var(--color-neon-blue) 100%);border:2px solid var(--color-incorrect);box-shadow:var(--glow-incorrect)}.game-display.mini .display-score{position:absolute;bottom:var(--spacing-xs);right:var(--spacing-sm);font-size:10px;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.controller-input,.controller-confirmed,.controller-waiting{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--spacing-sm);padding-bottom:var(--spacing-md);background:var(--color-bg-card);margin:var(--spacing-xs);border-radius:var(--radius-md);border:1px solid var(--color-secondary);overflow-y:auto;-webkit-overflow-scrolling:touch}.controller-waiting p{color:var(--color-text-muted);animation:neonPulse 1.5s ease-in-out infinite}.controller-waiting.reading-phase{border-color:var(--color-accent);box-shadow:var(--glow-accent)}.controller-waiting .reading-message{font-size:var(--font-size-xl);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent);margin-bottom:var(--spacing-md)}.controller-waiting .reading-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.controller-confirmed{text-align:center}.controller-confirmed .confirmed-badge{display:inline-flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-neon-green) 0%,#00cc66 100%);border-radius:var(--radius-full);font-size:var(--font-size-lg);font-weight:900;margin-bottom:var(--spacing-md);color:var(--color-bg-dark);box-shadow:0 0 20px #00ff8880}.controller-confirmed .confirmed-char{font-size:var(--font-size-5xl);font-weight:900;margin-bottom:var(--spacing-md);color:var(--color-accent);text-shadow:var(--text-glow-accent)}.controller-confirmed .confirmed-waiting{color:var(--color-text-muted);font-size:var(--font-size-sm)}.edit-btn{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-md);font-weight:700;background:transparent;border:2px solid var(--color-secondary);border-radius:var(--radius-md);color:var(--color-secondary);cursor:pointer;transition:all var(--transition-fast)}.edit-btn:hover{background:#7b2cbf33;box-shadow:var(--glow-purple)}.editing-badge{margin-left:var(--spacing-sm);padding:4px 10px;font-size:var(--font-size-xs);background:var(--color-accent);color:var(--color-bg-dark);border-radius:var(--radius-sm);font-weight:900}.my-slot-indicator{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#00b4d833,#f0a3);border:2px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--glow-accent);animation:slotIndicatorPulse 2s ease-in-out infinite}@keyframes slotIndicatorPulse{0%,to{box-shadow:var(--glow-accent)}50%{box-shadow:0 0 20px var(--color-accent),0 0 30px var(--color-accent)}}.slot-label{font-size:var(--font-size-md);color:var(--color-text);font-weight:600}.slot-position{font-size:var(--font-size-2xl);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.candidates-section{width:100%;max-width:320px;padding:var(--spacing-sm);background:#1a1a1fcc;border:1px solid var(--color-secondary);border-radius:var(--radius-md);margin-top:var(--spacing-sm);animation:slideUp .2s ease-out;flex-shrink:0}.candidates-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;margin-bottom:var(--spacing-xs)}.candidates-row{display:flex;gap:var(--spacing-xs);justify-content:center;flex-wrap:nowrap}.candidate-btn{width:58px;height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:700;background:var(--color-bg-card);border:2px solid var(--color-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);position:relative}.candidate-char{font-size:var(--font-size-2xl);line-height:1;color:#fff}.candidate-type{font-size:8px;padding:1px 4px;background:var(--color-secondary);color:var(--color-text-muted);border-radius:3px}.candidate-btn.primary{background:var(--color-primary);border-color:var(--color-primary);box-shadow:var(--glow-pink)}.candidate-btn.primary .candidate-type{background:#0000004d;color:#fff}.candidate-btn.primary:after{content:"▼";position:absolute;top:-8px;left:50%;transform:translate(-50%);font-size:10px;color:var(--color-primary)}.candidate-btn:hover:not(:disabled){border-color:var(--color-accent);box-shadow:var(--glow-accent)}.candidate-btn.primary:hover:not(:disabled){box-shadow:var(--glow-correct)}.candidate-btn:disabled{opacity:.4}.controller-result{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);background:linear-gradient(180deg,var(--color-bg-card) 0%,var(--color-bg-dark) 100%);margin:var(--spacing-sm);border-radius:var(--radius-xl);border:2px solid var(--color-secondary);box-shadow:var(--glow-purple)}.controller-result .result-badge{font-size:var(--font-size-3xl);font-weight:900;padding:var(--spacing-lg) var(--spacing-2xl);border-radius:var(--radius-xl);animation:resultPop .5s ease-out;letter-spacing:.1em}.controller-result .result-badge.perfect{background:linear-gradient(135deg,var(--color-correct) 0%,var(--color-neon-pink) 100%);color:#fff;box-shadow:var(--glow-correct);text-shadow:0 0 20px rgba(255,255,255,.8)}.controller-result .result-badge.failed{background:linear-gradient(135deg,var(--color-incorrect) 0%,var(--color-neon-blue) 100%);color:#fff;box-shadow:var(--glow-incorrect)}.controller-result .result-answer{margin-top:var(--spacing-xl);text-align:center;animation:slideUp .5s ease-out .3s both}.controller-result .result-label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.controller-result .result-word{font-size:var(--font-size-4xl);font-weight:900;color:var(--color-accent);letter-spacing:.15em;text-shadow:var(--text-glow-accent)}@keyframes resultPop{0%{transform:scale(.3);opacity:0;filter:blur(10px)}50%{transform:scale(1.15);filter:blur(0)}70%{transform:scale(.95)}to{transform:scale(1);opacity:1}}.countdown-message{font-size:var(--font-size-xl);font-weight:900;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.confirm-status-bar{position:fixed;bottom:0;left:0;right:0;text-align:center;padding:var(--spacing-md);background:linear-gradient(180deg,var(--color-bg-card) 0%,var(--color-bg-dark) 100%);border-top:1px solid var(--color-secondary);font-size:var(--font-size-md);font-weight:600;z-index:50;color:var(--color-text-muted)}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.5);filter:blur(10px)}to{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}}.feedback-btn{margin-top:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;background:transparent;border:1px solid var(--color-text-muted);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.feedback-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#00a8ff1a}.ad-interstitial-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out}.ad-interstitial-container{width:90%;max-width:400px;background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-secondary);overflow:hidden;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.ad-interstitial-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-dark);border-bottom:1px solid var(--color-secondary)}.ad-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.ad-interstitial-countdown{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ad-interstitial-skip{background:var(--color-primary);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.ad-interstitial-skip:hover{background:var(--color-neon-pink);box-shadow:var(--glow-pink)}.ad-interstitial-content{padding:var(--spacing-md);min-height:250px;display:flex;align-items:center;justify-content:center}.ad-interstitial-content .adsbygoogle{display:block;width:100%}.ad-interstitial-placeholder{width:100%;height:200px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-light);border:1px dashed var(--color-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}@media (max-width: 480px){.ad-interstitial-container{width:95%;max-width:none}.ad-interstitial-content{min-height:200px}}.result-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);position:relative;overflow-x:hidden;overflow-y:auto}.result-content{position:relative;z-index:10;width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center}.result-header{text-align:center;margin-bottom:var(--spacing-lg);animation:fadeInDown .6s ease-out}.result-title{margin:0}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.score-display-wrapper{width:100%;max-width:300px;margin-bottom:var(--spacing-xl);animation:scaleInBounce .8s ease-out .3s both}.score-display{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg);text-align:center}.score-display.perfect{background:linear-gradient(135deg,#0ff3,#ffd70033)}.score-message{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-md);color:var(--color-text)}.score-value{display:flex;align-items:baseline;gap:var(--spacing-xs)}.score-correct{font-size:clamp(50px,15vw,80px);font-weight:900;line-height:1;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.score-display.perfect .score-correct{color:var(--color-neon-yellow);text-shadow:0 0 20px var(--color-neon-yellow),0 0 40px var(--color-neon-yellow)}.score-label{font-size:var(--font-size-md);color:var(--color-text-muted);margin-top:var(--spacing-sm)}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.1)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}.progress-section{width:100%;margin-bottom:var(--spacing-xl);animation:slideInUp .6s ease-out .8s both}.section-title{text-align:center;margin-bottom:var(--spacing-md)}.question-progress-grid{display:flex;flex-direction:column;gap:var(--spacing-sm)}.progress-card{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-radius:var(--radius-md);border:2px solid var(--color-secondary);animation:popIn .4s ease-out both}.progress-card.correct{background:linear-gradient(90deg,#f043,#ff00440d);border-color:var(--color-correct);box-shadow:0 0 10px #ff00444d}.progress-card.incorrect{background:linear-gradient(90deg,#06f3,#0066ff0d);border-color:var(--color-incorrect);box-shadow:0 0 10px #0066ff4d}.progress-card-header{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:50px}.progress-num{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text)}.progress-status{font-size:var(--font-size-lg)}.progress-diff,.progress-prompt{display:none}.progress-answer-row{display:flex;gap:3px;flex-wrap:nowrap;flex:1;justify-content:flex-start}.progress-letter{min-width:28px;height:32px;padding:0 4px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700;border-radius:4px;color:#fff;flex-shrink:0}.progress-letter.letter-correct{background:var(--color-correct)}.progress-letter.letter-incorrect{background:var(--color-incorrect)}.progress-correct-answer{font-size:var(--font-size-xs);color:var(--color-accent);white-space:nowrap;flex-shrink:0;margin-left:auto}@keyframes popIn{0%{opacity:0;transform:scale(0)}80%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.players-section{width:100%;margin-bottom:var(--spacing-xl);animation:slideInUp .6s ease-out 1.2s both}.players-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.player-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)!important}.player-slot{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-neon-purple);border-radius:50%;font-size:var(--font-size-sm);font-weight:700;color:#fff}.player-name{font-size:var(--font-size-sm);color:var(--color-text)}.result-actions{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:320px;margin-bottom:var(--spacing-lg);animation:slideInUp .6s ease-out 1.6s both}.result-actions .cyber-btn,.rematch-btn,.home-btn{width:100%}.waiting-rematch{text-align:center;padding:var(--spacing-lg);background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-secondary);color:var(--color-text-muted)}.waiting-rematch p{animation:neonPulse 1.5s ease-in-out infinite}.result-footer{text-align:center;margin-top:var(--spacing-md)}.footer-text{font-size:var(--font-size-sm);color:var(--color-text-muted)}.error-message{color:var(--color-correct);font-size:var(--font-size-sm);text-align:center;padding:var(--spacing-sm) var(--spacing-md);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.loading{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--color-accent);text-shadow:var(--text-glow-accent);animation:neonPulse 1.5s ease-in-out infinite}.tv-container{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f3460,#1a1a2e);overflow:hidden}.tv-loading,.tv-error{text-align:center;font-size:32px;color:var(--color-text-muted)}.tv-error-hint{font-size:20px;margin-top:16px}.tv-waiting{width:90%;max-width:1400px;text-align:center}.tv-waiting-header h1{font-size:clamp(36px,8vw,72px);font-weight:900;margin-bottom:32px;background:linear-gradient(135deg,var(--color-accent) 0%,#e67e22 100%);-webkit-background-clip:text;white-space:nowrap;-webkit-text-fill-color:transparent;background-clip:text}.tv-room-code{display:inline-flex;flex-direction:column;background:var(--color-bg-card);padding:24px 48px;border-radius:16px;margin-bottom:48px}.tv-room-code-label{font-size:20px;color:var(--color-text-muted)}.tv-room-code-value{font-size:80px;font-weight:900;font-family:monospace;letter-spacing:.2em;color:var(--color-accent)}.tv-waiting-players h2{font-size:32px;margin-bottom:24px}.tv-player-list{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:32px}.tv-player-card{display:flex;align-items:center;gap:12px;padding:16px 24px;background:var(--color-bg-card);border-radius:12px;border:3px solid transparent;transition:all .3s ease}.tv-player-card.ready{background:#4caf504d;border-color:#4caf50}.tv-player-num{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-secondary);border-radius:50%;font-size:20px;font-weight:700}.tv-player-name{font-size:28px;font-weight:500}.tv-player-status{font-size:24px;font-weight:700;color:var(--color-text-muted)}.tv-player-card.ready .tv-player-status{color:#4caf50}.tv-waiting-hint{font-size:24px;color:var(--color-text-muted);animation:pulse 2s ease-in-out infinite}.tv-mirror-btn{margin-top:24px;padding:12px 28px;font-size:20px;background:linear-gradient(135deg,var(--color-secondary) 0%,#2980b9 100%);border-radius:12px;color:var(--color-text);cursor:pointer;border:none;font-weight:700}.tv-mirror-btn:hover{transform:scale(1.05)}.tv-mirror-guide{margin-top:16px;padding:20px 28px;background:#0009;border-radius:12px;text-align:left;font-size:18px;line-height:2}.tv-mirror-guide p{margin:0}.tv-voice-test-btn{margin-top:16px;padding:8px 20px;font-size:16px;background:var(--color-bg-light);border-radius:8px;color:var(--color-text);cursor:pointer;border:1px solid var(--color-secondary)}.tv-voice-test{margin-top:12px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.tv-voice-btn{padding:8px 16px;font-size:14px;background:var(--color-secondary);border-radius:6px;color:var(--color-text);cursor:pointer;border:none}.tv-voice-btn:hover{background:var(--color-primary)}.tv-result{text-align:center}.tv-result.perfect{animation:perfectGlow 1.5s ease-in-out infinite}@keyframes perfectGlow{0%,to{filter:drop-shadow(0 0 20px rgba(241,196,15,.5))}50%{filter:drop-shadow(0 0 60px rgba(241,196,15,.8))}}.tv-result-title{font-size:80px;font-weight:900;margin-bottom:48px}.tv-result.perfect .tv-result-title{background:linear-gradient(135deg,var(--color-accent) 0%,#e67e22 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tv-result-score{display:flex;align-items:baseline;justify-content:center;gap:16px}.tv-score-num{font-size:200px;font-weight:900;line-height:1}.tv-result.perfect .tv-score-num{color:var(--color-accent)}.tv-score-sep,.tv-score-total{font-size:80px;color:var(--color-text-muted)}.tv-result-label{font-size:48px;color:var(--color-text-muted);margin-top:16px}.tv-game{width:95%;max-width:1600px;height:90vh;display:flex;flex-direction:column;padding:32px;position:relative}.tv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.tv-question-badge{display:flex;align-items:center;gap:16px}.tv-q-num{font-size:48px;font-weight:900;color:var(--color-accent)}.tv-q-diff{font-size:28px;color:var(--color-text-muted)}.tv-category{display:flex;align-items:center;gap:16px;padding:12px 24px;background:var(--color-bg-card);border-radius:12px;font-size:24px}.tv-script{color:var(--color-text-muted)}.tv-score{font-size:28px;color:var(--color-text-muted)}.tv-prompt{text-align:center;padding:32px 48px;background:#ffffff0d;border-radius:16px;margin-bottom:32px}.tv-prompt p{font-size:40px;line-height:1.6}.tv-reading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;animation:pulse 1.5s ease-in-out infinite}.tv-reading-icon{font-size:80px;margin-bottom:16px}.tv-reading-text{font-size:36px;font-weight:700;color:var(--color-accent)}.tv-timer{position:absolute;top:32px;right:32px;font-size:80px;font-weight:900;color:var(--color-text)}.tv-timer.danger{color:var(--color-primary);animation:pulse .5s ease-in-out infinite}.tv-countdown{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:300px;font-weight:900;color:var(--color-accent);text-shadow:0 0 100px rgba(241,196,15,.5);z-index:10}.tv-slots{flex:1;display:flex;align-items:center;justify-content:center;gap:24px}.tv-slot{width:160px;height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-card);border-radius:16px;border:6px solid var(--color-bg-light);transition:all .3s ease}.tv-slot.correct{background:var(--color-correct);border-color:var(--color-correct)}.tv-slot.incorrect{background:var(--color-incorrect);border-color:var(--color-incorrect)}.tv-slot.reveal-anim{animation:revealFlip .6s ease-out forwards}@keyframes revealFlip{0%{transform:rotateY(90deg) scale(.8);opacity:.5}50%{transform:rotateY(45deg) scale(1.1)}to{transform:rotateY(0) scale(1);opacity:1}}.tv-slot-char{font-size:80px;font-weight:900}.tv-slot-type{font-size:14px;padding:2px 8px;background:#00000080;border-radius:4px;color:var(--color-accent);margin-top:4px;font-weight:700}.tv-slot-name{font-size:20px;color:var(--color-text-muted);margin-top:8px}.tv-solution{text-align:center;padding:24px 48px;background:var(--color-accent);border-radius:16px;margin-top:32px}.tv-solution-label{display:block;font-size:24px;color:#000000b3}.tv-solution-answer{font-size:64px;font-weight:900;color:#333;letter-spacing:.1em}.tv-result-modal{position:absolute;top:140px;left:50%;transform:translate(-50%);padding:24px 64px;border-radius:16px;font-size:56px;font-weight:900;z-index:20;animation:slideDown .5s ease-out;box-shadow:0 8px 32px #0000004d}.tv-result-modal.perfect{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.tv-result-modal.failed{background:linear-gradient(135deg,#f44336,#c62828);color:#fff}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-30px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tv-tts-hint{color:#fc0;font-size:24px;margin-top:24px;animation:pulse 1.5s ease-in-out infinite;cursor:pointer}.tv-tts-warning{position:absolute;top:16px;right:80px;background:#ffcc00e6;color:#000;padding:8px 16px;border-radius:8px;font-size:16px;font-weight:700;animation:pulse 1.5s ease-in-out infinite;cursor:pointer;z-index:100}.tv-sound-prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.tv-sound-prompt{background:var(--color-bg-card);padding:48px 64px;border-radius:24px;text-align:center;max-width:600px;animation:scaleIn .3s ease}.tv-sound-prompt h2{font-size:48px;margin-bottom:16px;color:var(--color-accent)}.tv-sound-prompt p{font-size:24px;color:var(--color-text);margin-bottom:8px}.tv-sound-prompt-sub{color:var(--color-text-muted)!important;font-size:20px!important;margin-bottom:32px!important}.tv-sound-prompt-buttons{display:flex;gap:24px;justify-content:center}.tv-sound-btn{padding:20px 48px;font-size:28px;font-weight:700;border-radius:16px;border:none;cursor:pointer;transition:all .2s ease}.tv-sound-btn.on{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff}.tv-sound-btn.on:hover{transform:scale(1.05);box-shadow:0 8px 24px #4caf5066}.tv-sound-btn.off{background:var(--color-bg-light);color:var(--color-text-muted)}.tv-sound-btn.off:hover{background:var(--color-bg)}.tv-sound-toggle{display:flex;align-items:center;justify-content:center;gap:12px;margin:24px 0}.tv-sound-toggle-btn{padding:12px 28px;font-size:24px;font-weight:700;border-radius:12px;border:3px solid transparent;cursor:pointer;transition:all .2s ease}.tv-sound-toggle-btn.on{background:#4caf504d;border-color:#4caf50;color:#4caf50}.tv-sound-toggle-btn.off{background:var(--color-bg-light);border-color:var(--color-bg-light);color:var(--color-text-muted)}.tv-sound-toggle-btn:hover{transform:scale(1.05)}.tv-sound-hint{font-size:18px;color:#fc0;animation:pulse 1.5s ease-in-out infinite}.tv-game-sound-toggle{position:absolute;top:16px;right:16px;width:56px;height:56px;font-size:28px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .2s ease;z-index:100}.tv-game-sound-toggle.on{background:#4caf504d;border-color:#4caf50}.tv-game-sound-toggle.off{background:var(--color-bg-light);border-color:var(--color-bg-light)}.tv-game-sound-toggle:hover{transform:scale(1.1)}.admin-container{display:flex;flex-direction:column;height:100vh;background:var(--color-bg);overflow:hidden}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light);flex-shrink:0}.admin-header h1{font-size:var(--font-size-lg);font-weight:700}.admin-header .back-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);background:transparent;color:var(--color-text-muted)}.admin-header .add-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:var(--color-primary);border-radius:var(--radius-md);font-weight:700}.admin-search{position:relative;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light);flex-shrink:0}.admin-search .search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-right:40px;font-size:var(--font-size-md);background:var(--color-bg-light);border:2px solid transparent;border-radius:var(--radius-md);color:var(--color-text);transition:border-color .2s}.admin-search .search-input:focus{border-color:var(--color-primary);outline:none}.admin-search .search-clear{position:absolute;right:calc(var(--spacing-md) + 10px);top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;background:var(--color-text-muted);color:var(--color-bg);font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.filter-section{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light);flex-shrink:0}.filter-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-xs);font-weight:600}.filter-buttons{display:flex;gap:var(--spacing-xs);overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:var(--spacing-xs)}.filter-btn{flex-shrink:0;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);background:var(--color-bg-light);border:2px solid transparent;border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:var(--spacing-xs)}.filter-btn:hover{background:var(--color-bg);color:var(--color-text)}.filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-btn.small{padding:4px 10px;font-size:var(--font-size-xs)}.filter-count{font-size:10px;background:#fff3;padding:2px 6px;border-radius:10px}.filter-btn.active .filter-count{background:#ffffff4d}.admin-action-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) var(--spacing-md);background:var(--color-bg);flex-shrink:0}.admin-action-bar .question-count{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.admin-action-bar .action-buttons{display:flex;gap:var(--spacing-xs)}.admin-action-bar .export-btn,.admin-action-bar .import-btn,.admin-action-bar .template-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600}.admin-action-bar .export-btn{background:var(--color-secondary)}.admin-action-bar .import-btn{background:var(--color-primary)}.admin-action-bar .template-btn{background:var(--color-bg-light);color:var(--color-text-muted)}.admin-questions-wrapper{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-questions{padding:var(--spacing-sm) var(--spacing-md);padding-bottom:var(--spacing-xl)}.no-results{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted)}.question-row{display:flex;align-items:flex-start;gap:var(--spacing-sm);background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);border:1px solid var(--color-bg-light)}.question-row.custom{border-color:var(--color-accent);border-width:2px}.question-num{flex-shrink:0;width:28px;height:28px;background:var(--color-bg-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted)}.question-info{flex:1;min-width:0;user-select:text;-webkit-user-select:text}.question-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--spacing-xs)}.tag{font-size:9px;padding:2px 6px;border-radius:4px;font-weight:600;white-space:nowrap}.tag.length{background:#3498db;color:#fff}.tag.difficulty{background:#9b59b6;color:#fff}.tag.script{background:#1abc9c;color:#fff}.tag.category{background:#7f8c8d;color:#fff}.tag.custom{background:var(--color-accent);color:#333}.question-prompt{font-size:var(--font-size-sm);line-height:1.4;margin-bottom:var(--spacing-xs);color:var(--color-text);user-select:text;-webkit-user-select:text;cursor:text}.question-answer{font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-xs)}.answer-label{color:var(--color-text-muted)}.answer-text{font-weight:700;color:var(--color-accent);letter-spacing:.05em;font-size:var(--font-size-md);user-select:text;-webkit-user-select:text;cursor:text}.question-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.action-btn{padding:6px 12px;font-size:var(--font-size-xs);border-radius:var(--radius-sm);font-weight:600;cursor:pointer}.action-btn.edit{background:var(--color-secondary);color:#fff}.action-btn.delete{background:var(--color-primary);color:#fff}.action-btn.disable{background:#ff8c00;color:#fff}.action-btn.enable{background:var(--color-secondary);color:#fff}.question-row.disabled{opacity:.5;background:#64646433}.question-row.disabled .question-prompt{text-decoration:line-through}.tag.disabled-tag{background:#f44;color:#fff}.tag.edited-tag{background:#3498db;color:#fff}.question-row.edited{border-color:#3498db;border-width:2px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content h2{font-size:var(--font-size-lg);margin-bottom:var(--spacing-md)}.warning-text{font-size:var(--font-size-sm);color:var(--color-accent);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#f1c40f1a;border-radius:var(--radius-sm)}.form-row{margin-bottom:var(--spacing-md)}.form-row label{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.form-row input,.form-row select,.form-row textarea{width:100%;padding:var(--spacing-sm);font-size:var(--font-size-md);background:var(--color-bg-light);border:1px solid var(--color-bg-light);border-radius:var(--radius-sm);color:var(--color-text)}.form-row textarea{resize:vertical}.answer-inputs{display:flex;gap:var(--spacing-sm);justify-content:center}.answer-char-input{width:50px!important;height:50px;text-align:center;font-size:var(--font-size-xl)!important;font-weight:700}.form-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.form-actions button{flex:1;padding:var(--spacing-md);font-size:var(--font-size-md);font-weight:700;border-radius:var(--radius-md)}.form-actions .cancel-btn{background:var(--color-bg-light)}.form-actions .save-btn{background:var(--color-primary)}.admin-auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;position:relative}.admin-auth-content{position:relative;z-index:10;width:100%;max-width:380px;padding:var(--spacing-lg)}.admin-back-btn{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-neon-blue);border-radius:var(--radius-md);color:var(--color-neon-blue);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);z-index:100}.admin-back-btn:hover{background:#00d4ff33;box-shadow:var(--glow-blue)}.admin-login-box{padding:var(--spacing-lg);background:var(--color-bg-card);border-radius:var(--radius-lg)}.admin-login-title{text-align:center;margin-bottom:var(--spacing-lg)}.admin-login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-login-field{text-align:left}.admin-login-field label{display:block;font-size:var(--font-size-sm);color:var(--color-accent);margin-bottom:var(--spacing-xs);font-weight:600;letter-spacing:.05em}.admin-login-field input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-md);background:var(--color-bg);border:2px solid var(--color-bg-light);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-fast)}.admin-login-field input:focus{border-color:var(--color-neon-pink);box-shadow:var(--glow-pink);outline:none}.admin-login-field input::placeholder{color:var(--color-text-muted);opacity:.6}.admin-login-field input:disabled{opacity:.5;cursor:not-allowed}.admin-login-error{color:var(--color-correct);font-size:var(--font-size-sm);padding:var(--spacing-sm);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-sm);text-align:center}.admin-login-btn{width:100%;padding:var(--spacing-md)!important;font-size:var(--font-size-lg)!important;margin-top:var(--spacing-sm)}.admin-tabs{display:flex;gap:var(--spacing-xs)}.admin-tab{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:transparent;border:1px solid var(--color-bg-light);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:all .2s}.admin-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.admin-tab:hover:not(.active){border-color:var(--color-text-muted)}.admin-question-header{display:flex;justify-content:flex-end;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light)}.admin-rooms{flex:1;display:flex;flex-direction:column;overflow:hidden}.room-cleanup-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light);flex-wrap:wrap;gap:var(--spacing-sm)}.room-count{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.cleanup-controls{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.cleanup-select{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);background:var(--color-bg-light);border:1px solid var(--color-bg-light);border-radius:var(--radius-sm);color:var(--color-text)}.cleanup-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:#f44;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600}.cleanup-btn:hover{background:#f22}.refresh-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:var(--color-secondary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.rooms-list{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.loading-rooms,.no-rooms{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:var(--font-size-md)}.room-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-card);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);border-left:4px solid var(--color-bg-light)}.room-row.status-waiting{border-left-color:var(--color-secondary)}.room-row.status-playing{border-left-color:var(--color-neon-pink)}.room-row.status-finished{border-left-color:var(--color-text-muted)}.room-info{flex:1;min-width:0}.room-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.room-code{font-size:var(--font-size-lg);font-weight:700;font-family:monospace;color:var(--color-neon-blue)}.room-status{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-full);font-weight:600}.room-status.waiting{background:#2ecc7133;color:var(--color-secondary)}.room-status.playing{background:#f0a3;color:var(--color-neon-pink)}.room-status.finished{background:#ffffff1a;color:var(--color-text-muted)}.room-details{display:flex;gap:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.room-player-names{font-size:var(--font-size-sm);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.delete-room-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:transparent;border:1px solid #ff4444;border-radius:var(--radius-sm);color:#f44;cursor:pointer;font-weight:600;white-space:nowrap}.delete-room-btn:hover{background:#f443}.firestore-sync-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border-bottom:1px solid var(--color-bg-card);flex-shrink:0;gap:var(--spacing-md)}.sync-status{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.sync-label{color:var(--color-text-muted)}.sync-count{color:var(--color-primary);font-weight:600}.sync-empty{color:#f80;font-weight:600}.sync-loading{color:var(--color-text-muted)}.sync-separator{color:var(--color-text-muted);opacity:.5}.firestore-import-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);background:linear-gradient(135deg,#00a8ff,#06f);border-radius:var(--radius-md);color:#fff;font-weight:600;cursor:pointer;border:none;white-space:nowrap}.firestore-import-btn:hover:not(:disabled){background:linear-gradient(135deg,#00b8ff,#07f)}.firestore-import-btn:disabled{opacity:.6;cursor:not-allowed}.pending-badge{background:#f44;color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;margin-left:4px;font-weight:700}.admin-pending{flex:1;overflow:hidden;display:flex;flex-direction:column}.pending-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-card);border-bottom:1px solid var(--color-bg-light);flex-shrink:0}.pending-count{font-weight:600;color:var(--color-text)}.pending-list{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.loading-pending,.no-pending{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted)}.pending-row{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--spacing-md);background:var(--color-bg-card);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);gap:var(--spacing-md)}.pending-info{flex:1;min-width:0}.pending-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.pending-prompt{font-size:var(--font-size-md);color:var(--color-text);margin-bottom:var(--spacing-xs);line-height:1.4}.pending-answer{font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs)}.pending-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.pending-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);flex-shrink:0}.action-btn.approve{background:linear-gradient(135deg,#0c6,#0a4);color:#fff;border:none}.action-btn.approve:hover{background:linear-gradient(135deg,#0d7,#0b5)}.action-btn.reject{background:transparent;border:1px solid #ff4444;color:#f44}.action-btn.reject:hover{background:#f443}.action-btn.edit-approve{background:linear-gradient(135deg,#0af,#08c);color:#fff;border:none}.action-btn.edit-approve:hover{background:linear-gradient(135deg,#0bf,#09d)}.tag.new-category{background:linear-gradient(135deg,#f60,#c50);border-color:#f60;position:relative}.new-badge{font-size:8px;margin-left:4px;padding:1px 4px;background:#ff0;color:#333;border-radius:3px;font-weight:700}.new-category-note{font-size:11px;color:#f60;margin-left:8px;font-weight:400}.approve-save{background:linear-gradient(135deg,#0c6,#0a4)!important}.legal-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-lg);padding-bottom:100px;overflow-y:auto;position:relative}.legal-content{position:relative;z-index:10;width:100%;max-width:700px}.back-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;margin-bottom:var(--spacing-lg);transition:all var(--transition-fast)}.back-btn:hover{background:var(--color-secondary);border-color:var(--color-accent)}.legal-title{text-align:center;margin-bottom:var(--spacing-xl)}.legal-body{background:var(--color-bg-card);border:1px solid var(--color-secondary);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.legal-section{margin-bottom:var(--spacing-xl)}.legal-section:last-child{margin-bottom:0}.legal-section h2{font-size:var(--font-size-lg);color:var(--color-accent);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-secondary)}.legal-section h3{font-size:var(--font-size-md);color:var(--color-text);margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.legal-section p{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.8;margin-bottom:var(--spacing-sm)}.legal-section ul{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.8;margin-left:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.legal-section li{margin-bottom:var(--spacing-xs)}.legal-table{width:100%;border-collapse:collapse;margin:var(--spacing-md) 0}.legal-table th,.legal-table td{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-secondary);text-align:left;font-size:var(--font-size-sm)}.legal-table th{background:var(--color-bg-light);color:var(--color-accent);font-weight:600;width:30%}.legal-table td{color:var(--color-text-muted)}.legal-date{text-align:center;color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:var(--spacing-xl)}.legal-contact{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);text-align:center}.legal-contact a{color:var(--color-accent);text-decoration:none}.legal-contact a:hover{text-decoration:underline}.chain-order-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:safe center;padding:var(--spacing-lg);text-align:center;position:relative;overflow-x:hidden;overflow-y:auto}.chain-order-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px}.chain-order-header{margin-bottom:var(--spacing-lg)}.chain-order-title{margin-bottom:var(--spacing-xs)}.chain-order-subtitle{margin-top:var(--spacing-sm)}.order-info-box{width:100%;padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.order-info-text{font-size:var(--font-size-md);color:var(--color-text);margin-bottom:var(--spacing-xs)}.order-info-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.player-order-list{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-lg)}.player-order-card{display:flex;align-items:center;padding:var(--spacing-md);cursor:default;transition:all .2s ease}.player-order-card.draggable{cursor:grab}.player-order-card.draggable:active{cursor:grabbing}.player-order-card.dragging{opacity:.5;transform:scale(1.02)}.player-order-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:700;color:var(--color-accent);background:#f1c40f33;border-radius:50%;margin-right:var(--spacing-md)}.player-order-info{flex:1;text-align:left}.player-order-name{font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.host-badge{margin-left:var(--spacing-xs)}.player-order-arrows{display:flex;flex-direction:column;gap:4px}.arrow-btn{width:28px;height:24px;display:flex;align-items:center;justify-content:center;background:#00d4ff33;border:1px solid var(--color-neon-blue);border-radius:var(--radius-sm);color:var(--color-neon-blue);font-size:10px;cursor:pointer;transition:all .2s ease}.arrow-btn:hover:not(:disabled){background:#00d4ff66}.arrow-btn:disabled{opacity:.3;cursor:not-allowed}.turn-preview{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:#0000004d;border-radius:var(--radius-md);flex-wrap:wrap}.turn-preview-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.turn-preview-pattern{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.turn-slot{display:inline-flex;align-items:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent);background:#f1c40f33;padding:2px 8px;border-radius:var(--radius-sm)}.turn-arrow{color:var(--color-text-muted);font-size:10px;margin-left:4px}.turn-more{color:var(--color-text-muted);font-size:var(--font-size-sm)}.chain-order-actions{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:320px}.shuffle-btn,.start-btn{width:100%}.back-btn{position:absolute;top:var(--spacing-lg);left:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-neon-blue);border-radius:var(--radius-md);color:var(--color-neon-blue);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);z-index:100}.back-btn:hover{background:#00d4ff33;box-shadow:var(--glow-blue)}.order-timer{display:flex;align-items:baseline;justify-content:center;gap:4px;margin-bottom:var(--spacing-md)}.order-timer .timer-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-accent);font-family:Courier New,monospace;text-shadow:var(--text-glow-accent)}.order-timer .timer-value.warning{color:var(--color-neon-pink);text-shadow:var(--text-glow-pink);animation:pulse .5s ease-in-out infinite}.order-timer .timer-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.preference-section{width:100%;padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.preference-label{font-size:var(--font-size-md);color:var(--color-text);margin-bottom:var(--spacing-sm);font-weight:600}.preference-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center;margin-bottom:var(--spacing-md)}.preference-btn{padding:var(--spacing-sm) var(--spacing-md);background:#0000004d;border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.preference-btn:hover:not(:disabled){border-color:var(--color-neon-blue);background:#0066ff1a}.preference-btn.selected{border-color:var(--color-accent);background:#f1c40f33;color:var(--color-accent);box-shadow:var(--glow-accent)}.preference-btn.omakase{min-width:80px}.preference-btn:disabled{opacity:.5;cursor:not-allowed}.ok-btn{width:100%;max-width:280px;white-space:nowrap}.ok-confirmed{color:var(--color-accent);font-size:var(--font-size-md);font-weight:600;padding:var(--spacing-sm)}.player-vote-status{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.me-badge{font-size:var(--font-size-xs);color:var(--color-neon-pink);margin-left:var(--spacing-xs)}.ok-status{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#0000004d;border-radius:var(--radius-md)}.ok-count{font-size:var(--font-size-md);color:var(--color-text);font-weight:600}.can-start{font-size:var(--font-size-sm);color:var(--color-accent);font-weight:700;animation:pulse 1s ease-in-out infinite}.voice-input-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#0000004d;border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all .3s ease}.voice-input-container.listening{border-color:var(--color-accent);box-shadow:var(--glow-accent)}.voice-input-container.disabled{opacity:.5;pointer-events:none}.voice-input-container.not-supported,.voice-input-container.permission-denied{padding:var(--spacing-lg)}.voice-btn{position:relative;width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-bg-card) 0%,var(--color-bg-light) 100%);border:3px solid var(--color-neon-blue);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.voice-btn:hover{border-color:var(--color-accent);box-shadow:var(--glow-accent);transform:scale(1.05)}.voice-btn.active{border-color:var(--color-accent);background:linear-gradient(135deg,#f1c40f33,#f1c40f1a);animation:mic-glow 1s ease-in-out infinite}@keyframes mic-glow{0%,to{box-shadow:0 0 10px #f1c40f66}50%{box-shadow:0 0 30px #f1c40fcc}}.voice-icon{font-size:36px}.voice-pulse{position:absolute;top:-5px;left:-5px;right:-5px;bottom:-5px;border-radius:50%;border:2px solid var(--color-accent);animation:pulse-ring 1.5s ease-out infinite}@keyframes pulse-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.voice-display{min-height:30px;text-align:center}.voice-interim{font-size:var(--font-size-lg);font-weight:600;color:var(--color-accent);text-shadow:var(--text-glow-accent);animation:text-appear .2s ease-out}@keyframes text-appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.voice-placeholder{font-size:var(--font-size-sm);color:var(--color-text-muted);animation:fade-pulse 2s ease-in-out infinite}.voice-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.voice-error{font-size:var(--font-size-sm);color:var(--color-neon-pink);text-align:center}.voice-error-inline{font-size:var(--font-size-xs);color:var(--color-neon-pink);margin-top:var(--spacing-xs)}.voice-ios-hint{font-size:var(--font-size-xs);color:var(--color-neon-blue);margin-top:var(--spacing-xs);text-align:center;animation:fade-pulse 2s ease-in-out infinite}.voice-permission-btn{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:2px solid var(--color-neon-blue);border-radius:var(--radius-md);color:var(--color-neon-blue);font-size:var(--font-size-sm);cursor:pointer;transition:all .3s ease}.voice-permission-btn:hover{background:#00d4ff33;box-shadow:var(--glow-blue)}@media (max-width: 480px){.voice-btn{width:70px;height:70px}.voice-icon{font-size:30px}}.chain-game-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);text-align:center;position:relative;overflow:hidden}.chain-game-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;gap:var(--spacing-md)}.chain-header{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:var(--spacing-sm)}.chain-timer{display:flex;align-items:baseline;gap:4px}.timer-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-accent);font-family:Courier New,monospace;text-shadow:var(--text-glow-accent)}.timer-value.warning{color:var(--color-neon-pink);text-shadow:var(--text-glow-pink);animation:pulse .5s ease-in-out infinite}.timer-value.critical{color:var(--color-correct);animation:pulse .3s ease-in-out infinite}.timer-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.chain-progress{display:flex;align-items:baseline;gap:4px;font-family:Courier New,monospace}.progress-current{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-neon-blue);text-shadow:var(--text-glow-blue)}.progress-separator,.progress-total{font-size:var(--font-size-lg);color:var(--color-text-muted)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.question-box{width:100%;padding:var(--spacing-lg)}.question-box.reading-phase{animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{box-shadow:0 0 10px #f1c40f4d}50%{box-shadow:0 0 30px #f1c40f99}}.question-prompt{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);line-height:1.6}.reading-info{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.reading-text{color:var(--color-text-muted);font-size:var(--font-size-md)}.start-answering-btn{padding:var(--spacing-lg) var(--spacing-xl)!important;font-size:var(--font-size-lg)!important;animation:neonPulse 2s ease-in-out infinite}.submitted-answers{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center;width:100%;min-height:40px}.submitted-answer{display:flex;align-items:center;gap:4px;padding:var(--spacing-xs) var(--spacing-sm);background:#00ff001a;border:1px solid rgba(0,255,0,.4);border-radius:var(--radius-md)}.answer-number{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600}.answer-text{font-size:var(--font-size-sm);color:var(--color-text);font-weight:600}.current-player-section{width:100%}.current-player-section.my-turn .current-player-card{animation:glow-pulse 1s ease-in-out infinite}.current-player-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);gap:var(--spacing-xs)}.current-player-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.current-player-name{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent)}.input-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.input-mode-toggle{display:flex;gap:var(--spacing-xs);padding:4px;background:#0000004d;border-radius:var(--radius-lg)}.mode-btn{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease}.mode-btn:hover{color:var(--color-text)}.mode-btn.active{background:var(--color-accent);color:var(--color-bg);font-weight:600}.voice-submit-btn{width:100%;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.answer-form{display:flex;gap:var(--spacing-sm);width:100%}.answer-input{flex:1;font-size:var(--font-size-xl)!important;text-align:center;font-weight:600}.submit-answer-btn{min-width:80px}.waiting-message{padding:var(--spacing-md);color:var(--color-text-muted);font-size:var(--font-size-md)}.player-slots{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center;margin-top:var(--spacing-md)}.player-slot{padding:var(--spacing-xs) var(--spacing-sm);background:#0000004d;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);transition:all .3s ease}.player-slot.current{border-color:var(--color-accent);background:#f1c40f33;color:var(--color-accent);box-shadow:var(--glow-accent)}.player-slot.me{font-weight:700}.answer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);z-index:100;animation:overlay-in .3s ease-out}.answer-overlay.correct{background:#00ff0026}.answer-overlay.wrong{background:#ff004426}.answer-result-icon{font-size:80px;animation:bounce-in .5s ease-out}.matched-answer{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-accent);text-shadow:var(--text-glow-accent)}.timeout-screen,.complete-screen{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.timeout-icon,.complete-icon{font-size:100px;animation:bounce-in .5s ease-out}.timeout-result,.complete-result{font-size:var(--font-size-xl);color:var(--color-text)}.error-message{color:var(--color-correct);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-sm);text-shadow:var(--text-glow-pink)}.chain-tv-container{width:100vw;height:100vh;background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#0a0a0f);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative;font-family:"M PLUS Rounded 1c",sans-serif}.chain-tv-loading,.chain-tv-error{text-align:center;color:#fff;font-size:2rem}.chain-tv-hint{font-size:1rem;color:#888;margin-top:1rem}.chain-tv-waiting{text-align:center}.chain-tv-title{font-size:5rem;font-weight:700;color:#f1c40f;text-shadow:0 0 30px rgba(241,196,15,.8);margin-bottom:1rem}.chain-tv-subtitle{font-size:1.5rem;color:#888}.chain-tv-room-code{font-size:3rem;font-weight:700;color:#00d4ff;letter-spacing:.3em;margin-top:2rem;text-shadow:0 0 20px rgba(0,212,255,.8)}.chain-tv-reading{text-align:center}.reading-title{font-size:3rem;color:#f0a;text-shadow:0 0 20px rgba(255,0,170,.8);margin-bottom:2rem}.reading-hint{font-size:1.5rem;color:#888;margin-top:2rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chain-tv-container.game-phase{padding:2rem;justify-content:space-between}.chain-tv-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 2rem}.tv-timer{display:flex;align-items:center}.timer-num{font-size:5rem;font-weight:700;color:#f1c40f;text-shadow:0 0 30px rgba(241,196,15,.8);font-family:Courier New,monospace}.timer-num.warning{color:#f0a;text-shadow:0 0 30px rgba(255,0,170,.8);animation:timer-pulse .5s ease-in-out infinite}.timer-num.critical{color:#f04;animation:timer-pulse .3s ease-in-out infinite}@keyframes timer-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.tv-title{font-size:2rem;font-weight:700;color:#f0a;text-shadow:0 0 20px rgba(255,0,170,.8)}.tv-progress{display:flex;align-items:baseline;gap:.5rem;font-family:Courier New,monospace}.progress-num{font-size:4rem;font-weight:700;color:#00d4ff;text-shadow:0 0 20px rgba(0,212,255,.8)}.progress-sep{font-size:2rem;color:#666}.progress-total{font-size:2rem;color:#888}.question-display{width:90%;max-width:1200px;padding:2rem 3rem;background:#00000080;border:2px solid #7b2cbf;border-radius:1rem;box-shadow:0 0 30px #7b2cbf80;text-align:center}.question-display.reading{animation:glow-pulse 2s ease-in-out infinite}@keyframes glow-pulse{0%,to{box-shadow:0 0 30px #f1c40f80}50%{box-shadow:0 0 60px #f1c40fcc}}.question-text{font-size:2.5rem;font-weight:600;color:#fff;line-height:1.5}.tv-answers{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;width:90%;max-width:1200px}.tv-answer{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#00ff0026;border:2px solid rgba(0,255,0,.5);border-radius:.5rem;animation:answer-in .3s ease-out}@keyframes answer-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.tv-answer-num{font-size:1rem;color:#ffffff80;font-weight:600}.tv-answer-text{font-size:1.5rem;font-weight:700;color:#fff}.tv-current-player{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 3rem;background:#f1c40f33;border:2px solid #f1c40f;border-radius:1rem;box-shadow:0 0 30px #f1c40f80;animation:glow-pulse 1s ease-in-out infinite}.current-label{font-size:1rem;color:#ffffffb3}.current-name{font-size:3rem;font-weight:700;color:#f1c40f;text-shadow:0 0 20px rgba(241,196,15,.8)}.tv-player-list{display:flex;gap:1rem;padding:1rem 0}.tv-player{padding:.5rem 1.5rem;background:#0000004d;border:1px solid #444;border-radius:.5rem;color:#888;font-size:1rem;transition:all .3s ease}.tv-player.current{border-color:#f1c40f;background:#f1c40f33;color:#f1c40f;box-shadow:0 0 20px #f1c40f80}.tv-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:100;animation:overlay-in .3s ease-out}.correct-overlay{background:#0f03}.wrong-overlay{background:#f043}@keyframes overlay-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.overlay-icon{font-size:10rem;animation:bounce-in .5s ease-out}.overlay-text{font-size:4rem;font-weight:700;color:#fff;text-shadow:0 0 30px rgba(255,255,255,.8)}.chain-tv-timeout,.chain-tv-complete{text-align:center}.timeout-icon,.complete-icon{font-size:10rem;animation:bounce-in .5s ease-out}.timeout-title{font-size:5rem;font-weight:700;color:#f04;text-shadow:0 0 30px rgba(255,0,68,.8)}.complete-title{font-size:5rem;font-weight:700;color:#f1c40f;text-shadow:0 0 30px rgba(241,196,15,.8)}.timeout-score,.complete-score{font-size:2rem;color:#888;margin-top:1rem}.chain-tv-container.result-phase{background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#0a0a0f)}.chain-tv-result{text-align:center}.result-header{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem}.result-icon{font-size:8rem;animation:bounce-in .5s ease-out}.result-title{font-size:4rem;font-weight:700;color:#f1c40f;text-shadow:0 0 30px rgba(241,196,15,.8)}.result-score{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-bottom:2rem}.score-value{font-size:6rem;font-weight:700;color:#00d4ff;text-shadow:0 0 30px rgba(0,212,255,.8);font-family:Courier New,monospace}.score-separator{font-size:3rem;color:#666}.score-total{font-size:3rem;color:#888}.result-answers{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;max-width:1000px}.result-answer{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#00ff0026;border:1px solid rgba(0,255,0,.4);border-radius:.5rem}.result-answer-num{font-size:.875rem;color:#ffffff80}.result-answer-text{font-size:1.25rem;font-weight:600;color:#fff}.chain-tv-container.order-phase{padding:2rem}.chain-tv-order{display:flex;flex-direction:column;align-items:center;gap:2rem;width:100%}.order-title{display:flex;align-items:center;gap:.5rem;font-size:4rem;font-weight:700;color:#f0a;text-shadow:0 0 30px rgba(255,0,170,.8)}.order-title-icon{animation:rotate-glow 2s ease-in-out infinite}@keyframes rotate-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.order-subtitle{font-size:1.5rem;color:#888}.tv-order-timer{display:flex;align-items:baseline;gap:.5rem;padding:1rem 2rem;background:#00000080;border:2px solid #f1c40f;border-radius:1rem;box-shadow:0 0 20px #f1c40f4d}.tv-order-timer .timer-value{font-size:4rem;font-weight:700;color:#f1c40f;text-shadow:0 0 20px rgba(241,196,15,.8);font-family:Courier New,monospace}.tv-order-timer .timer-value.warning{color:#f0a;text-shadow:0 0 20px rgba(255,0,170,.8);animation:timer-pulse .5s ease-in-out infinite}.tv-order-timer .timer-label{font-size:1.5rem;color:#888}.tv-order-main{width:100%;max-width:1200px;padding:1rem 2rem}.tv-order-slots{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.tv-order-slot{display:flex;flex-direction:column;align-items:center;gap:1rem}.slot-number-wrap{display:flex;flex-direction:column;align-items:center}.slot-number{width:70px;height:70px;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;color:#f1c40f;background:linear-gradient(135deg,#f1c40f4d,#f1c40f1a);border:4px solid #f1c40f;border-radius:50%;text-shadow:0 0 20px rgba(241,196,15,.8);box-shadow:0 0 25px #f1c40f80}.slot-number-label{font-size:1rem;color:#aaa;margin-top:.35rem;text-transform:uppercase;letter-spacing:.15em;font-weight:600}.slot-player-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem 2rem;background:#00000080;border:3px solid #444;border-radius:1rem;min-width:200px;transition:all .3s ease}.slot-player-card.matched{border-color:#f1c40f;background:linear-gradient(135deg,#f1c40f33,#f1c40f0d);box-shadow:0 0 25px #f1c40f80}.slot-player-card.confirmed{border-color:#00d4ff;background:linear-gradient(135deg,#00d4ff33,#00d4ff0d)}.slot-player-card.matched.confirmed{border-color:#0f8;background:linear-gradient(135deg,#00ff8840,#00ff880d);box-shadow:0 0 30px #00ff8880}.slot-player-name{font-size:1.8rem;font-weight:700;color:#fff;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;text-shadow:0 0 10px rgba(255,255,255,.3)}.host-crown{font-size:1.4rem}.slot-player-status{font-size:1.25rem;padding:.6rem 1rem;border-radius:.5rem;text-align:center;min-width:120px}.slot-player-status.waiting{color:#666;background:#ffffff0d}.slot-player-status.voted{color:#f1c40f;background:#f1c40f33;border:1px solid rgba(241,196,15,.4);box-shadow:0 0 10px #f1c40f4d}.slot-player-status.ok{color:#0f8;background:#0f83;border:1px solid rgba(0,255,136,.4);font-weight:700;box-shadow:0 0 15px #0f86}.status-ok{font-size:1.4rem;letter-spacing:.1em}.status-preference{display:flex;align-items:center;gap:.5rem;font-weight:600}.pref-icon{font-size:1.2rem}.status-waiting{font-style:italic;animation:fade-pulse 2s ease-in-out infinite}@keyframes fade-pulse{0%,to{opacity:.5}50%{opacity:1}}.slot-hopefuls{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:.75rem;margin-top:.5rem;min-width:160px;min-height:48px;transition:all .3s ease}.slot-hopefuls.has-hopefuls{background:linear-gradient(135deg,#ff00aa40,#ff00aa1a);border:2px solid #ff00aa;box-shadow:0 0 20px #f0a6;animation:hopeful-glow 2s ease-in-out infinite}@keyframes hopeful-glow{0%,to{box-shadow:0 0 20px #f0a6}50%{box-shadow:0 0 35px #ff00aab3}}.slot-hopefuls.no-hopefuls{background:#0000004d;border:1px dashed #555}.hopefuls-icon{font-size:1.5rem;animation:target-pulse 1s ease-in-out infinite}@keyframes target-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.hopefuls-names{font-size:1.4rem;color:#f0a;font-weight:700;text-shadow:0 0 15px rgba(255,0,170,.8)}.hopefuls-suffix{font-size:1rem;color:#f0ac}.hopefuls-empty{font-size:.9rem;color:#666;font-style:italic}.tv-order-progress{display:flex;align-items:center;gap:1.5rem;padding:1rem 2rem;background:#0006;border:1px solid #444;border-radius:1rem;min-width:400px}.progress-bar-wrap{flex:1;height:16px;background:#ffffff1a;border-radius:8px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:8px;transition:width .3s ease;box-shadow:0 0 15px #00d4ff80}.progress-text{display:flex;align-items:baseline;gap:.5rem}.progress-text .ok-count{font-size:2rem;font-weight:700;color:#00d4ff;text-shadow:0 0 15px rgba(0,212,255,.8);font-family:Courier New,monospace}.progress-text .ok-label{font-size:1rem;color:#888}.can-start-badge{font-size:1.25rem;font-weight:700;color:#0f8;text-shadow:0 0 15px rgba(0,255,136,.8);animation:pulse 1s ease-in-out infinite;white-space:nowrap}.tv-room-code{font-size:1.25rem;color:#666;letter-spacing:.1em}.mic-prompt-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #333}.mic-prompt-text{font-size:1.25rem;color:#fff;margin-bottom:1rem}.mic-prompt-hint{font-size:.9rem;color:#666;margin-top:1rem}.tv-voice-section{position:fixed;bottom:0;left:0;right:0;padding:1rem 2rem;background:linear-gradient(to top,#000000f2,#000c);border-top:2px solid #00d4ff;display:flex;flex-direction:column;align-items:center;gap:.75rem;z-index:100}.tv-voice-interim{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.5rem;background:#f1c40f33;border:1px solid #f1c40f;border-radius:2rem}.interim-label{font-size:.9rem;color:#f1c40f}.interim-text{font-size:1.5rem;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(241,196,15,.5)}.tv-voice-status{font-size:1rem;padding:.25rem 1rem;border-radius:1rem}.status-speaking{color:#ff9800;background:#ff980033}.status-listening{color:#0f8;background:#0f83;animation:pulse 1.5s ease-in-out infinite}.status-waiting{color:#888;background:#ffffff1a}.tv-mic-toggle{padding:.5rem 1rem;background:#ffffff1a;border:1px solid #666;border-radius:.5rem;color:#888;font-size:.85rem;cursor:pointer;transition:all .2s ease}.tv-mic-toggle:hover{background:#fff3;color:#fff}.tv-mic-enable-btn{position:fixed;bottom:2rem;right:2rem;padding:1rem 2rem;background:linear-gradient(135deg,#00d4ff,#09c);border:none;border-radius:1rem;color:#fff;font-size:1.25rem;font-weight:700;cursor:pointer;box-shadow:0 0 30px #00d4ff80;transition:all .3s ease;z-index:100}.tv-mic-enable-btn:hover{transform:scale(1.05);box-shadow:0 0 40px #00d4ffcc}.tv-voice-section .voice-input-container{background:transparent;border:none;padding:0}.tv-voice-section .voice-btn{width:100px;height:100px;border-width:4px}.tv-voice-section .voice-icon{font-size:48px}.tv-player-arena{display:flex;justify-content:center;align-items:flex-end;gap:1.5rem;width:100%;padding:1rem 2rem;margin-top:auto}.tv-player-slot{position:relative;display:flex;flex-direction:column;align-items:center;width:120px;height:200px;transition:all .3s ease}.tv-player-slot.current{transform:scale(1.1)}.meteor-icon{font-size:3rem;display:block;filter:drop-shadow(0 0 20px rgba(255,100,0,.8));animation:meteor-shake .3s ease-in-out infinite}@keyframes meteor-shake{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.meteor-trail{position:absolute;top:-30px;left:50%;transform:translate(-50%);width:20px;height:40px;background:linear-gradient(to bottom,transparent,rgba(255,150,0,.8),rgba(255,50,0,.4));border-radius:50% 50% 0 0;filter:blur(3px)}.meteor.danger .meteor-icon{font-size:4rem;animation:meteor-shake .15s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(255,50,0,1))}.meteor.critical .meteor-icon{font-size:5rem;animation:meteor-shake .08s ease-in-out infinite,meteor-pulse .3s ease-in-out infinite}@keyframes meteor-pulse{0%,to{transform:scale(1) rotate(-5deg)}50%{transform:scale(1.2) rotate(5deg)}}.player-avatar{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2a2a4e,#1a1a2e);border:3px solid #444;border-radius:50%;margin-top:auto;transition:all .3s ease}.player-avatar.active{border-color:#f1c40f;box-shadow:0 0 30px #f1c40f99;animation:avatar-pulse 1s ease-in-out infinite}@keyframes avatar-pulse{0%,to{box-shadow:0 0 30px #f1c40f99}50%{box-shadow:0 0 50px #f1c40f}}.avatar-emoji{font-size:2.5rem}.player-name-tag{display:flex;align-items:center;gap:.25rem;margin-top:.5rem;padding:.25rem .75rem;background:#0009;border-radius:1rem;font-size:1rem;font-weight:600;color:#fff;white-space:nowrap}.tv-player-slot.current .player-name-tag{background:#f1c40f4d;border:1px solid #f1c40f;color:#f1c40f}.turn-indicator{font-size:1.2rem;animation:bounce-horizontal .5s ease-in-out infinite}@keyframes bounce-horizontal{0%,to{transform:translate(0)}50%{transform:translate(5px)}}.player-ground{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100px;height:8px;background:linear-gradient(to right,transparent,#444,transparent);border-radius:4px}.tv-player-slot.current .player-ground{background:linear-gradient(to right,transparent,#f1c40f,transparent);box-shadow:0 0 15px #f1c40f80}.chain-result-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);text-align:center;position:relative;overflow-y:auto}.chain-result-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;gap:var(--spacing-lg)}.result-header{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.result-icon{font-size:80px;animation:bounce-in .5s ease-out}.result-icon.perfect{animation:bounce-in .5s ease-out,celebration 2s ease-in-out infinite}@keyframes celebration{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-10deg) scale(1.1)}75%{transform:rotate(10deg) scale(1.1)}}@keyframes bounce-in{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.result-score{width:100%}.score-box{display:flex;align-items:baseline;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-lg);flex-wrap:wrap}.score-current{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-accent);font-family:Courier New,monospace;text-shadow:var(--text-glow-accent)}.score-separator,.score-total{font-size:var(--font-size-2xl);color:var(--color-text-muted)}.score-label{font-size:var(--font-size-md);color:var(--color-text-muted);margin-left:var(--spacing-sm)}.answers-section{width:100%}.answers-title{margin-bottom:var(--spacing-sm)}.answers-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.answer-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:#00ff001a;border:1px solid rgba(0,255,0,.3);border-radius:var(--radius-md);gap:var(--spacing-sm)}.answer-num{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0f03;border-radius:50%;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted)}.answer-text{flex:1;text-align:left;font-size:var(--font-size-md);font-weight:600;color:var(--color-text)}.answer-player{font-size:var(--font-size-xs);color:var(--color-text-muted)}.remaining-section{width:100%}.remaining-title{margin-bottom:var(--spacing-sm)}.remaining-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.remaining-item{padding:var(--spacing-xs) var(--spacing-md);background:#ff00aa1a;border:1px solid rgba(255,0,170,.3);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-neon-pink)}.result-actions{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;max-width:280px;margin-top:var(--spacing-md)}.play-again-btn{width:100%}.leave-btn{width:100%;padding:var(--spacing-md) var(--spacing-lg)!important}.loading-spinner{color:var(--color-text);font-size:var(--font-size-lg)}.error-message{color:var(--color-correct);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#ff00441a;border:1px solid var(--color-correct);border-radius:var(--radius-sm)}.chain-tv-test{position:relative;width:100vw;height:100vh;background:linear-gradient(180deg,#0a0a1a,#1a1a3a,#0a0a1a);display:flex;flex-direction:column;overflow:hidden;font-family:Noto Sans JP,sans-serif}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;animation:overlayFadeIn .2s ease-out}.overlay.correct{background:#00c8644d}.overlay.wrong{background:#ff32324d}.overlay-icon{font-size:120px;animation:iconPop .3s ease-out}.overlay-text{font-size:48px;font-weight:900;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.5);margin-top:16px}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes iconPop{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.control-toggle{position:fixed;top:16px;right:16px;z-index:50;padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s}.control-toggle:hover{background:#fff3}.control-panel{position:fixed;top:60px;right:16px;z-index:50;background:#000000e6;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:16px;width:280px;max-height:calc(100vh - 100px);overflow-y:auto}.control-panel h3{font-size:16px;margin-bottom:16px;color:#fff}.control-group{margin-bottom:12px}.control-group label{display:block;font-size:12px;color:#ffffffb3;margin-bottom:6px}.control-group.row{display:flex;gap:8px}.button-group{display:flex;gap:4px;flex-wrap:wrap}.button-group button{padding:6px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s}.button-group button:hover{background:#fff3}.button-group button.active{background:#4a90d9;border-color:#4a90d9}.question-btn{padding:6px 12px;background:#ffc80033;border:1px solid rgba(255,200,0,.4);border-radius:6px;color:#ffc800;font-size:12px;cursor:pointer;transition:all .2s}.question-btn:hover{background:#ffc8004d}.action-btn{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}.action-btn.start{background:linear-gradient(135deg,#4a90d9,#357abd);color:#fff}.action-btn.correct{background:linear-gradient(135deg,#00c853,#00a040);color:#fff}.action-btn.wrong{background:linear-gradient(135deg,#ff5252,#d32f2f);color:#fff}.action-btn.reset,.action-btn.mic{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.action-btn.mic.on{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);border-color:#ff6b6b}.control-panel hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:16px 0}.tv-header{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:linear-gradient(180deg,rgba(0,0,0,.5) 0%,transparent 100%)}.timer{display:flex;align-items:baseline;gap:4px}.timer-value{font-size:48px;font-weight:900;color:#fff;text-shadow:0 0 20px rgba(255,255,255,.5);transition:color .3s,text-shadow .3s}.timer-value.warning{color:#ffc107;text-shadow:0 0 20px rgba(255,193,7,.7)}.timer-value.critical{color:#ff5252;text-shadow:0 0 30px rgba(255,82,82,.9);animation:timerPulse .5s ease-in-out infinite}@keyframes timerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.timer-label{font-size:18px;color:#ffffffb3}.title{font-size:28px;font-weight:900;color:#ffc107;text-shadow:0 0 20px rgba(255,193,7,.5);letter-spacing:4px}.progress{display:flex;align-items:baseline;gap:4px}.progress-current{font-size:48px;font-weight:900;color:#00e676;text-shadow:0 0 20px rgba(0,230,118,.5)}.progress-sep{font-size:24px;color:#ffffff80}.progress-total{font-size:24px;color:#ffffffb3}.question-area{text-align:center;padding:16px 32px}.question-text{font-size:32px;font-weight:700;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}.answers-area{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:8px 32px;min-height:48px}.answer-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#00e67633;border:1px solid rgba(0,230,118,.4);border-radius:20px;animation:chipAppear .3s ease-out}@keyframes chipAppear{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.answer-num{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#00e676;border-radius:50%;font-size:11px;font-weight:700;color:#000}.answer-text{font-size:14px;font-weight:500;color:#fff}.tubes-area{flex:1;display:flex;justify-content:center;align-items:stretch;gap:24px;padding:24px 48px 32px}.player-tube{display:flex;flex-direction:column;align-items:center;flex:1;max-width:120px;transition:all .3s}.player-tube.current{transform:scale(1.05)}.tube{position:relative;flex:1;width:60px;background:linear-gradient(90deg,#6496ff1a,#6496ff33 20%,#6496ff4d,#6496ff33 80%,#6496ff1a);border-left:2px solid rgba(100,150,255,.4);border-right:2px solid rgba(100,150,255,.4);border-radius:30px 30px 0 0;overflow:hidden}.player-tube.current .tube{background:linear-gradient(90deg,#ffc8001a,#ffc80033 20%,#ffc80066,#ffc80033 80%,#ffc8001a);border-left-color:#ffc80099;border-right-color:#ffc80099;box-shadow:0 0 30px #ffc8004d}.tube-glow{position:absolute;top:0;left:50%;transform:translate(-50%);width:20px;height:100%;background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,transparent 100%);opacity:.5}.meteor{position:absolute;left:50%;transform:translate(-50%);z-index:10;transition:top .1s linear}.meteor-icon{font-size:36px;display:block;filter:drop-shadow(0 0 10px rgba(255,150,0,.8));animation:meteorGlow 1s ease-in-out infinite}.meteor.danger .meteor-icon{animation:meteorGlow .5s ease-in-out infinite;filter:drop-shadow(0 0 15px rgba(255,100,0,1))}.meteor.critical .meteor-icon{animation:meteorShake .2s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(255,50,0,1))}@keyframes meteorGlow{0%,to{opacity:1}50%{opacity:.7}}@keyframes meteorShake{0%,to{transform:translate(-50%) rotate(-5deg)}50%{transform:translate(-50%) rotate(5deg)}}.player-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#323250cc;border:3px solid rgba(100,150,255,.4);border-radius:50%;margin-top:-8px;transition:all .3s}.player-icon.active{background:#ffc8004d;border-color:#ffc107;box-shadow:0 0 20px #ffc80080;animation:iconBounce .5s ease-in-out infinite}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.player-emoji{font-size:32px}.player-name{margin-top:8px;font-size:14px;font-weight:500;color:#ffffffb3;text-align:center;transition:all .3s}.player-tube.current .player-name{color:#ffc107;font-weight:700}.voice-section{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:30;text-align:center}.voice-interim{background:#000c;padding:8px 16px;border-radius:8px;margin-bottom:8px;color:#ffc107;font-size:14px}.chain-tv-test.timeout,.chain-tv-test.complete{display:flex;align-items:center;justify-content:center}.result-overlay{text-align:center;animation:resultAppear .5s ease-out}@keyframes resultAppear{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.result-icon{font-size:100px;display:block;margin-bottom:24px}.result-title{font-size:64px;font-weight:900;margin-bottom:16px}.chain-tv-test.timeout .result-title{color:#ff5252;text-shadow:0 0 30px rgba(255,82,82,.7)}.chain-tv-test.complete .result-title{color:#00e676;text-shadow:0 0 30px rgba(0,230,118,.7)}.result-score{font-size:32px;color:#fffc;margin-bottom:32px}.reset-btn{padding:16px 48px;background:linear-gradient(135deg,#4a90d9,#357abd);border:none;border-radius:12px;font-size:20px;font-weight:700;color:#fff;cursor:pointer;transition:all .2s}.reset-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #4a90d980}.chain-tv-test.panel-mode{background:linear-gradient(180deg,#0a1a2a,#1a2a4a,#0a1a2a)}.chain-tv-test.panel-mode .title{color:#64b5f6;text-shadow:0 0 20px rgba(100,181,246,.5)}.panel-main-area{flex:1;display:flex;gap:16px;padding:0 24px 24px;min-height:0}.panel-sidebar{width:140px;display:flex;flex-direction:column;gap:8px}.panel-sidebar-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:linear-gradient(135deg,#1a2a4a,#2a3a5a);border:2px solid #64b5f6;border-radius:10px;cursor:pointer;transition:all .2s}.panel-sidebar-item.available:hover{border-color:#ffc107;box-shadow:0 0 15px #ffc10766;transform:translate(4px)}.panel-sidebar-item.selected{border-color:#ffc107;background:#ffc10733;box-shadow:0 0 20px #ffc10780}.panel-sidebar-item.previewing{border-color:#64b5f6;background:#64b5f64d;box-shadow:0 0 20px #64b5f680;animation:previewPulse .5s ease-in-out infinite}@keyframes previewPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.panel-sidebar-item.answered{background:linear-gradient(135deg,#1a3a2a,#2a4a3a);border-color:#00e676;cursor:default}.panel-sidebar-number{width:28px;height:28px;background:#64b5f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#0a1a2a;flex-shrink:0}.panel-sidebar-item.answered .panel-sidebar-number{background:#00e676}.panel-sidebar-content{flex:1;min-width:0}.panel-sidebar-text{font-size:16px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-sidebar-answer{font-size:13px;font-weight:700;color:#00e676}.panel-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:50;animation:fadeIn .2s ease-out}.panel-popup{background:linear-gradient(135deg,#1a2a4a,#2a3a5a);border:4px solid #64b5f6;border-radius:20px;padding:32px 48px;text-align:center;box-shadow:0 0 60px #64b5f680;animation:popupEnter .3s ease-out;min-width:300px}.panel-popup.answering{border-color:#ffc107;box-shadow:0 0 60px #ffc10780}@keyframes popupEnter{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.preview-indicator{font-size:14px;color:#ffffffb3;margin-bottom:16px}.panel-popup-number{width:48px;height:48px;background:#64b5f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:#0a1a2a;margin:0 auto 16px}.panel-popup.answering .panel-popup-number{background:#ffc107}.panel-popup-text{font-size:64px;font-weight:900;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.5)}.answer-instruction{margin-top:20px;font-size:18px;color:#ffc107;animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.panel-waiting-message,.panel-select-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:24px;color:#fff9;text-align:center}.panel-select-message{color:#ffc107;animation:blink 1s ease-in-out infinite}.chain-tv-test.panel-mode .tubes-area{flex:1;padding:0}@media (max-width: 768px){.panel-sidebar{width:100px}.panel-sidebar-text{font-size:14px}.panel-popup-text{font-size:48px}}.panel-cell .panel-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding-top:20px}.panel-cell .panel-text{font-size:28px;font-weight:700;color:#fff;text-align:center}.panel-cell .panel-image{max-width:100%;max-height:80%;object-fit:contain;border-radius:8px}.panel-answer-revealed{font-size:22px;font-weight:700;color:#00e676;text-align:center;padding-top:20px;animation:answerReveal .3s ease-out}@keyframes answerReveal{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.panel-answer-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.answer-instruction{font-size:20px;color:#ffc107;margin-top:24px;animation:instructionBlink 1s ease-in-out infinite}.panel-waiting-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.panel-waiting-area>p{font-size:18px;color:#ffffffb3;margin-bottom:24px}.panel-waiting-area .panel-grid{opacity:.6;max-height:400px}.panel-waiting-area .panel-cell{cursor:default}@media (max-width: 768px){.panel-enlarged .panel-text{font-size:48px}.panel-cell .panel-text{font-size:20px}.panel-answer-revealed{font-size:16px}}:root{--color-bg: #0c0c0f;--color-bg-light: #141418;--color-bg-card: #1a1a1f;--color-bg-dark: #08080a;--color-primary: #e63946;--color-secondary: #3a3a4a;--color-accent: #00b4d8;--color-text: #e8e8e8;--color-text-muted: #6a6a7a;--color-neon-pink: #e63946;--color-neon-blue: #00b4d8;--color-neon-purple: #5a5a6a;--color-neon-green: #2a9d8f;--color-neon-yellow: #e9c46a;--color-correct: #e63946;--color-incorrect: #457b9d;--glow-pink: 0 0 10px rgba(230, 57, 70, .4);--glow-blue: 0 0 10px rgba(0, 180, 216, .4);--glow-purple: 0 0 10px rgba(90, 90, 106, .3);--glow-correct: 0 0 15px rgba(230, 57, 70, .5);--glow-incorrect: 0 0 15px rgba(69, 123, 157, .5);--glow-accent: 0 0 10px rgba(0, 180, 216, .4);--text-glow-pink: 0 0 8px rgba(230, 57, 70, .5);--text-glow-blue: 0 0 8px rgba(0, 180, 216, .5);--text-glow-accent: 0 0 8px rgba(0, 180, 216, .5);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 20px;--font-size-xl: 24px;--font-size-2xl: 32px;--font-size-3xl: 48px;--font-size-4xl: 64px;--font-size-5xl: 80px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:var(--font-size-md);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{width:100%;height:100%;display:flex;flex-direction:column;position:relative}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;outline:none;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}.btn-primary{position:relative;background:linear-gradient(135deg,var(--color-primary) 0%,#cc0044 100%);color:#fff;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-lg);border:2px solid var(--color-primary);transition:all var(--transition-fast);box-shadow:var(--glow-pink);text-shadow:0 0 10px rgba(255,255,255,.5)}.btn-primary:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 30px #f05c,0 0 60px #f056}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{background:transparent;color:var(--color-accent);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;border:2px solid var(--color-accent);transition:all var(--transition-fast)}.btn-secondary:hover:not(:disabled){background:#00ffff1a;box-shadow:var(--glow-accent)}.btn-accent{position:relative;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-neon-blue) 100%);color:var(--color-bg-dark);padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-weight:900;font-size:var(--font-size-lg);border:2px solid var(--color-accent);transition:all var(--transition-fast);box-shadow:var(--glow-accent);text-shadow:none}.btn-accent:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 40px #0ffc,0 0 80px #0ff6}.btn-accent:active:not(:disabled){transform:scale(.98)}input,textarea{font-family:inherit;font-size:inherit;border:2px solid var(--color-secondary);outline:none;background:#1a1a3acc;color:var(--color-text);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);transition:all var(--transition-fast)}input:focus,textarea:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}.card{background:linear-gradient(135deg,var(--color-bg-card) 0%,var(--color-bg-light) 100%);border:1px solid rgba(123,44,191,.3);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.font-bold{font-weight:700}.neon-text-pink{color:var(--color-neon-pink);text-shadow:var(--text-glow-pink)}.neon-text-blue{color:var(--color-neon-blue);text-shadow:var(--text-glow-blue)}.neon-text-accent{color:var(--color-accent);text-shadow:var(--text-glow-accent)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes neonPulse{0%,to{opacity:1;filter:brightness(1)}50%{opacity:.8;filter:brightness(1.3)}}@keyframes neonFlicker{0%,to{opacity:1}5%{opacity:.8}10%{opacity:1}15%{opacity:.9}20%{opacity:1}50%{opacity:1}55%{opacity:.7}60%{opacity:1}}@keyframes gridScroll{0%{background-position:0 0}to{background-position:50px 50px}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes slotOpenDramatic{0%{transform:rotateY(90deg) scale(.5);opacity:0;filter:brightness(0)}40%{transform:rotateY(-10deg) scale(1.1);opacity:1;filter:brightness(2)}60%{transform:rotateY(5deg) scale(1.05);filter:brightness(1.5)}80%{transform:rotateY(-2deg) scale(1.02);filter:brightness(1.2)}to{transform:rotateY(0) scale(1);opacity:1;filter:brightness(1)}}@keyframes countdownZoom{0%{transform:scale(2);opacity:0;filter:blur(10px)}20%{opacity:1;filter:blur(0)}80%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}@keyframes countdownBeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}}@keyframes correctExplosion{0%{transform:scale(1);box-shadow:0 0 #f04c}30%{transform:scale(1.1);box-shadow:0 0 30px 10px #f049}60%{transform:scale(1.05);box-shadow:0 0 50px 20px #ff00444d}to{transform:scale(1);box-shadow:var(--glow-correct)}}@keyframes incorrectShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes particleFloat{0%,to{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh) rotate(720deg);opacity:0}}@keyframes glowPulse{0%,to{box-shadow:var(--glow-pink)}50%{box-shadow:0 0 40px #f0ac,0 0 80px #ff00aa80}}@keyframes borderGlow{0%,to{border-color:var(--color-neon-pink);box-shadow:inset 0 0 10px #ff00aa4d}50%{border-color:var(--color-neon-blue);box-shadow:inset 0 0 10px #00d4ff4d}}@keyframes textReveal{0%{opacity:0;transform:translateY(20px);filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes screenFlash{0%{background:transparent}50%{background:#ffffff4d}to{background:transparent}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease-out}.animate-slide-up{animation:slideUp .5s ease-out}.animate-slide-down{animation:slideDown .5s ease-out}.animate-scale-in{animation:scaleIn var(--transition-normal) ease-out}.animate-pulse{animation:pulse 1s ease-in-out infinite}.animate-neon-pulse{animation:neonPulse 1.5s ease-in-out infinite}.animate-neon-flicker{animation:neonFlicker 3s linear infinite}.animate-glow-pulse{animation:glowPulse 2s ease-in-out infinite}.animate-border-glow{animation:borderGlow 3s ease-in-out infinite}.cyber-grid-bg{position:fixed;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(123,44,191,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(123,44,191,.1) 1px,transparent 1px);background-size:50px 50px;animation:gridScroll 20s linear infinite;pointer-events:none;z-index:0}.scanlines{position:fixed;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:1000;opacity:.3}.vignette{position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.6) 100%);pointer-events:none;z-index:1}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-secondary) 0%,var(--color-primary) 100%);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-neon-pink)}.error-boundary-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--spacing-lg)}.error-boundary-content{text-align:center;max-width:400px}.error-icon{font-size:64px;margin-bottom:var(--spacing-lg);animation:pulse 2s ease-in-out infinite}.error-title{font-size:var(--font-size-xl);color:var(--color-primary);margin-bottom:var(--spacing-md)}.error-message{color:var(--color-text-muted);margin-bottom:var(--spacing-xl);line-height:1.6}.error-actions{display:flex;flex-direction:column;gap:var(--spacing-md)}.error-details{margin-top:var(--spacing-xl);text-align:left;background:var(--color-bg-dark);padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-secondary)}.error-details summary{cursor:pointer;color:var(--color-text-muted);font-size:var(--font-size-sm)}.error-details pre{margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-primary);white-space:pre-wrap;word-break:break-all}
