private void resize() {
        width  = getSkinnable().getWidth();
        height = getSkinnable().getHeight();
        if (getSkinnable().isKeepAspect()) {
            if (aspectRatio * width > height) {
                width  = 1 / (aspectRatio / height);
            } else if (1 / (aspectRatio / height) > width) {
                height = aspectRatio * width;
            }
        }
        if (width > 0 && height > 0) {
            frame.setPrefSize(width, height);

            outerBorder.setPrefSize(0.9259259259259259 * width, 0.8604651162790697 * height);
            outerBorder.setTranslateX(0.037037037037037035 * width);
            outerBorder.setTranslateY(0.06976744186046512 * height);

            innerBorder.setPrefSize(0.8765432098765432 * width, 0.7906976744186046 * height);
            innerBorder.setTranslateX(0.06172839506172839 * width);
            innerBorder.setTranslateY(0.11627906976744186 * height);

            body.setPrefSize(0.8518518518518519 * width, 0.7441860465116279 * height);
            body.setTranslateX(0.07407407407407407 * width);
            body.setTranslateY(0.13953488372093023 * height);

            text.setTranslateX(0.2716049382716049 * width);
            text.setTranslateY(height * 0.5);
        }
    }