Make the idea

- Extra creative
- Extra professional
- Extra Intuitive
- Don't use sliders, get more creative than that
- It can be graphs and editing of graphs
- it can be cool visual graph editing
- it can be so much just make it even better

using System;
using System.Drawing;
using System.Windows.Forms;

namespace ByteBreath
{
    public partial class LoraBlend : Form
    {
        private int r = 8; // range 0-100
        private int lora_alpha = 16; // range 0-100
        private float lora_dropout = 0.01f; // range 0-1

        // slider rectangles, for hit detection and drawing
        private readonly Rectangle sliderAreaR = new Rectangle(50, 40, 300, 20);
        private readonly Rectangle sliderAreaLoraAlpha = new Rectangle(50, 100, 300, 20);
        private readonly Rectangle sliderAreaLoraDropout = new Rectangle(50, 160, 300, 20);

        private bool draggingR = false;
        private bool draggingAlpha = false;
        private bool draggingDropout = false;

        public LoraBlend()
        {
            this.DoubleBuffered = true;
            this.ClientSize = new Size(420, 230);

            this.Text = "AI Visual Values Editor";
            this.Paint += Form1_Paint;
            this.MouseDown += Form1_MouseDown;
            this.MouseMove += Form1_MouseMove;
            this.MouseUp += Form1_MouseUp;
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.Clear(Color.White);

            DrawSlider(g, "r", r, 0, 100, sliderAreaR);
            DrawSlider(g, "lora_alpha", lora_alpha, 0, 100, sliderAreaLoraAlpha);
            DrawSlider(g, "lora_dropout", lora_dropout, 0f, 1f, sliderAreaLoraDropout);
        }

        // Generic slider drawing function
        private void DrawSlider(Graphics g, string label, float value, float min, float max, Rectangle area)
        {
            // Draw label
            g.DrawString(label, this.Font, Brushes.Black, area.Left - 40, area.Top - 4);

            // Draw slider background
            g.FillRectangle(Brushes.LightGray, area);

            // Calculate position of handle
            float perc = (value - min) / (max - min);
            int handleX = area.Left + (int)(perc * area.Width);

            Rectangle handleRect = new Rectangle(handleX - 7, area.Top - 5, 14, area.Height + 10);

            // Draw slider fill (to handle)
            g.FillRectangle(Brushes.CornflowerBlue, area.Left, area.Top, handleX - area.Left, area.Height);

            // Draw handle
            g.FillEllipse(Brushes.DarkBlue, handleRect);
            g.DrawEllipse(Pens.Black, handleRect);

            // Draw current value text at right
            string valText = label == "lora_dropout" ? value.ToString("0.00") : ((int)value).ToString();
            g.DrawString(valText, this.Font, Brushes.Black, area.Right + 10, area.Top - 2);
        }

        private void Form1_MouseDown(object sender, MouseEventArgs e)
        {
            if (IsInHandle(e.Location, r, 0, 100, sliderAreaR)) draggingR = true;
            else if (IsInHandle(e.Location, lora_alpha, 0, 100, sliderAreaLoraAlpha)) draggingAlpha = true;
            else if (IsInHandle(e.Location, lora_dropout, 0, 1, sliderAreaLoraDropout)) draggingDropout = true;
        }

        private void Form1_MouseMove(object sender, MouseEventArgs e)
        {
            if (!draggingR && !draggingAlpha && !draggingDropout) return;

            // Helper lambda to clamp
            int clamp(int v, int min, int max) => v < min ? min : v > max ? max : v;

            if (draggingR)
            {
                float perc = (float)(e.X - sliderAreaR.Left) / sliderAreaR.Width;
                perc = Math.Max(0, Math.Min(1, perc));
                r = (int)(perc * 100);
                Invalidate();
            }
            else if (draggingAlpha)
            {
                float perc = (float)(e.X - sliderAreaLoraAlpha.Left) / sliderAreaLoraAlpha.Width;
                perc = Math.Max(0, Math.Min(1, perc));
                lora_alpha = (int)(perc * 100);
                Invalidate();
            }
            else if (draggingDropout)
            {
                float perc = (float)(e.X - sliderAreaLoraDropout.Left) / sliderAreaLoraDropout.Width;
                perc = Math.Max(0, Math.Min(1, perc));
                // Round to 2 decimals
                lora_dropout = (float)Math.Round(perc, 2);
                Invalidate();
            }
        }

        private void Form1_MouseUp(object sender, MouseEventArgs e)
        {
            draggingR = false;
            draggingAlpha = false;
            draggingDropout = false;
        }

        // Hit-test if point is near the handle
        private bool IsInHandle(Point pt, float value, float min, float max, Rectangle area)
        {
            float perc = (value - min) / (max - min);
            int handleX = area.Left + (int)(perc * area.Width);
            Rectangle handleRect = new Rectangle(handleX - 10, area.Top - 8, 20, area.Height + 16);
            return handleRect.Contains(pt);
        }
    }
}