docs: private void initGraphics() {
          if (Double.compare(getPrefWidth(), 0.0) <= 0 || Double.compare(getPrefHeight(), 0.0) <= 0 || Double.compare(getWidth(), 0.0) <= 0 ||
              Double.compare(getHeight(), 0.0) <= 0) {
              if (getPrefWidth() > 0 && getPrefHeight() > 0) {
                  setPrefSize(getPrefWidth(), getPrefHeight());
              } else {
                  setPrefSize(PREFERRED_WIDTH, PREFERRED_HEIGHT);
              }
          }
  
          getStyleClass().add("switch");
  
          shadow = new DropShadow(BlurType.TWO_PASS_BOX, Color.rgb(0, 0, 0, 0.65), 3, 0, 0, 0);
  
          switchBorder = new Rectangle();
          switchBorder.setFill(getForegroundColor());
  
          switchBackground = new Rectangle();
          switchBackground.setMouseTransparent(true);
          switchBackground.setFill(isActive() ? getActiveColor() : getBackgroundColor());
  
          thumb = new Circle();
          thumb.setMouseTransparent(true);
          thumb.setFill(getForegroundColor());
          thumb.setEffect(shadow);
  
          pane = new Pane(switchBorder, switchBackground, thumb);
  
          getChildren().setAll(pane);
      }