/* Battle Log — Spectator Styles */

.bl-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px;
  background: #1a1a2e;
  border-radius: 8px;
  margin-bottom: 12px;
  align-items: center;
}

.bl-filters {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.bl-cat-btn {
  padding: 6px 12px;
  border: 1px solid #333;
  border-radius: 6px;
  background: #0f0f23;
  color: #ccc;
  cursor: pointer;
  font-size: 13px;
  transition: all 0.2s;
}

.bl-cat-btn:hover {
  background: #1e1e3a;
  border-color: #555;
}

.bl-cat-btn.active {
  background: #2563eb;
  border-color: #3b82f6;
  color: #fff;
}

.bl-importance {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #aaa;
  font-size: 13px;
}

.bl-importance input[type="range"] {
  width: 100px;
  accent-color: #3b82f6;
}

.bl-toggles {
  display: flex;
  gap: 12px;
  color: #aaa;
  font-size: 13px;
}

.bl-toggles label {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
}

/* Stats Bar */
.bl-stats-bar {
  display: flex;
  gap: 16px;
  padding: 8px 12px;
  background: #111;
  border-radius: 6px;
  margin-bottom: 12px;
  overflow-x: auto;
}

.bl-stat {
  color: #aaa;
  font-size: 12px;
  white-space: nowrap;
}

.bl-stat strong {
  color: #fff;
}

/* Feed */
.bl-feed {
  max-height: 500px;
  overflow-y: auto;
  padding: 8px;
  background: #0a0a1a;
  border-radius: 8px;
  border: 1px solid #222;
  margin-bottom: 12px;
}

.bl-event {
  padding: 10px 12px;
  margin-bottom: 6px;
  border-radius: 6px;
  border-left: 3px solid #333;
  background: #111;
  transition: background 0.2s;
}

.bl-event:hover {
  background: #1a1a2e;
}

.bl-event.bl-high {
  border-left-color: #ef4444;
  background: #1a0f0f;
}

.bl-event.bl-med {
  border-left-color: #eab308;
}

.bl-event.bl-low {
  border-left-color: #555;
}

.bl-event-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}

.bl-cat-badge {
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 11px;
  color: #fff;
}

.bl-tick {
  color: #666;
  font-size: 11px;
  font-family: monospace;
}

.bl-imp-badge {
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 10px;
  text-transform: uppercase;
  font-weight: 600;
}

.bl-imp-badge.bl-high {
  background: #ef4444;
  color: #fff;
}

.bl-imp-badge.bl-med {
  background: #eab308;
  color: #000;
}

.bl-imp-badge.bl-low {
  background: #333;
  color: #999;
}

.bl-narrative {
  color: #ddd;
  font-size: 14px;
  line-height: 1.4;
}

.bl-agents {
  color: #888;
  font-size: 12px;
  margin-top: 4px;
}

.bl-agent {
  font-weight: 600;
}

/* Highlights */
.bl-highlights {
  background: #1a1a2e;
  border-radius: 8px;
  padding: 12px;
}

.bl-highlights h3 {
  color: #fff;
  margin: 0 0 8px 0;
  font-size: 16px;
}

.bl-highlight-card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: #0f0f23;
  border-radius: 6px;
  margin-bottom: 6px;
}

.bl-highlight-icon {
  font-size: 18px;
  flex-shrink: 0;
}

.bl-highlight-text {
  color: #ddd;
  font-size: 13px;
  flex: 1;
}

.bl-highlight-tick {
  color: #666;
  font-size: 11px;
  font-family: monospace;
}

/* States */
.bl-loading, .bl-empty, .bl-error {
  text-align: center;
  padding: 40px 20px;
  color: #888;
  font-size: 14px;
}

.bl-error {
  color: #ef4444;
}

/* Light mode */
.light-mode .bl-controls {
  background: #f3f4f6;
}

.light-mode .bl-cat-btn {
  background: #fff;
  border-color: #ddd;
  color: #333;
}

.light-mode .bl-cat-btn:hover {
  background: #f0f0f0;
}

.light-mode .bl-stats-bar {
  background: #f9fafb;
}

.light-mode .bl-stat {
  color: #666;
}

.light-mode .bl-stat strong {
  color: #111;
}

.light-mode .bl-feed {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .bl-event {
  background: #f9fafb;
}

.light-mode .bl-event:hover {
  background: #f0f4ff;
}

.light-mode .bl-event.bl-high {
  background: #fef2f2;
}

.light-mode .bl-narrative {
  color: #222;
}

.light-mode .bl-highlights {
  background: #f3f4f6;
}

.light-mode .bl-highlight-card {
  background: #fff;
}

.light-mode .bl-highlight-text {
  color: #333;
}

/* Mobile */
@media (max-width: 768px) {
  .bl-controls {
    flex-direction: column;
    gap: 8px;
  }
  
  .bl-filters {
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
  }
  
  .bl-cat-btn {
    flex-shrink: 0;
    padding: 8px 14px;
    min-height: 44px;
  }
  
  .bl-stats-bar {
    flex-wrap: wrap;
    gap: 8px;
  }
  
  .bl-feed {
    max-height: 400px;
  }
  
  .bl-event {
    padding: 8px 10px;
  }
  
  .bl-narrative {
    font-size: 13px;
  }
}

@media (max-width: 480px) {
  .bl-importance {
    flex-wrap: wrap;
  }
  
  .bl-feed {
    max-height: 350px;
  }
}
