/* 活动详情页（/activities/<id>）专用样式 */

.activity-stats-page { max-width: 900px; margin: 0 auto; }

.activity-meta-card { background: #fff; border-radius: 12px; border: 1px solid #e5e7eb; padding: 20px 24px; margin-bottom: 20px; }
.activity-meta-row { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 0.88rem; color: #6b7280; }
.activity-meta-row strong { color: #374151; }
.activity-code { font-size: 0.8em; }

.stats-section { background: #fff; border-radius: 12px; border: 1px solid #e5e7eb; margin-bottom: 20px; overflow: hidden; }
.stats-section-head { display: flex; justify-content: space-between; align-items: center; padding: 16px 20px; border-bottom: 1px solid #f3f4f6; background: #fafafa; }
.stats-section-title { font-size: 1rem; font-weight: 600; color: #1f2937; margin: 0; }
.stats-section-meta { font-size: 0.82rem; color: #9ca3af; }
.stats-section-body { padding: 16px 20px; }

.stats-loading { text-align: center; padding: 40px 20px; color: #9ca3af; font-size: 0.9rem; }
.stats-loading .spinner { display: inline-block; width: 24px; height: 24px; border: 3px solid #e5e7eb; border-top-color: #3b82f6; border-radius: 50%; animation: activity-spin 0.8s linear infinite; margin-right: 8px; vertical-align: middle; }
@keyframes activity-spin { to { transform: rotate(360deg); } }

.stats-empty { text-align: center; padding: 32px 20px; color: #9ca3af; font-size: 0.88rem; }
.stats-empty i { font-size: 2rem; display: block; margin-bottom: 8px; opacity: 0.5; }

.stats-error { text-align: center; padding: 32px 20px; color: #dc2626; font-size: 0.88rem; }
.stats-error i { font-size: 2rem; display: block; margin-bottom: 8px; }

.choice-bar-wrap { margin-bottom: 12px; }
.choice-bar-label { display: flex; justify-content: space-between; font-size: 0.85rem; color: #374151; margin-bottom: 4px; }
.choice-bar-label .count { color: #6b7280; font-size: 0.8rem; }
.choice-bar-track { height: 10px; background: #f1f5f9; border-radius: 6px; overflow: hidden; }
.choice-bar-fill { height: 100%; background: linear-gradient(90deg, #3b82f6, #60a5fa); border-radius: 6px; transition: width 0.5s ease; }
.choice-bar-field-label { font-size: 0.82rem; font-weight: 600; color: #6b7280; margin-bottom: 8px; margin-top: 8px; }

.wordcloud-tags { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px 0; }
.wordcloud-tag { display: inline-block; padding: 4px 12px; background: #eff6ff; color: #2563eb; border-radius: 20px; line-height: 1.4; transition: background 0.15s; cursor: default; }
.wordcloud-tag:hover { background: #dbeafe; }

.submission-card { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 10px; padding: 14px 16px; margin-bottom: 10px; }
.submission-card-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.submission-badge { font-size: 0.78rem; font-weight: 600; color: #6b7280; background: #e5e7eb; padding: 2px 8px; border-radius: 4px; }
.submission-time { font-size: 0.8rem; color: #9ca3af; }
.submission-item { margin-bottom: 6px; font-size: 0.88rem; line-height: 1.6; }
.submission-item-label { font-weight: 500; color: #374151; margin-bottom: 2px; font-size: 0.8rem; }
.submission-item-value { color: #1f2937; white-space: pre-wrap; word-break: break-word; }
.submission-item-empty { color: #9ca3af; font-size: 0.82rem; }
.submission-flag { display: inline-block; margin-top: 6px; font-size: 0.8rem; font-weight: 600; padding: 2px 8px; border-radius: 4px; }
.submission-flag.is-correct { background: #dcfce7; color: #16a34a; }
.submission-flag.is-incorrect { background: #fee2e2; color: #dc2626; }
.submission-correct-answer { font-size: 0.8rem; color: #6b7280; margin-top: 4px; }
.submission-score { font-size: 0.8rem; color: #6b7280; margin-top: 4px; }

.activity-debug-panel { display: none; background: #1e1e1e; color: #d4d4d4; border-radius: 8px; padding: 14px 16px; font-size: 0.78rem; font-family: monospace; line-height: 1.6; margin-top: 20px; }
.activity-debug-panel summary { color: #9cdcfe; cursor: pointer; font-size: 0.82rem; margin-bottom: 8px; }
.activity-debug-panel pre { margin: 0; white-space: pre-wrap; word-break: break-word; }
.activity-debug-panel.is-visible { display: block; }
