/* Chase Control Styles */
.chase-controls-container {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 10px;
}

.playback-section {
  display: flex;
  align-items: center;
  gap: 15px;
  background: #222;
  padding: 10px;
  border-radius: 6px;
  border: 1px solid #333;
}

.playback-buttons {
  display: flex;
  gap: 10px;
}

.play-btn {
  background-color: #2e7d32;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bold;
}

.play-btn:hover {
  background-color: #1b5e20;
}

.play-btn.playing {
  background-color: #ff9800;
}

.stop-btn {
  background-color: #c62828;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bold;
}

.stop-btn:hover {
  background-color: #b71c1c;
}

.loop-toggle {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #ccc;
  cursor: pointer;
  user-select: none;
}

.timing-section {
  display: flex;
  gap: 15px;
}

.timing-input {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.timing-input label {
  font-size: 0.8rem;
  color: #aaa;
}

.timing-input input {
  background: #333;
  border: 1px solid #444;
  color: white;
  padding: 8px;
  border-radius: 4px;
}

.step-actions {
  display: flex;
  gap: 10px;
}

.action-btn {
  flex: 1;
  padding: 10px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.2s;
}

.add-btn {
  background-color: #1565c0;
  color: white;
}

.add-btn:hover {
  background-color: #0d47a1;
}

.delete-btn {
  background-color: #424242;
  color: #aaa;
}

.delete-btn:not(:disabled):hover {
  background-color: #616161;
  color: white;
}

.delete-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.step-list-wrapper {
  background: #1a1a1a;
  border: 1px solid #333;
  border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 300px;
}

.step-list-header {
  display: flex;
  padding: 8px 10px;
  background: #252525;
  border-bottom: 1px solid #333;
  font-size: 0.8rem;
  color: #aaa;
  font-weight: bold;
  gap: 5px;
}

.step-list {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  flex: 1;
}

.step-item {
  display: flex;
  padding: 8px 10px;
  border-bottom: 1px solid #2a2a2a;
  cursor: pointer;
  transition: background 0.1s;
  font-size: 0.9rem;
  gap: 5px;
}

.step-item:hover {
  background: #2a2a2a;
}

.step-item.active {
  background: #0d47a1;
  color: white;
}

.step-item.playing {
  background: #1b5e20;
  color: white;
}

.file-actions {
  display: flex;
  gap: 10px;
  margin-top: auto;
}

.file-btn {
  flex: 1;
  background: #424242;
  color: #ddd;
  border: 1px solid #555;
  padding: 8px;
  border-radius: 4px;
  cursor: pointer;
}

.file-btn:hover {
  background: #505050;
}

.update-btn {
  background-color: #ff9800;
  color: white;
}

.update-btn:hover {
  background-color: #f57c00;
}

.update-btn:disabled {
  background-color: #424242;
  color: #aaa;
  opacity: 0.5;
  cursor: not-allowed;
}
