ngx-guided-tour {
    .guided-tour-user-input-mask {
        position: fixed;
        top: 0;
        left: 0;
        display: block;
        height: 100%;
        width: 100%;
        max-height: 100vh;
        text-align: center;
        opacity: 0;
    }

    .guided-tour-spotlight-overlay {
        position: fixed;
        box-shadow: 0 0 0 9999px rgba(0, 0, 0, .7), 0 0 1.5rem rgba(0, 0, 0, .5);
    }

    .tour-orb {
        position: fixed;
        width: 20px;
        height: 20px;
        border-radius: 50%;

        .tour-orb-ring {
            width: 35px;
            height: 35px;
            position: relative;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            animation: pulse 2s linear infinite;

            &:after {
                content: '';
                display: inline-block;
                height: 100%;
                width: 100%;
                border-radius: 50%;
            }
        }

        @keyframes pulse {
            from {
                transform: translate(-50%, -50%) scale(0.45);
                opacity: 1.0;
            }

            to {
                transform: translate(-50%, -50%) scale(1);
                opacity: 0.0;
            }
        }
    }

    .tour-step {
        position: fixed;

        &.page-tour-step {
            max-width: 400px;
            width: 50%;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%)
        }

        &.tour-bottom,
        &.tour-bottom-right,
        &.tour-bottom-left {
            .tour-arrow::before {
                position: absolute;
            }

            .tour-block {
                margin-top: 10px;
            }
        }

        &.tour-top,
        &.tour-top-right,
        &.tour-top-left {
            margin-bottom: 10px;

            .tour-arrow::before {
                position: absolute;
                bottom: 0;
            }

            .tour-block {
                margin-bottom: 10px;
            }
        }

        &.tour-bottom,
        &.tour-top {
            .tour-arrow::before {
                transform: translateX(-50%);
                left: 50%;
            }
        }

        &.tour-bottom-right,
        &.tour-top-right {
            .tour-arrow::before {
                transform: translateX(-100%);
                left: calc(100% - 5px);
            }
        }

        &.tour-bottom-left,
        &.tour-top-left {
            .tour-arrow::before {
                left: 5px;
            }
        }

        &.tour-left {
            .tour-arrow::before {
                position: absolute;
                left: 100%;
                transform: translateX(-100%);
                top: 5px;
            }

            .tour-block {
                margin-right: 10px;
            }
        }

        &.tour-right {
            .tour-arrow::before {
                position: absolute;
                left: 0;
                top: 5px;
            }

            .tour-block {
                margin-left: 10px;
            }
        }

        .tour-block {
            padding: 15px 25px;
        }

        .tour-progress-indicator {
            padding-bottom: 15px;
        }

        .tour-title {
            font-weight: bold !important;
            padding-bottom: 20px;
        }

        h3.tour-title {
            font-size: 20px;
        }

        h2.tour-title {
            font-size: 30px;
        }

        .tour-content {
            min-height: 80px;
            padding-bottom: 30px;
            font-size: 15px;
        }

        .tour-buttons {
            overflow: hidden; // clearfix

            button.link-button {
                padding-left: 0;
                font-size: 15px;
                font-weight: bold;
                max-width: none !important;
                cursor: pointer;
                text-align: center;
                white-space: nowrap;
                vertical-align: middle;
                border: 1px solid transparent;
                line-height: 1.5;
                background-color: transparent;
                position: relative;
                outline: none;
                padding: 0 15px;
                -webkit-appearance: button;
            }

            button.skip-button.link-button {
                padding-left: 0;
                border-left: 0;
            }

            .back-button {
                cursor: pointer;
                border-radius: 1px;
                font-size: 14px;
                border: none;
                outline: none;
                padding-left: 10px;
                padding-right: 10px;
            }

            .next-button {
                cursor: pointer;
                border-radius: 1px;
                font-size: 14px;
                border: none;
                outline: none;
                padding-left: 10px;
                padding-right: 10px;
            }
        }
    }
}


.arrow {
    position: absolute;
    left: -50px;
    top: -13px;
}

.right-connector {
    transform: scaleX(-1);
    left: 0;
    right: -46px;
}


.circle {
    position: absolute;
    box-sizing: border-box;
    height: 118px;
    width: 100px;
    border: 7px solid #000;
    border-radius: 50%;
    -webkit-clip-path: inset(0 50% 0 0);
    clip-path: inset(0 50% 0 0);
    border-style: dotted;
}

.triangle {
    position: absolute;
    width: 20px;
    height: 15px;
    background: #000;
    margin-top: -6px;
    margin-left: 38px;
    -webkit-clip-path: polygon(50% 0, 0% 100%, 100% 100%);
    clip-path: polygon(50% 0, 0% 100%, 100% 100%);
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
.circle-start-dot {
    display: inline;
    width: 16px;
    height: 16px;
    background-color: #F3962E;
    content: "";
    border-radius: 50%;
    position: absolute;
    margin-top: 108px;
    margin-left: 40px;
}

.tour-step.left-panel:after {
    display: inline;
    width: 8px;
    height: -webkit-fill-available;
    background-color:green;
    position: absolute;
    content: "";
    overflow: hidden;
    top: 10px;
}
.tour-step.right-panel:after {
    display: inline;
    width: 8px;
    height: -webkit-fill-available;
    background-color: green;
    right: 0;
    position: absolute;
    content: "";
    overflow: hidden;
    top: 10px;
}
.tour-step.top-panel:after {
    display: inline;
    width: 8px;
    height: -webkit-fill-available;
    background-color: green;
    right: 0;
    position: absolute;
    content: "";
    overflow: hidden;
    top: 10px;
}
.tour-step.bottom-panel:after {
    display: inline;
    width: 8px;
    height: -webkit-fill-available;
    background-color: green;
    right: 0;
    position: absolute;
    content: "";
    overflow: hidden;
    top: 10px;
}

/* Dots Styles */
.progress-container {
    display: flex;
    justify-content: center;
    align-items: center;
}
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.5rem;
  }
  
  .nav-dots {
    display: inline-block;
    position: relative;
    width: auto;
    height: 10px;
    border-radius: 50%;
    cursor: default;
    margin: 2px;
  }
  
  .nav-dots .nav-dot {
    top: -5px;
    width: 11px;
    height: 11px;
    margin: 0 4px;
    position: relative;
    border-radius: 100%;
    display: inline-block;
    background-color: lightgray;
  }
  
  .nav-dot-active {
    background: #113463;
  }
  
  /* Dots Styles */

.top-connector {
    top: -116px !important;
    right: 173px !important;

    .circle {
        top: 50px;
        left: 80px;
        transform: rotate(180deg);
        width: 50px;
        height: 70px;
    }
    .circle-start-dot {
        margin-left: 100px;
    }
    .triangle {
        left: 63px;
        top: 49px;
        transform: rotate(44deg) !important;
    }
}
