
.predict-parameters, .predict-toggle-wrapper {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 32px;
    align-items: center;
}

#parameters-panel {
    width: 100%;
}

#wine-description, #text-panel {
    width: 100%;
    max-width: 600px;
    min-height: 250px;
}

.submit-container {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto;
}

.submit-container .predict-button {
    margin-top: 0;
    margin-left: 0;
}

#text-panel {
    padding: 20px;
    background: var(--grey-color);
    border-radius: 20px;
}


#wine-description {
    background: var(--grey-color);
    border: none;
    resize: none;
}

#wine-description:focus {
    outline: none;
}


#text-panel.focused {
    outline: var(--green-color) 2px solid;
}

.text-hint {
    margin-right: auto;
    font-size: 14px;
    line-height: 14px;
    color: var(--secondarty-text-color, #666);
}


h1, h2 {
    font-size: 40px;
    font-weight: 600;
    margin: 0;
}

h3, h4, p {
    margin: 0;
}

h1 span, h2 span {
    padding: 8px 0;
    background: linear-gradient(
            to top,
            transparent 10%,
            var(--salad-color) 10%,
            var(--salad-color) 40%,
            transparent 40%
    );
}


.predict-header {
    display: flex;
    width: 100%;
    align-items: center;
}


.predict-button {
    height: 40px;
    border-radius: 50px;
    background: var(--green-color);
    color: var(--background-color);
    font-size: 16px;
    border: none;
    outline: none;
    padding: 0 24px;
    font-weight: 500;
    margin-top: calc(24px + 32px);
    cursor: pointer;
    transition: 0.3s ease;
}

.predict-button:disabled {
    background: var(--grey-color);
    color: var(--secondarty-text-color);
    cursor: not-allowed;
    opacity: 0.6;
}


.select-column {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.option-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.characteristics-container {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

input[type="checkbox"], input[type="radio"] {
    display: flex;
    align-items: center;
    justify-content: center;

    height: 20px;
    width: 20px;
    cursor: pointer;
    appearance: none; /* Убираем стандартный стиль */
    margin: 0;
    padding: 0;
    border-radius: 50%; /* Для радио кнопок */
    background-color:  var(--background-color);
    transition: background-color 0.3s, border-color 0.3s;
    position: relative; /* Для работы с псевдоэлементами */
    border: 2px solid var(--grey-color); /* Обычная граница */
}

/* Для чекбоксов квадратный радиус */
input[type="checkbox"] {
    border-radius: 4px;
}

/* Стили для состояния checked */
input[type="checkbox"]:checked, input[type="radio"]:checked {
    background-color:  var(--background-color); /* Зеленый цвет при выборе */
    border-color: var(--green-color);
}

/* Псевдоэлемент для красивого фона */
input[type="checkbox"]:checked::before, input[type="radio"]:checked::before {
    content: "";
    position: absolute;
    width: 12px; /* Оставляем место для границы */
    height: 12px;
    background-color: var(--green-color); /* Цвет выбранного состояния */
    border-radius: 50%; /* Для радиокнопки */
}

/* Псевдоэлемент для красивого фона */
input[type="checkbox"]:checked::before {
    content: "";
    position: absolute;
    width: 12px; /* Оставляем место для границы */
    height: 12px;
    background-color: var(--green-color); /* Цвет выбранного состояния */
    border-radius: 2px;
}

/* Эффект при наведении */
input[type="checkbox"]:hover, input[type="radio"]:hover {
    border-color: var(--green-color);
}

.submit-container-with-slider {
    width: fit-content;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 64px;
}

/* Стили для контейнера слайдера */
.strength-slider {
    width: fit-content;
    margin: 20px auto;
    text-align: center;
}

/* Заголовок слайдера */
.strength-slider h3 {
    margin-bottom: 24px;
    font-size: 16px;
    color: var(--primary-text-color);
}

input[type="range"] {
    padding: 0;
    margin: 0 16px;
    outline: none;
    -webkit-appearance: none;
    width: calc(100% - 32px);
    height: 4px;
    border: none;
    background: var(--secondarty-text-color);
    border-radius: 5px;
    background-image: linear-gradient(var(--green-color), var(--green-color));
    background-size: 50% 100%;
    background-repeat: no-repeat;
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: var(--green-color);
    cursor: ew-resize;
    box-shadow: 0 0 2px 0 #555;
    transition: background .3s ease-in-out;
}

input[type=range]::-webkit-slider-runnable-track  {
    -webkit-appearance: none;
    box-shadow: none;
    border: none;
    background: transparent;
}

.slider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    width: 500px;
}

.slider-value {
    min-width: 32px;
    max-width: 32px;
    text-align: center; /* Для выравнивания текста */
    position: absolute;
    margin-top: 20px;
    font-size: 18px;
    color: var(--green-color);
}

.toggle-container {
    position: sticky;
    left: 50%;
    transform: translateX(-50%); /* Сдвигаем контейнер на половину его ширины */


    align-items: center;
    display: flex;
    height: 40px;
    gap: 4px;
    padding: 4px;
    border-radius: 50px;
    background: var(--grey-color);
    color: var(--secondarty-text-color);
    font-size: 16px;
    border: none;
    outline: none;
    font-weight: 500;
}

.grapes-choose {
    margin-left: auto;

    gap: 8px;
    background: var(--grey-color);
    border: 2px solid var(--grey-color);
    color: var(--secondarty-text-color);

    display: flex;

    border-radius: 50vh;
    padding: 8px 12px;
    cursor: pointer;
    transition: all 0.5s;
}

.grapes-choose img {
    height: 24px;
    filter: var(--secondary-text-filter);
}

.toggle-button {
    display: flex;
    align-items: center;
    height: 40px;
    border-radius: 50px;
    background: var(--grey-color);
    color: var(--secondarty-text-color);
    font-size: 16px;
    border: none;
    outline: none;
    padding: 0 24px;
    line-height: 16px;
    margin: 0;
    font-weight: 500;
    cursor: pointer;
}

.toggle-button.active {
    background: var(--salad-color);
    color: var(--green-color);
}

.input-characteristics-table {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    gap: 16px;
}

.characteristic-item {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.characteristic-value {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 4px;
}



.wine-result-container {
    width: 100%;
    gap: 32px;
    display: flex;
    flex-direction: column;
}

.wine-result-row {
    display: flex;
    gap: 32px;
    width: 100%;
    justify-content: space-between;
}

.wine-result-item {
    display: flex;
    flex-direction: column;
    background: var(--background-color);
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 1;
    background-image: url(/resources/banners/banner_wine_result.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.red.wine-result-item{
    background-image: url(/resources/banners/banner_wine_result_b.png);
}

.wine-result-item-inner {
    display: flex;
    flex-direction: column;
    background: transparent;
    align-items: start;
    justify-content: end;
    width: 70%;
    aspect-ratio: 198 / 241;
    background-image: url(/resources/banners/banner_inner_wine_result_white.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.red .wine-result-item-inner{
    background-image: url(/resources/banners/banner_inner_wine_result_red.png);
}




.result-label {
    display: flex;
    max-width: 64%;
    flex-direction: column;
    position: relative;
    left: 20%;
    bottom: 20%;
}

.wine-result-item p , .wine-result-item h4 {
    font-size: 0.8em;
    font-weight: 400;
    color: var(--primary-text-color);
}

.wine-result-item p {
    color: var(--secondarty-text-color);
    font-weight: 300;
}

.characteristic-label {
    font-size: 18px;
    font-weight: 500;
    color: var(--secondarty-text-color);
}

.characteristic-header {
    font-size: 18px;
    text-align: end;
    font-weight: 500;
    color: var(--primary-text-color);
}
