.calculator {
    position: relative;
    margin-top: 191px;
}

.calculator__wrapper {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    column-gap: 42px;
    position: relative;
    z-index: 5;
}

.calculator__wrapper:before {
    content: "";
    position: absolute;
    top: -132px;
    right: -226px;
    width: 400px;
    height: 400px;
    z-index: -1;
    background-image: url("../images/calculator/coins.png");
    background-repeat: no-repeat;
    background-size: contain;
}

.calculator__wrapper:after {
    content: "";
    position: absolute;
    bottom: -263px;
    left: -105px;
    width: 400px;
    height: 400px;
    z-index: -1;
    background-image: url("../images/calculator/coins.png");
    background-repeat: no-repeat;
    background-size: contain;
}

.calculator__title {
    font-size: 51px;
    font-weight: 700;
    line-height: normal;
    color: #FFF;
    margin-bottom: 52px;
}

.calculator__description {
    color: #8D929C;
    font-size: 18px;
    font-weight: 400;
    line-height: 29px;
}

.calculator__container {
    max-width: 1281px;
    padding: 0 24px;
    margin: 0 auto;
}

.calculator__box {
    background: linear-gradient(180deg, #171430 0%, #231D4F 100%);
    border-radius: 31px;
    position: relative;
    padding: 54px 45px 59px 60px;
    width: fit-content;
    min-width: 730px;
    z-index: 10;
}

.calculator__text {
    display: flex;
    flex-direction: column;
    max-width: 406px;
    padding-top: 15px;
    position: relative;
}

.calculator__text:before {
    content: "";
    position: absolute;
    top: 25px;
    left: -256px;
    width: 498px;
    height: 498px;
    z-index: -1;
    background-color: #1C1C41;
    opacity: 0.5;
    filter: blur(150px);
}

.calculator__box * {
    position: relative;
    z-index: 10;
}

.calculator__box:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 31.4751px;
    padding: 3px;
    background: radial-gradient(76.28% 119.86% at 50% 0%, #F6FB80 0%, #F9BCFE 18.03%, #5FE9B9 42.71%, #FB4AFF 66.15%, #26BEFF 83.33%, #FCFF7D 100%);
    -webkit-mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: 5;
}

.calculator__amount {
    display: flex;
    justify-content: center;
}

.calculator__amount-title {
    font-weight: 600;
    font-size: 28px;
    line-height: 175%;
    margin-top: 4px;
    margin-left: -17px;
}

.calculator__amount span {
    display: flex;
    background: #221C4D;
    border: 2px solid #6F73CF;
    border-radius: 10px;
    padding: 8px 0 8px 0;
    max-width: 158px;
    min-width: 158px;
    position: relative;
    font-weight: 700;
    font-size: 19px;
    line-height: 175%;
    color: #6F73CF;
    margin-left: 70px;
}

.calculator__amount input {
    max-width: 130px;
    background: #221C4D;
    border: none;
    outline: none;
    padding: 0 0 0 34px;
}

/* Chrome, Safari, Edge, Opera */
.calculator__amount input::-webkit-outer-spin-button,
.calculator__amount input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
.calculator__amount[type=number] {
    -moz-appearance: textfield;
}

.calculator__range {
    margin-top: 30px;
    margin-bottom: 29px;
}

input[type="range"] {
    -webkit-appearance: none;
    width: 98%;
    height: 11px;
    background:  rgba(255, 255, 255, 0.13);
    border-radius: 42px;
    background-image: linear-gradient(90deg, #6F73CF 0%, #6F73CF 100%);
    background-size: 0% 100%;
    background-repeat: no-repeat;
}

/* Input Thumb */
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 26px;
    height: 23.31px;
    border-radius: 50%;
    cursor: ew-resize;
    background: #FFFFFF;
    border: 6px solid #6F73CF;
}

input[type="range"]::-moz-range-thumb {
    -webkit-appearance: none;
    width: 34px;
    height: 19px;
    background: #DADADA;
    border-radius: 15px;
    cursor: ew-resize;
    box-shadow: 0 0 2px 0 #555;
    transition: background .3s ease-in-out;
}

input[type="range"]::-ms-thumb {
    -webkit-appearance: none;
    width: 34px;
    height: 19px;
    background: #DADADA;
    border-radius: 15px;
    cursor: ew-resize;
    box-shadow: 0 0 2px 0 #555;
    transition: background .3s ease-in-out;
}

/* Input Track */
input[type=range]::-webkit-slider-runnable-track  {
    -webkit-appearance: none;
    box-shadow: none;
    border: none;
    background: transparent;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance:textfield;
}

input[type=range]::-moz-range-track {
    -webkit-appearance: none;
    box-shadow: none;
    border: none;
    background: transparent;
}

input[type="range"]::-ms-track {
    -webkit-appearance: none;
    box-shadow: none;
    border: none;
    background: transparent;
}

.calculator__select-title {
    font-weight: 600;
    font-size: 28px;
    line-height: 175%;
    color: #FFFFFF;
    margin-bottom: 16px;
    text-align: center;
    margin-left: -16px;
}

.calculator__select-buttons {
    display: flex;
    justify-content: center;
    column-gap: 19px;
}

.calculator__select-btn {
    font-weight: 500;
    font-size: 19px;
    line-height: 175%;
    border: 2px solid #6F73CF;
    border-radius: 10px;
    background: none;
    cursor: pointer;
    padding: 7px 20px;
    transition: background-color .3s ease-in-out;
    min-width: 137px;
}

.calculator__select-btn.active {
    background: #6F73CF;
}

.calculator__profit {
    margin-top: 34px;
    margin-right: -16px;
    display: flex;
    justify-content: center;
    column-gap: 70px;
}

.calculator__profit-name {
    font-weight: 400;
    font-size: 19px;
    line-height: 175%;
    margin-bottom: 4px;
}

.calculator__profit-value {
    font-weight: 700;
    font-size: 30px;
    line-height: 100%;
}

.calculator__profit-value.profit {
    color: #6FCF97;
}

@media (max-width: 1180px) {
    .calculator__text {
        max-width: 1000px;
        text-align: center;
        padding-top: 0;
    }

    .calculator__title {
        margin-bottom: 20px;
    }

    .calculator__wrapper {
        flex-direction: column;
        row-gap: 30px;
    }
}

@media (max-width: 900px) {
    .calculator {
        margin-top: 100px;
    }

    .calculator__box {
        min-width: 100%;
        padding: 54px 0 59px 0;
    }

    .calculator__range {
        display: flex;
        justify-content: center;
        padding: 0 15px;
    }

    .calculator__range input {
        max-width: 612px;
        margin: 0 auto;
    }
}

@media (max-width: 850px) {
    .calculator {
        margin-top: 80px;
    }
}

@media (max-width: 700px) {
    .calculator__select {
        padding: 0 15px;
    }

    .calculator__select-buttons {
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 19px;
    }

    .calculator__box {
        padding: 30px 0 40px 0;
    }
}

@media (max-width: 575px) {
    .calculator__profit {
        flex-wrap: wrap;
        margin-right: 0;
        row-gap: 20px;
        column-gap: 45px;
        padding: 0 15px;
        text-align: center;
    }
}

@media (max-width: 540px) {
    .calculator__amount {
        flex-direction: column;
        align-items: center;
        padding: 0 15px;
    }

    .calculator__amount-title {
        margin-left: 0;
        margin-bottom: 15px;
    }

    .calculator__select-title {
        margin-left: 0;
        line-height: 140%;
    }

    .calculator__amount span {
        margin-left: 0;
    }
}

@media (max-width: 500px) {
    .calculator__container {
        padding: 0 15px;
    }

    .calculator__title {
        font-size: 34px;
        margin-bottom: 17px;
    }

    .calculator__description {
        font-size: 14px;
    }
}