.color-picker-component {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 8px;

  .sat-val-container {
    position: relative;
    width: 256px;
    height: 256px;
    cursor: crosshair;
    border-radius: 4px;
    overflow: hidden;

    .sat-val-canvas {
      display: block;
    }

    .sat-val-selector {
      position: absolute;
      width: 14px;
      height: 14px;
      border-radius: 50%;
      border: 2px solid #fff;
      box-shadow: 0 0 2px rgba(0, 0, 0, 0.8);
      transform: translate(-50%, -50%);
      pointer-events: none;
    }
  }

  .sliders-container {
    width: 100%;

    .slider-row {
      margin-bottom: 8px;

      input[type="range"] {
        width: 100%;
        height: 12px;
        -webkit-appearance: none;
        appearance: none;
        outline: none;
        border-radius: 6px;

        &::-webkit-slider-thumb {
          -webkit-appearance: none;
          width: 16px;
          height: 16px;
          border-radius: 50%;
          background: #fff;
          cursor: pointer;
          border: 1px solid #555;
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
        }

        &::-moz-range-thumb {
          width: 16px;
          height: 16px;
          border-radius: 50%;
          background: #fff;
          cursor: pointer;
          border: 1px solid #555;
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
        }
      }

      .hue-slider {
        background: linear-gradient(
          to right,
          hsl(0, 100%, 50%),
          hsl(60, 100%, 50%),
          hsl(120, 100%, 50%),
          hsl(180, 100%, 50%),
          hsl(240, 100%, 50%),
          hsl(300, 100%, 50%),
          hsl(360, 100%, 50%)
        );
      }

      .alpha-slider {
        background: #333; /* Simple dark background */
      }
    }
  }

  .color-info {
    width: 100%;
    display: flex;

    .rgba-value {
      width: 100%;
      padding: 6px 8px;
      border-radius: 4px;
      border: 1px solid #444;
      background-color: #242424;
      color: #e0e0e0;
      font-family: monospace;
      font-size: 14px;
      text-align: center;
    }
  }
}
