.battle-arena{min-height:100vh;padding-top:120px;padding-bottom:60px}.subject-select .subject-card{cursor:pointer;transition:var(--transition)}.subject-select .subject-card.selected{border-color:var(--primary);background:var(--primary-ultra-light)}.battle-modes{max-width:700px;margin:0 auto}.battle-mode-card{background:var(--surface);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow);align-items:center;gap:20px;margin-bottom:16px;padding:24px;display:flex}.battle-mode-card:hover{box-shadow:var(--shadow-md);transform:translate(8px)}.mode-icon{border-radius:var(--radius);background:var(--primary-ultra-light);justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;display:flex}.mode-content{flex:1}.mode-content h3{margin-bottom:4px;font-size:18px;font-weight:700}.mode-content p{color:var(--text-muted);font-size:14px}.mode-reward{text-align:right;flex-direction:column;gap:4px;display:flex}.mode-reward span{font-size:14px;font-weight:700}.matchmaking-spinner{border:6px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:80px;height:80px;margin:0 auto;animation:1s linear infinite spin}.battle-game{background:linear-gradient(180deg, var(--primary-ultra-light) 0%, var(--background) 100%);min-height:100vh;padding:90px 24px 40px}.game-container{max-width:800px;margin:0 auto}.battle-header-row{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px 24px;display:flex}.player-avatar-small{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:700;display:flex}.player-name{font-size:16px;font-weight:700}.player-score-display{color:var(--primary);font-size:24px;font-weight:800}.battle-vs{color:var(--secondary);font-size:24px;font-weight:800}.game-timer{justify-content:center;margin-bottom:24px;display:flex}.timer-circle{background:var(--surface);width:80px;height:80px;box-shadow:var(--shadow);border:4px solid var(--primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.timer-circle.warning{border-color:var(--warning);animation:.5s infinite pulse}.timer-circle.danger{border-color:var(--error);animation:.5s infinite shake}.timer-circle span{color:var(--primary);font-size:28px;font-weight:800}.battle-game .quiz-card{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:40px}.question-progress{text-align:center;color:var(--text-muted);margin-bottom:20px;font-size:14px}.battle-game .quiz-question{text-align:center;margin-bottom:32px;font-size:24px;font-weight:700}.battle-game .quiz-options{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.battle-game .quiz-option{background:var(--background);border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);text-align:center;padding:20px;font-size:18px;font-weight:600}.battle-game .quiz-option:hover:not(.disabled){border-color:var(--primary);background:var(--primary-ultra-light)}.battle-game .quiz-option.disabled{cursor:not-allowed;opacity:.7}.battle-game .quiz-option.correct{color:#fff;background:var(--success)!important;border-color:var(--success)!important}.battle-game .quiz-option.wrong{color:#fff;background:var(--error)!important;border-color:var(--error)!important}.result-modal{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.result-content{background:var(--surface);border-radius:var(--radius-xl);text-align:center;width:100%;max-width:450px;padding:48px;animation:.3s scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.result-icon{margin-bottom:16px;font-size:80px}.result-content h2{margin-bottom:8px;font-size:32px;font-weight:800}.result-subtitle{color:var(--text-muted);margin-bottom:24px;font-size:16px}.result-stats{background:var(--background);border-radius:var(--radius);justify-content:center;gap:40px;margin-bottom:32px;padding:20px;display:flex}.result-stat{text-align:center}.result-stat .stat-value{color:var(--primary);font-size:32px;font-weight:800;display:block}.result-stat .stat-label{color:var(--text-muted);font-size:14px}.result-actions{flex-direction:column;gap:12px;display:flex}.result-actions .btn{width:100%}.quick-answer{pointer-events:none;z-index:100;font-size:120px;font-weight:900;animation:.5s forwards popIn;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.quick-answer.correct{color:var(--success)}.quick-answer.wrong{color:var(--error)}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@media (width<=768px){.battle-header-row{text-align:center;flex-direction:column;gap:16px}.player-info{justify-content:center!important}.battle-vs{font-size:20px}.battle-game .quiz-options{grid-template-columns:1fr}.mode-reward{display:none}}.fill-blank-container{flex-direction:column;gap:16px;margin-top:20px;display:flex}.fill-blank-input{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;transition:var(--transition);padding:16px;font-size:18px}.fill-blank-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #16a34a1a}.fill-blank-mode .quiz-question{margin-bottom:24px;font-size:24px;line-height:1.6}.matching-container{flex-wrap:wrap;align-items:center;gap:24px;margin-top:24px;display:flex}.matching-left,.matching-right{flex-direction:column;flex:1;gap:12px;min-width:120px;display:flex}.matching-item{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;transition:var(--transition);-webkit-user-select:none;user-select:none;padding:12px 16px;font-weight:600}.matching-item:hover{border-color:var(--primary-light);background:var(--primary-ultra-light)}.matching-item.correct{border-color:var(--success);color:var(--success);background:#22c55e1a}.matching-item.wrong{border-color:var(--error);color:var(--error);background:#ef44441a}.matching-item.disabled{cursor:not-allowed;opacity:.6}.matching-arrows{opacity:.5;font-size:24px}.ordering-container{margin-top:20px}.ordering-instruction{color:var(--text-muted);margin-bottom:16px;font-style:italic}.ordering-list{flex-direction:column;gap:8px;display:flex}.ordering-item{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);cursor:grab;transition:var(--transition);-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 16px;display:flex}.ordering-item:hover{border-color:var(--primary-light);background:var(--primary-ultra-light)}.ordering-item:active{cursor:grabbing}.ordering-item.correct{border-color:var(--success);background:#22c55e1a}.ordering-item.wrong{border-color:var(--error);background:#ef44441a}.drag-handle{cursor:grab;opacity:.5}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px;align-items:center;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.badge-info{color:#3b82f6;background:#3b82f61a}.badge-success{color:var(--success);background:#22c55e1a}.badge-warning{color:var(--warning);background:#f59e0b1a}.badge-danger{color:var(--error);background:#ef44441a}.badge-secondary{color:var(--text-muted);background:#6b72801a}.battle-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.battle-vs-badges{align-items:center;gap:12px;display:flex}.battle-vs-badges .badge{margin-left:8px}.player-info{flex:1;align-items:center;gap:12px;display:flex}.player-info:first-child{justify-content:flex-start}.player-info:last-child{justify-content:flex-end}.question-progress{text-align:center;color:var(--text-muted);margin-bottom:16px;font-size:14px;font-weight:600}.quiz-options{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px;display:grid}.quiz-option{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);text-align:left;transition:var(--transition);align-items:center;gap:16px;padding:16px 20px;font-size:16px;display:flex}.quiz-option:hover:not(.disabled){border-color:var(--primary-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.quiz-option.selected{border-color:var(--primary);background:var(--primary-ultra-light)}.quiz-option.correct{border-color:var(--success);color:var(--success);background:#22c55e1a}.quiz-option.wrong{border-color:var(--error);color:var(--error);background:#ef44441a}.quiz-option.disabled{cursor:not-allowed;opacity:.7}.option-label{background:var(--primary-ultra-light);width:32px;height:32px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:flex}.option-text{word-break:break-word;flex:1}.question-type-indicator{border-radius:var(--radius-full);text-transform:uppercase;background:#0000001a;padding:4px 12px;font-size:12px;font-weight:600;position:absolute;top:16px;right:16px}@keyframes difficultyUp{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.difficulty-increase{animation:.5s difficultyUp}.srs-mode-banner{color:#fff;border-radius:var(--radius);text-align:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);margin-bottom:24px;padding:12px 24px}.result-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0;display:grid}.result-stat{text-align:center;background:var(--primary-ultra-light);border-radius:var(--radius);padding:16px}.result-stat .stat-value{color:var(--primary);margin-bottom:4px;font-size:24px;font-weight:800}.result-stat .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.result-rewards{border:2px solid var(--gold);border-radius:var(--radius);background:#fbbf241a;margin:20px 0;padding:16px}.rewards-earned{justify-content:center;gap:32px;display:flex}.reward-item{align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.reward-icon{font-size:24px}.result-tips{border-left:4px solid var(--primary);border-radius:var(--radius);background:#3b82f60d;margin-top:20px;padding:16px}.result-tips h4{color:var(--primary);margin-bottom:8px}.result-tips ul{margin:0;padding-left:20px}.result-tips.success{border-left-color:var(--success);background:#22c55e0d}.result-tips h4{color:var(--success)}@media (width<=768px){.matching-container{flex-direction:column}.matching-arrows{transform:rotate(90deg)}.result-stats-grid{grid-template-columns:repeat(2,1fr)}.rewards-earned{flex-direction:column;align-items:center;gap:12px}.battle-vs-badges{flex-direction:column;gap:8px}}
