.candle{
    --bg-color-main: #F2F2F2;
    --bg-color-main-lighten: #F9F9F9;
    --text-color-light: #747373;
    --text-color: #434141;
    --icon-color: #848378;
    --icon-color-hover: #5E5E55;
    --step-bg-color: #ffffff;
    --step-bg-color-active: #E9E3E3;
    --step-shadow-color: rgba(0,0,0, 0.15);
    --step-shadow-color-active: #F2F2F2;
    --step-border-color: #747373;
    --step-border-color-active: #299801;
    --part-border-radius: 10px;
    --part-border-radius-half: 5px;
    --part-bg-color: #ffffff;
    --part-item-border-radius: 10px;
    --part-item-border-radius-half: calc(var(--part-item-border-radius) / 2);
    --part-item-text-bg-color: rgba(255,255,255,0.62);
    --part-item-active-color: #299801;
    --part-item-active-text-color: #ffffff;
    --button-bg-color: #747373;
    --button-text-color: #ffffff;
    --footer-fire-icon-color: #FE5622;
    --footer-items-bg-color: #ffffff;
    --footer-items-add-border-color: #000000;
    --footer-items-remove-bg-color: rgba(255,0,0,0.25);
    --contacts-input-border-color: #d9d9d9;
    --contacts-input-bg-color: var(--bg-color-main-lighten);

    background: var(--bg-color-main);
    padding: 16px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    margin-left: -15px;
    margin-right: -15px;
    color: var(--text-color);
}
.candle button{
    border: 0;
}
.candle input[type=number]::-webkit-inner-spin-button,
.candle input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.candle__header{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.candle__body{
    margin-top: 20px;
}
.candle__parts{
    margin-top: 21px;
}
.candle__footer{
    margin-top: 21px;
    max-width: 600px;
    margin-left: auto;
}
.candle__order, .candle__form, .candle__info, .candle__delivery, .candle__confirm{
    margin-top: 21px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}
.candle-button{
    height: 40px;
    line-height: 40px;
    border-radius: 33px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    padding-left: 21px;
    padding-right: 21px;
    background: var(--button-bg-color);
    color: var(--button-text-color);
    white-space: nowrap;
    cursor: pointer;
}
.candle-button[disabled], .candle-button_disabled{
    opacity: 0.5;
}
.candle-button_full{
    display: block;
    flex-grow: 1;
}
.candle-button-icon{
    height: 40px;
    width: 40px;
    border-radius: 50%;
    font-size: 20px;
    background: var(--step-bg-color-active);
    white-space: nowrap;
    cursor: pointer;
}
/* transition */
.fade-enter-active, .fade-leave-active {
    transition: opacity 0.3s ease;
}
.fade-enter-from, .fade-leave-to {
    opacity: 0;
}
/* loader */
.skeleton {
    position: relative;
    background: #eee;
    overflow: hidden;
    border-radius: 8px;
}

.skeleton__shimmer {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;

    background: linear-gradient(
        90deg,
        rgba(220, 220, 220, 0) 0%,
        rgba(220, 220, 220, 0.6) 50%,
        rgba(220, 220, 220, 0) 100%
    );

    animation: shimmer 1.2s infinite;
}

@keyframes shimmer {
    0%   { left: -100%; }
    100% { left: 100%; }
}


@media(min-width: 768px){
    .candle{
        padding: 42px;
        margin-left: 0;
        margin-right: 0;
    }
    .candle__body{
        margin-top: 24px;
    }
    .candle__parts{
        margin-top: 34px;
    }
    .candle-button{
        height: 46px;
        line-height: 46px;
        border-radius: 38px;
        font-size: 16px;
        padding-left: 50px;
        padding-right: 50px;
    }
}
