.steps-widget {
  padding: 20px;
  border-radius: 20px;
}

/* Step Item */
.step-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px 28px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 16px;
  backdrop-filter: blur(12px);
  color: #e6eef8;
  transition: all 0.3s ease;
  box-shadow: 0 8px 32px rgba(0,0,0,0.1);
  flex-shrink: 0;
  min-width: 280px;
}

.step-item:hover {
  background: rgba(255,255,255,0.12);
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.2);
}

/* Number Circle */
.step-number {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg, #21d4fd, #b721ff);
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(33,212,253,0.4);
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

.step-item:hover .step-number {
  transform: scale(1.05);
}

/* Text */
.step-text {
  font-size: 15px;
  line-height: 1.5;
  color: #e6eef8;
  flex: 1;
}

/* Connector Arrow (Static Mode) */
.step-connector {
  width: 24px;
  height: 24px;
  background: #21d4fd;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  flex-shrink: 0;
  transition: background 0.3s ease;
}

.layout-horizontal .step-connector {
  margin: 0 8px;
}

.layout-vertical .step-connector {
  margin: 8px 0;
  transform: rotate(90deg);
}

/* Layouts */
.layout-horizontal {
  flex-direction: row !important;
}

.layout-vertical {
  flex-direction: column !important;
}

/* Marquee Track */
.marquee-enabled .steps-track {
  flex-shrink: 0;
}

.marquee-enabled.layout-vertical .steps-track {
  flex-direction: column !important;
  align-items: center;
}