/* global React, window */
// Fahrrad-Piktogramm (Variante v2 vom Nutzer geliefert).
// Saubere Compound-Pfade mit eingebetteten Löchern (fillRule evenodd) —
// keine separaten white-cut-outs nötig.
// Aspect: viewBox 189×183 → fast quadratisch.

function Bike({
  color = "currentColor",
  accentColor = null,
  /* eslint-disable no-unused-vars */
  bgColor = "#ffffff",
  strokeWidth = 2.2,
  spinning = false,
  spinSpeed = 0.5,
  /* eslint-enable no-unused-vars */
}) {
  return (
    <svg
      viewBox="0 0 189 183"
      preserveAspectRatio="xMidYMid meet"
      aria-hidden="true"
      fillRule="evenodd"
    >
      <g transform="translate(0 -8.4)">
        <g fill={color}>
          {/* Körper / Arm / Bein */}
          <path d="m 84.41,50.31 c 15.53,-1.47 20.08,15.72 28.03,24.97 0.66,0.76 1.68,1.98 2.54,2.44 4.18,2.27 14.99,2.32 20.27,4.27 6.62,2.45 5.24,10.38 -0.73,11.09 -4.13,0.5 -21.38,-2.42 -25.99,-3.61 -6.79,-1.75 -8.8,-8.53 -14.16,-12.16 l -11.82,14.6 0.71,1.16 c 5.75,5.21 14.17,9.49 19.6,14.78 2.23,2.17 3.24,4.15 3.71,7.23 -1.78,12.62 -0.54,26.82 -2.6,39.26 -1.74,10.53 -14.44,11.85 -17.83,1.98 L 85.76,121.19 C 85.19,120.42 84.44,119.86 83.67,119.3 75.4,113.18 53.12,104.4 50.11,95.04 48.6,90.35 50.06,86.65 52.55,82.65 58.5,73.08 68.2,64.38 74.47,54.86 c 2.79,-2.37 6.2,-4.2 9.93,-4.55 z" />
          {/* Sattel/Lenker + Vorderrad-Donut */}
          <path d="m 138.81,118.71 c 29.14,-9.57 57.22,16.01 48.94,45.38 -6.07,21.51 -30.43,32.41 -51.32,23.76 -29.58,-12.25 -30.49,-53.86 -1.67,-67.16 l -2.34,-4.84 c -5.45,-0.3 -10.81,1.86 -15.58,4.27 l -7.7,5.51 c -0.25,-4.39 0.12,-5.63 3.56,-8.09 4.99,-3.56 11.97,-5.6 18.04,-6.21 -1.12,-2.54 -3.13,-10.01 -5.38,-11.23 -4.37,-2.37 -13.53,-3.42 -18.47,-3.06 -5.07,0.38 -10.29,4.1 -13.81,-0.75 -0.02,-1.22 12.59,-3.64 14.31,-3.7 l 21.51,3.54 c 0.77,0.33 0.94,1.06 1.29,1.7 1.55,2.86 7.71,20.22 8.64,20.88 z m -2.05,5.93 c -23.9,10.94 -25.02,44.67 -2.01,57.46 24.34,13.53 53.26,-5.98 49.68,-32.99 -2.63,-19.89 -24.28,-32.83 -43.65,-26.43 l 12.07,29.31 c -0.2,2.32 -3.95,2.42 -4.63,0.12 l -11.46,-27.46 z" />
          {/* Hinterrad-Donut + Kette/Kurbel-Linie */}
          <path d="m 75.48,151.76 h 7.03 v 4.44 h -7.03 c -2,30.02 -38.23,45.54 -62.02,26.12 -19.91,-16.25 -17.32,-47.84 5.11,-60.54 24.78,-14.04 55.2,2.34 56.92,29.99 z m -4.52,0 c -1.53,-23.99 -28.15,-38.41 -49.74,-26.39 -17.68,9.84 -22.41,33.65 -9.29,49.08 19.43,22.86 56.58,11 59.03,-18.25 H 40.07 c -2.95,0 -2.53,-4.44 -1,-4.44 h 31.9 z" />
          {/* Klingel/Schaltung-Detail */}
          <path d="m 147.57,80.75 c 8.22,1.34 8.74,15.18 -0.34,17.41 -2.73,0.67 -9.28,0.54 -7.62,-3.48 1.01,-2.44 8.75,1.62 9.69,-3.85 0.87,-5.05 -2.09,-5.85 -6.51,-5.88 l -3.01,-4.2 c 2.39,0.27 5.5,-0.37 7.79,0 z" />
          {/* Kette-Strich */}
          <path d="M 82.51,136.96 68.96,114.28 c 1.93,1.6 5.53,2.87 7.29,4.43 1.17,1.05 6.56,10.18 6.76,11.64 0.29,2.1 -0.93,4.4 -0.49,6.62 z" />
        </g>
        {/* Kopf — kann Akzentfarbe annehmen */}
        <path
          fill={accentColor || color}
          d="m 109.52,16.27 c 31.08,-4.15 31.41,42.9 0,38.7 -21.44,-2.86 -21.33,-35.85 0,-38.7 z"
        />
      </g>
      {/* Pixie-Marke / Logo (in v3 ergänzt, oben über dem Kopf) */}
      <path
        fill={color}
        d="m 139.45353,13.814468 c 0.17,0.27 0.66,0.45 1.07,1.19 3.58,6.44 0.79,12.29 -6.6,12.83 -0.05,3.76 -1.32,9.15 -3.81,12.06 -10.39,12.16 -28.94,9.3 -35.439998,-5.05 -0.4,-0.88 -1.36,-6.29 -0.93,-6.72 4.22,-0.06 10.189998,-0.64 14.069998,-2.39 0.36,-0.16 0.55,0.14 0.42,-0.63 -1.95,-0.1 -5.5,-2.48 -7.09,-2.58 -1.13,-0.08 -3.429998,0.72 -4.829998,0.78 -4.05,0.15 -5.98,-0.19 -5.56,-4.66 0.11,-1.15 0.92,-3.02 0.86,-3.95 -0.02,-0.24 -1.28,-3.69 -1.52,-4.48 -0.08,-0.2499996 -0.52,-0.21 -0.57,-0.4399996 -0.2,-0.8 0.55,-2.45 1.06,-3.1 2.39,-3.11 10.219998,-5.23 14.019998,-5.91000003 13.79,-2.46999997 27.09,0.83000003 34.84,13.05999963 z m -5.12,3.32 c -7.24,-11.8099996 -22.97,-13.6899996 -35.139998,-8.7999996 -2.97,1.19 -3.55,1.65 -1.37,4.3799996 5.999998,7.54 25.379998,10.02 34.439998,9.38 3.53,-0.25 4.47,-1.01 2.64,-4.47 -0.17,-0.33 -0.51,-0.38 -0.58,-0.49 z"
      />
    </svg>
  );
}

window.Bike = Bike;
