class Sass::Value::Color::Space::Oklch

def bounded?

def bounded?
  false
end

def convert(dest, lightness, chroma, hue, alpha)

def convert(dest, lightness, chroma, hue, alpha)
  missing_chroma = chroma.nil?
  missing_hue = hue.nil?
  chroma = 0 if missing_chroma
  hue = 0 if missing_hue
  hue_radians = hue * Math::PI / 180
  OKLAB.convert(
    dest,
    lightness,
    chroma * Math.cos(hue_radians),
    chroma * Math.sin(hue_radians),
    alpha,
    missing_chroma:,
    missing_hue:
  )
end

def initialize

def initialize
  super('oklch', [
    LinearChannel.new('lightness', 0, 1,
                      conventionally_percent: true, lower_clamped: true, upper_clamped: true).freeze,
    LinearChannel.new('chroma', 0, 0.4, lower_clamped: true).freeze,
    Utils::HUE_CHANNEL
  ].freeze)
end

def polar?

def polar?
  true
end