/* Voice Command Button Styles - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-command-container {
    display: none; /* По умолчанию скрыт, показывается через медиа-запрос */
    width: 100%;
    padding: 20px 0;
    text-align: center;
    background: #fff;
}

.voice-button-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 320px;
    margin: 0 auto;
}

.voice-button::before  {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 80%;
    background: #00A2E2;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 10px rgba(1, 191, 255, 0.738);
    z-index: 1;
}

.voice-button::before {
    content: '';
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 80%;
    animation: pulse 2s infinite;
    z-index: -1;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.7;
    }
    50% {
        transform: scale(1.1);
        opacity: 0.3;
    }
    100% {
        transform: scale(1);
        opacity: 0.7;
    }
}

.voice-button:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(0, 132, 255, 0.796);
}

.voice-button:active {
    transform: scale(0.95);
}

.mic-icon {
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.voice-retry-button::before .mic-icon img {
    width: 100%;
    height: 100%;
}

.mic-icon img {
    width: 180%;
    height: 180%;
    object-fit: contain;
    filter: brightness(0) invert(1); /* Делаем иконку белой */
}

.voice-button-text {
    text-align: center;
}

.voice-button-text h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: 28px;
    color: #212121;
    margin: 50px 0 5px 0;
}

.voice-button-text p {
    font-size: 16px;
    line-height: 20px;
    color: #595959;
    margin: 0;
}

/* Voice Modal Styles - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-kit-modal {
    display: none;
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    background: #fff;
    overflow: hidden;
    z-index: 11;
    transition: right 0.3s ease;
}

.voice-kit-modal.active {
    display: block;
    right: 0;
}

.voice-kit-modal .modal-header {
    height: 55px;
    border-bottom: 2px solid transparent;
    background: url(/design/template2022/images/line3.png) no-repeat center bottom;
    background-size: 100% 2px;
    background-position: bottom;
    background-repeat: no-repeat;
}

.voice-kit-modal .modal-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
    padding: 0 15px;
}

.voice-back-btn {
    background: url(/design/template2022/images/arrow-back-mobile.svg) no-repeat left center;
    width: 20px;
    height: 16px;
    cursor: pointer;
}

.modal-title {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    color: #212121;
}

.modal-close {
    width: 24px;
    height: 24px;
    background: url(/design/template2022/images/modal-close.svg) no-repeat center center;
    background-size: contain;
}

.container-main {
    padding: 20px 5px;
    display: flex;
    flex-direction: column;
    height: 95%;
    margin-bottom: 50px !important; /* исправить здесь */
}

.voice-recognition-area {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden; /* Предотвращаем горизонтальный скролл */
    -webkit-overflow-scrolling: touch;
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box; /* Важно! */
    /* ИСПРАВЛЕНИЕ: Добавляем отступ снизу для фиксированной кнопки ТОЛЬКО на экране результатов */
    padding-bottom: 20px;
}

/* ИСПРАВЛЕНИЕ: Отступ только когда видно состояние результатов */
.voice-state.results:not(.hidden) {
    margin-bottom: 80px; /* Отступ под фиксированную кнопку */
}

.voice-state {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
}

.hidden {
    display: none;
}

.voice-title {
    font-weight: 600;
    font-size: 24px;
    line-height: 30px;
    color: #212121;
    width: 400px;
    margin: 80px 0 10px 0;
    text-align: center;
}

.voice-using-info {
    font-size: 12px;
    color:#9E9E9E;
    margin-bottom: 20px;
}

/* Начальное состояние с кнопкой "Начать" - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-start-button-wrapper {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: #F3F3F3;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 35px;
    margin-top: 20px;
}

.start-voice-button {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: #00A2E2;
    border: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.start-voice-button .mic-icon img {
    width: 100%;
    height: 100px;
}

.start-voice-button:hover {
    transform: scale(1.05);
}

.start-voice-button:active {
    transform: scale(0.95);
}

.start-voice-button span {
    color: white;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 5px;
}

.start-voice-button .mic-icon {
    width: 40px;
    height: 40px;
}

.voice-prompt {
    font-size: 16px;
    line-height: 24px;
    color: #595959;
    margin-bottom: 25px;
}

/* Блок с примерами команд - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-examples {
    width: 85%;
    background: #F7F7F7;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 20px;
    text-align: left;
}

.voice-examples-header {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.info-icon-blue {
    width: 24px;
    height: 24px;
    background: url(/design/template2022/images/info-black.svg) no-repeat center;
    background-size: contain;
    margin-right: 10px;
}

.voice-examples-header span {
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
}

.voice-examples-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.voice-examples-list li {
    font-size: 14px;
    line-height: 24px;
    color: #212121;
    margin-bottom: 8px;
    position: relative;
    padding-left: 15px;
}

.voice-examples-list li:before {
    content: '•';
    position: absolute;
    left: 0;
    color: #00A2E2;
}

/* Блок с инструкциями - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-instructions {
    width: 85%;
    background: #F7F7F7;
    border-radius: 10px;
    padding: 15px;
    text-align: left;
    margin-bottom: 20px;
}

.voice-state span p {
    margin: 20px;
    align-items: center;
    line-height: 1.5;
}

.voice-instructions-header {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.info-icon-red {
    width: 24px;
    height: 24px;
    background: url(/design/template2022/images/info-white.svg) no-repeat center;
    background-size: contain;
    margin-right: 10px;
}

.voice-instructions-header span {
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
}

.instructions-content {
    flex: 1;
}

.instructions-content p {
    font-size: 14px;
    line-height: 20px;
    color: #212121;
    margin: 0 0 8px 0;
}

.instructions-content p:last-child {
    margin-bottom: 0;
}

/* Состояние прослушивания с волнами и таймером - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-waves-container {
    width: 260px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 20px;
}

.voice-wave {
    width: 6px;
    height: 30px;
    background: #F32C2D;
    margin: 0 3px;
    border-radius: 3px;
    animation: sound 0.5s infinite alternate;
}

@keyframes sound {
    0% { height: 10px; }
    100% { height: 80px; }
}

.timer-display {
    font-size: 24px;
    font-weight: 600;
    color: #212121;
    margin-bottom: 15px;
}
.stop-voice-button {
    width: 60px;
    height: 60px;
    background: #F3F3F3;
    border: none;
    border-radius: 50%;
    margin-top: 15px;
    cursor: pointer;
    position: relative;
}

.stop-voice-button:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #F32C2D;
    border-radius: 2px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Состояние обработки с загрузкой и звездами - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.processing-animation {
    width: 100px;
    height: 100px;
    position: relative;
    margin: 0 auto 20px;
}

.loading-circle {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top: 3px solid #F32C2D;
    animation: spin 1.5s linear infinite;
    position: absolute;
    top: 0;
    left: 0;
}

.loading-stars {
    width: 60px;
    height: 60px;
    background: url(/design/template2022/images/stars.svg) no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.processing-text {
    font-size: 16px;
    line-height: 24px;
    color: #212121;
    margin-bottom: 5px;
}

.processing-subtext {
    font-size: 14px;
    line-height: 20px;
    color: #9E9E9E;
    margin-bottom: 20px;
}

/* Прогресс-бар для этапа обработки - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.progress-bar-container {
    width: 100%;
    max-width: 300px;
    height: 4px;
    background-color: #E0E0E0;
    border-radius: 2px;
    overflow: hidden;
    margin: 0 auto;
}

.progress-bar {
    width: 30%;
    height: 100%;
    background-color: #2196F3;
    border-radius: 2px;
}

@keyframes progress {
    0% { width: 0; }
    100% { width: 100%; }
}

/* Состояние результатов - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-results-icon {
    width: 60px;
    height: 60px;
    background: url(/design/template2022/images/icon-check.svg) no-repeat center;
    background-size: contain;
    margin-bottom: 20px;
}

.voice-results-list {
    width: 100%;
    max-height: 400px;
    overflow-y: auto;
    margin-top: 20px;
}

.voice-result-item {
    display: flex;
    align-items: center;
    padding: 15px;
    border-bottom: 1px solid #F3F3F3;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.voice-result-item:hover {
    background-color: #F7F7F7;
}

.voice-result-item:last-child {
    border-bottom: none;
}

.voice-result-img {
    width: 70px;
    height: 70px;
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F7F7F7;
    border-radius: 5px;
}

.voice-result-img img {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
}

.voice-result-info {
    flex: 1;
}

.voice-result-name {
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    color: #212121;
    margin-bottom: 5px;
}

.voice-result-price {
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
}

.voice-result-category {
    font-size: 14px;
    line-height: 20px;
    color: #9E9E9E;
}

/* Состояние ошибки - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-error-icon {
    width: 80px;
    height: 80px;
    background: url(/design/template2022/images/icon-wrong.svg) no-repeat center;
    background-size: contain;
    margin-bottom: 20px;
}

.voice-state p {
    color: #212121;
    font-size: 14px;
    text-align: center;
    line-height: 1.2;
}

.retry-button {
    background: #FFF659;
    border-radius: 5px;
    height: 40px;
    font-weight: 400;
    font-size: 14px;
    line-height: 40px;
    color: #212121;
    text-align: center;
    padding: 0 30px;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s ease;
    margin-top: 20px;
}

.retry-button:hover {
    background: #FFE900;
}

/* Подвал модального окна - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-kit-footer {
    background: #F3F3F3;
    padding: 15px 20px;
    position: absolute;
    bottom: 0;
    width: 100%;
    box-sizing: border-box;
}

.voice-tips {
    font-size: 14px;
    line-height: 20px;
    color: #595959;
    text-align: center;
    margin: 0;
}

/* Исправление скроллинга в модальном окне - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
body.overflow-y-hidden {
    overflow: hidden;
    position: fixed;
    width: 100%;
    height: 100%;
}

/* Стили для структуры с похожими товарами - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-state.results {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.voice-order-items, 
.voice-similar-products-container {
    flex-shrink: 0; /* Предотвращаем сжатие контейнеров */
}

/* Основная секция с синим фоном - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-state.results,
.voice-state.voice-cart {
    padding: 0;
    margin: 0;
}

.voice-state.results,
.voice-state.voice-cart {
    width: 100%;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

/* Заголовок блока результатов - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-header {
    display: flex;
    align-items: flex-start;
    border-bottom: none;
    justify-content: flex-start;
    width: 100%;
    text-align: left;
    width: 100%;
    box-sizing: border-box;
    padding: 15px;
}

.voice-order-alert-icon {
    width: 24px;
    height: 24px;
    background-image: url('/design/template2022/images/alert.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 20px;
    flex-shrink: 0;
}

.voice-order-header-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.voice-order-title {
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    text-transform: uppercase;
    color: #212121;
    margin-bottom: 5px;
    text-align: left;
    width: 100%;
}

.voice-order-description {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #212121;
}

/* Контейнер товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-items {
    background-color: #FFFFFF;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    max-width: 600px;
}

/* Элемент товара - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-item {
    margin-bottom: 40px;
    background-color: #FFFFFF;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.voice-order-item:last-child {
    margin-bottom: 0;
}

/* Блок "Вы сказали:" - ИСПРАВЛЕНИЕ: добавлены стили для стрелки */
.voice-order-said {
    display: flex;
    align-items: center;
    padding: 15px;
    background-color: #EFF6FF;
    justify-content: space-between;
    cursor: pointer;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}

.voice-order-said-content {
    display: flex;
    align-items: center;
    flex: 1;
}

.voice-order-said-label {
    color: #9E9E9E;
    font-size: 14px;
    line-height: 18px;
    margin-right: 5px;
    white-space: nowrap;
}

.voice-order-said-text {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #212121;
    overflow: hidden;
    text-overflow: ellipsis;
}

.voice-order-chevron {
    width: 24px;
    height: 24px;
    background-image: url('/design/template2022/images/chevron-down.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 14px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.voice-order-chevron.expanded {
    transform: rotate(180deg);
}

/* ИСПРАВЛЕНИЕ: Стрелки товаров - ТОЛЬКО для вариантов, НЕ для заголовка */
.voice-order-said .voice-product-arrow {
    display: none; /* УБИРАЕМ стрелку из заголовка "Уточнить" */
}

/* Блок выбранного варианта - убираем красный фон - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-selected {
    background-color: #FFFFFF;
    border-radius: 0;
}

/* Стиль для невыбранных вариантов - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-uncheked {
    background-color: #FFFFFF;
    border-radius: 0;
    border-top: 1px solid #F0F0F0;
}

/* Исправление стиля чекбокса - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ + АНИМАЦИЯ + НОВЫЕ СТИЛИ */
.voice-order-checkbox {
    min-width: 24px;
    min-height: 24px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #F32C2D;
    background-color: #FFFFFF;
    margin-right: 15px;
    position: relative;
    flex-shrink: 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease; /* ДОБАВЛЕНО: плавные переходы */
    cursor: pointer;
}

.voice-order-checkbox.checked {
    background-color: #F32C2D;
    border: none;
    position: relative;
}

.voice-order-checkbox.checked::after {
    content: '';
    display: block;
    width: 10px;
    height: 6px;
    border-left: 2px solid white;
    border-bottom: 2px solid white;
    transform: rotate(-45deg);
    position: absolute;
    top: 7px;
}

/* ДОБАВЛЕНО: Стили для неактивных чекбоксов */
.voice-order-checkbox.disabled {
    opacity: 0.3;
    cursor: not-allowed !important;
    pointer-events: none;
    border-color: #E0E0E0 !important;
    background-color: #F5F5F5 !important;
    transform: none !important;
    box-shadow: none !important;
}

.voice-order-checkbox.disabled:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: #E0E0E0 !important;
}

.voice-order-selected-text {
    font-size: 14px;
    line-height: 20px;
    color: #212121;
    flex: 1;
    text-align: left;
}

/* Блок похожих товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-similar {
    padding: 15px;
    background-color: #EFF6FF;
}

.voice-order-similar-title {
    font-size: 12px;
    line-height: 16px;
    color: #00A2E2;
    margin-bottom: 10px;
}

.voice-order-similar-item {
    display: flex;
    align-items: center;
    padding: 12px;
    border-radius: 6px;
    margin-bottom: 5px;
    background-color: #EFF6FF;
}

.voice-order-similar-item.selected {
    background-color: #FFFFFF;
}

.voice-order-similar-text {
    font-size: 12px;
    line-height: 16px;
    color: #212121;
}

/* ИСПРАВЛЕНИЕ: Возвращаем желтый цвет и правильное позиционирование для voice-order-actions */
.voice-order-actions {
    position: fixed !important;
    bottom: 0;
    left: 0;
    right: 0;
    background: #FFFFFF;
    z-index: 9999;
    padding: 15px; 
    width: 100%;
    box-sizing: border-box;
    display: none; /* По умолчанию скрыта */
}

/* Показываем кнопки только на экране результатов */
.voice-state.results:not(.hidden) .voice-order-actions {
    display: block;
}

.voice-order-actions .voice-order-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    height: 48px;
    border-radius: 6px;
    font-size: 14px;
    line-height: 20px;
    background-color: #FFF659 !important; /* ИСПРАВЛЕНИЕ: Принудительно желтый цвет */
    color: #212121 !important;
    border: none;
    cursor: pointer;
    margin: 0;
}

.voice-order-actions .voice-order-btn:hover {
    background-color: #FFE900 !important; /* ИСПРАВЛЕНИЕ: Желтый при наведении */
}

.voice-order-actions .voice-order-btn-plus {
    width: 20px;
    height: 20px;
    background-image: url('/design/template2022/images/plus.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 10px;
}

/* Дополнительный стиль для неотмеченных элементов - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-uncheked {
    display: flex;
    align-items: center;
    padding: 15px;
    background-color: #FFFFFF;
}

.voice-order-selected,
.voice-order-uncheked {
    display: flex;
    align-items: center;
    padding: 15px;
    width: 100%;
    box-sizing: border-box;
}

/* Стили для карточки корзины - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-items {
    margin-bottom: 15px;
    background-color: #FFFFFF;
    padding: 4px;
}

.voice-cart-item {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 15px;
    border-bottom: 1px solid #F3F3F3;
}

.voice-cart-item:last-child {
    margin-bottom: 0;
    border-bottom: none;
    width: 100%;
}

.voice-cart-item .cell-image {
    flex: 0 0 70px;
    margin-right: 15px;
}

.voice-cart-item .image-container {
    width: 100%;
    height: 100%;
}

.voice-cart-item .image {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 70px;
}

.voice-cart-item .image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.voice-cart-item .cell-name {
    flex: 1;
    min-width: 0;
}

.voice-cart-item .product-code {
    font-size: 12px;
    line-height: 16px;
    color: #9E9E9E;
    margin-bottom: 5px;
}

.voice-cart-item .cell-name a {
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    color: #212121;
    text-decoration: none;
    margin-bottom: 10px;
    display: block;
}

.voice-cart-item .cell-amount {
    display: flex;
    align-items: center;
    margin-left: auto;  
    margin-right: 0;
    margin-top: 15px;
    min-width: 120px;
    justify-content: flex-end;
}

.voice-cart-item .amount-container {
    position: relative;
    display: flex;
    align-items: center;
}

.voice-cart-item .amount {
    width: 40px;
    height: 30px;
    text-align: center;
    border-radius: 4px;
    padding: 0 15px;
    font-size: 14px;
}

.voice-cart-item .minus,
.voice-cart-item .plus {
    position: absolute;
    width: 15px;
    height: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #212121;
    font-weight: bold;
}

.voice-cart-item .minus {
    left: 5px;
}

.voice-cart-item .plus {
    right: 5px;
}

.voice-cart-item .purchase-units {
    margin-right: 30px;
    margin-left: 10px;
    font-size: 10px;
    color: #9E9E9E;
}

.voice-cart-item .cell-remove {
    width: 100%;
    text-align: right;
    margin: 20px;
}

.voice-cart-item .cell-remove a {
    font-size: 13px;
    line-height: 16px;
    color: #00A2E2;
    text-decoration: none;
    padding-right: 15px;
    justify-content: flex-end;
    margin-right: 20px;

}

/* ДОБАВЛЕНО: Информация о голосовых скидках в корзине */
.voice-discount-info {
    font-size: 11px;
    color: #F32C2D;
    font-weight: 500;
    margin-top: 2px;
    background: rgba(243, 44, 45, 0.1);
    padding: 2px 6px;
    border-radius: 3px;
    display: inline-block;
    margin-bottom: 10px;
}

/* Стили для блока с итоговой суммой - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-total {
    margin-bottom: 20px;
    width: 100%;
}

.voice-cart-total .total-block {
    background: #FFFFFF;
    border-radius: 5px;
    padding: 20px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.voice-cart-total .total-block_h {
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
    margin-bottom: 15px;
}

.voice-cart-total .total-block_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.voice-cart-total .total-block_row p {
    font-size: 14px;
    line-height: 20px;
    color: #595959;
    margin: 0;
}

.voice-cart-total .total-block_row strong {
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
}

/* Стили для кнопок действий корзины - ИСПРАВЛЕНИЕ: более специфичные селекторы */
.voice-cart-actions {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 20px; 
}

/* ИСПРАВЛЕНИЕ: Более специфичный селектор для белой кнопки "Назад" */
.voice-cart-actions .voice-back-to-list-btn,
.voice-cart-actions .voice-order-btn.voice-back-to-list-btn {
    background-color: #FFFFFF !important;
    border: 1px solid #E0E0E0 !important;
    color: #212121 !important;
    flex: 1;
    height: 48px;
    border-radius: 6px;
    font-size: 14px;
    margin-right: 7px; /* Отступ между кнопками */
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.voice-cart-actions .voice-back-to-list-btn:hover,
.voice-cart-actions .voice-order-btn.voice-back-to-list-btn:hover {
    background-color: #F5F5F5 !important;
    border-color: #D0D0D0 !important;
}

/* ИСПРАВЛЕНИЕ: Более специфичный селектор для желтой кнопки "Создать корзину" */
.voice-cart-actions .voice-create-cart-btn,
.voice-cart-actions .voice-order-btn.voice-create-cart-btn {
    background-color: #FFF659 !important;
    color: #212121 !important;
    border: none !important;
    flex: 1;
    height: 48px;
    border-radius: 6px;
    font-size: 14px;
    margin-left: 7px; /* Отступ между кнопками */
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.voice-cart-actions .voice-create-cart-btn:hover,
.voice-cart-actions .voice-order-btn.voice-create-cart-btn:hover {
    background-color: #FFE900 !important;
}

.total-current-price {
    font-weight: 700;
    font-size: 16px;
    line-height: 20px;
    color: #212121;
    margin-right: 10px;
}

.total-price-info {
    font-weight: 400;
    font-size: 13px;
    line-height: 20px;
    color: #595959;
}

/* Стилизация заголовка для списка товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-state.voice-cart .voice-order-header .voice-order-alert-icon {
    background-image: url('/design/template2022/images/red-stars-small.svg') !important;
}

.voice-state.voice-cart {
    text-transform: none;
}

/* Исправление горизонтальной прокрутки - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.container-main {
    overflow-x: hidden;
}

/* Выравнивание заголовка по левому краю - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-order-header {
    justify-content: center;
    text-align: left;

}

/* Центрирование инпута количества между кнопками - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-item .amount-container {
    display: flex;
    align-items: center;
}

.voice-cart-item .amount {
    text-align: center;
    margin: 0 auto;
}

/* Размещение кода товара возле изображения - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-item {
    position: relative;
    padding-top: 30px; /* Увеличиваем отступ сверху для кода товара */
    margin-bottom: 20px;
}

.voice-cart-item .product-code {
    position: absolute;
    top: 5px;
    font-size: 12px;
    line-height: 16px;
    color: #9E9E9E;


}

/* Улучшение позиционирования элементов - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-item .cell-image {
    margin-top: 5px; /* Небольшой отступ сверху для выравнивания с кодом */
}

/* Улучшение центрирования количества - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-item .amount-container {
    position: relative;
    display: flex;
    align-items: center;
    height: 50px;
    width: 100px;
}

.voice-cart-item .amount {
    width: 40px;
    height: 30px;
    text-align: center;
    border-radius: 4px;
    padding: 0 15px;
    font-size: 14px;
    margin: 0 auto; /* Центрирование */
}

.voice-state.voice-cart .voice-cart-item .purchase-amount-container input {
    width: 80px !important;
  }
.voice-cart-item .minus,
.voice-cart-item .plus {
    position: absolute;
    width: 15px;
    height: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #212121;
    font-weight: bold;
    z-index: 1;
}

.voice-cart-item .minus {
    left: 5px;
}

.voice-cart-item .plus {
    right: 5px;
}

/* Левое выравнивание заголовков товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-item .cell-name a {
    text-align: left;
    display: block;
    width: 60%;
}

/* Скрытие блока итога - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-total {
    display: none;
}

/* Скрытие примера в подвале на этапах списка и корзины - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-state.results:not(.hidden) ~ .voice-kit-footer,
.voice-state.voice-cart:not(.hidden) ~ .voice-kit-footer {
    display: none;
}

/* Отступ между кнопками в корзине - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-cart-actions {
    justify-content: space-between;
    gap: 15px;
}

.voice-back-to-list-btn,
.voice-create-cart-btn {
    flex: 1;
}

/* Стили для блока похожих товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-similar-products-container {
    width: 100%;
    max-width: 100%; /* Гарантируем, что ширина не превысит родителя */
    box-sizing: border-box !important; /* Важно! Включает padding и border в расчет ширины */
    overflow: hidden; /* Обрезаем содержимое, выходящее за границы */
    padding: 10px;
    max-width: 600px;
}

.voice-similar-list,
.voice-similar-group,
.voice-similar-group-header,
.voice-similar-group-items,
.voice-similar-item,
.voice-similar-show-more {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}


.voice-similar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0px;
    background: #EFF6FF;
    cursor: pointer;
    transition: background-color 0.2s;
    padding: 15px;
    box-sizing: border-box;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    border-bottom: 1px solid #E6E6E6;
}

.voice-similar-header:hover {
    background: #EFF6FF;

}

.voice-similar-title {
    font-size: 14px;
    line-height: 20px;
    color: #212121;
    display: flex;
    align-items: center;
}

.voice-similar-title::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url('/design/template2022/images/recommended.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 10px;
}

.voice-similar-toggle {
    display: flex;
    align-items: center;
    margin-right: 20px;

}

.voice-similar-count {
    font-size: 14px;
    color: #595959;
    background: #FFFFFF;
    border-radius: 15px;
    padding: 3px 10px;
    margin-right: 10px;
}

.voice-similar-chevron {
    width: 20px;
    height: 20px;
    background-image: url('/design/template2022/images/chevron-down.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 14px;
    transition: transform 0.3s;
}

.voice-similar-header.active .voice-similar-chevron {
    transform: rotate(180deg);
}

.voice-similar-list {
    max-height: none; /* Убираем ограничение высоты */
    overflow-y: visible; /* Убираем встроенный скролл */
}

.voice-similar-list,
.voice-similar-group-items {
    max-height: none !important;
    overflow: visible !important;
    padding: 0;

}

.voice-similar-item {
    display: flex;
    align-items: center;
    padding: 12px;
    background: #FFFFFF;
    transition: background-color 0.2s;
    border-top: 1px solid #E6E6E6;
}

.voice-similar-item:last-child {
    margin-bottom: 0;
}


.voice-similar-item-name {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    color: #212121;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.voice-similar-item-details {
    font-size: 12px;
    line-height: 16px;
    color: #9E9E9E;
}

.voice-similar-item-info {
    flex: 1;
    min-width: 0;
}



.voice-similar-group:last-child {
    border-bottom: none;
}

.voice-similar-group-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    background-color: #F8F8F8;
    cursor: pointer;
    transition: background-color 0.2s;
    padding: 12px 15px;
    box-sizing: border-box;
}

.voice-similar-group-header:hover {
    background-color: #F0F0F0;
}

.voice-similar-group-header.active {
    background-color: #FFDDDE;
}

.voice-similar-group-header.all-products {
    background-color: #F3F3F3;
    border-top: 1px solid #E0E0E0;
}

.voice-similar-group-header.all-products.active {
    background-color: #F32C2D10; /* Светло-красный фон для активной группы */
}

.voice-similar-group-header.other-products {
    background-color: #F7F7F7;
}

.voice-similar-group-header.other-products.active {
    background-color: #F0F0F0;
}

.voice-similar-group-title {
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
    color: #212121;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    /* Разрешаем перенос длинных слов */
    word-wrap: break-word;
    /* Ограничиваем высоту двумя строками */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    max-height: 36px;
}

.voice-similar-group-info {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: 10px;
}

.voice-similar-group-count {
    font-size: 12px;
    color: #9E9E9E;
    background: #FFFFFF;
    border-radius: 15px;
    padding: 2px 8px;
    margin-right: 10px;
    white-space: nowrap;
}

.voice-similar-group-toggle {
    width: 20px;
    height: 20px;
    background-image: url('/design/template2022/images/chevron-down.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 14px;
    transition: transform 0.3s;
}

.voice-similar-group-header.active .voice-similar-group-toggle {
    transform: rotate(180deg);
}


.voice-similar-show-more {
    padding: 12px 15px;
    text-align: center;
    background-color: #F9F9F9;
    position: relative;
    z-index: 4;
}

.voice-similar-show-more-btn {
    display: inline-block;
    padding: 8px 15px;
    background-color: #FFFFFF;
    border: 1px solid #F32C2D20;
    border-radius: 4px;
    font-size: 13px;
    color: #F32C2D;
    cursor: pointer;
    transition: all 0.2s;
}

.voice-kit-modal .container-main {
    height: calc(100vh - 55px);
    padding: 10px 0;
    display: flex;
    flex-direction: column;
    overflow: auto;
    margin-bottom: 0 !important;
    width: 100%;
    box-sizing: border-box;
}


.voice-similar-show-more-btn:hover {
    background-color: #F32C2D10;
    border-color: #F32C2D;
}

.voice-similar-show-more-btn:active {
    background-color: #F32C2D20;
    transform: translateY(1px);
}

/* Перезаписываем стили для согласованности - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-similar-header {
    background-color: #EFF6FF;
    padding: 15px;
}

.voice-similar-title {
    display: flex;
    align-items: center;
    font-weight: 500;
}

.voice-similar-list {
    max-height: 300px;
    overflow-y: auto;
    background-color: #FFFFFF;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.voice-similar-item {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    border-top: 1px solid #F0F0F0;
    transition: background-color 0.2s;
    padding: 12px 15px;
    box-sizing: border-box;
    
}


.voice-similar-item:first-child {
    border-top: none;
}

.voice-similar-item:hover {
    background-color: #F9F9F9;
}

/* Индикатор отсутствия похожих товаров - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-similar-empty {
    padding: 15px;
    font-size: 14px;
    color: #9E9E9E;
    text-align: center;
}

/* Добавьте эти стили в ваш CSS файл - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */

/* Состояние загрузки/подготовки микрофона - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-state.loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 80vh; /* Занимает большую часть высоты видимой области */
    margin-top: auto;
    transform: translateY(-60px); /* Сдвиг содержимого вверх на 60px */
    margin-bottom: auto; /* Автоматические отступы сверху и снизу для центрирования */
}

.loading-animation {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 20px auto;
}

.loading-circle {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid #f0f0f0;
    border-top-color: #FFF659; /* Желтый цвет для соответствия бренду */
    animation: spin 1.2s linear infinite;
}

.loading-pulse {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background-image: url('/design/template2022/images/mic.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    animation: pulse 1.5s ease infinite;
}

.loading-text {
    font-size: 18px;
    font-weight: 500;
    margin: 10px 0;
    color: #333;
}

.loading-device-text {
    font-size: 16px;
    color: #666;
    margin-top: 5px;
}

.loading-progress {
    width: 80%;
    max-width: 300px;
    margin: 15px auto;
}


/* Анимации - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes pulse {
    0% { transform: translate(-50%, -50%) scale(0.9); opacity: 0.7; }
    50% { transform: translate(-50%, -50%) scale(1); opacity: 1; }
    100% { transform: translate(-50%, -50%) scale(0.9); opacity: 0.7; }
}

/* Стили для контейнера кнопки повтора запроса - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-retry-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 100px;
    margin-bottom: 30px;
    gap: 20px;
}

/* Подключаем уже имеющиеся стили для круглой кнопки и иконки микрофона - ОРИГИНАЛ БЕЗ ИЗМЕНЕНИЙ */
.voice-retry-button {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #00A2E2;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 10px rgb(255, 255, 255);
}

.voice-retry-button::before {
    content: '';
    position: absolute;
    border-radius: 50%;
    background: rgba(0, 178, 255, 0.2);
    animation: pulse 2s infinite;
    z-index: -1;
}

.voice-retry-button:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(243, 44, 45, 0.4);
}

.voice-retry-button:active {
    transform: scale(0.95);
}

/* ========================================================================
   НОВЫЕ СТИЛИ ДЛЯ ИНТЕГРИРОВАННОГО ДИЗАЙНА И СКИДОК
   ======================================================================== */

/* Новые варианты товаров */
.voice-order-variants {
    display: none;
    background-color: #FFFFFF;
}

.voice-order-variants.expanded {
    display: block;
}

.voice-order-variant {
    display: flex;
    align-items: flex-start;
    padding: 15px;
    background-color: #FFFFFF;
    border-bottom: 1px solid #F0F0F0;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    box-sizing: border-box;
    position: relative;
}

.voice-order-variant:hover {
    background-color: #FAFAFA;
    /* Тонкая тень слева для указания на область чекбокса */
    box-shadow: inset 3px 0 0 rgba(243, 44, 45, 0.3);
}

.voice-order-variant:last-child {
    border-bottom: none;
}

/* ДОБАВЛЕНО: Стили для товаров без остатка */
.voice-order-variant.out-of-stock {
    opacity: 0.6;
    cursor: default !important;
    background-color: #FAFAFA;
}

.voice-order-variant.out-of-stock:hover {
    background-color: #FAFAFA !important;
    box-shadow: none !important;
}

.voice-order-variant.out-of-stock .voice-product-info {
    opacity: 0.7;
}

.voice-order-variant.out-of-stock .voice-product-name {
    color: #999 !important;
}

.voice-order-variant.out-of-stock .voice-product-details {
    color: #BBB !important;
}

/* ДОБАВЛЕНО: Индикатор области чекбокса при ховере */
.voice-order-variant:hover .voice-order-checkbox {
    border-color: #F32C2D;
    box-shadow: 0 0 0 2px rgba(243, 44, 45, 0.1);
    transform: scale(1.05);
}

/* ДОБАВЛЕНО: Разделительная линия между областями */
.voice-order-variant::after {
    content: '';
    position: absolute;
    right: 50px; /* Позиция разделителя */
    top: 20%;
    bottom: 20%;
    width: 1px;
    background: linear-gradient(to bottom, transparent, #E0E0E0 20%, #E0E0E0 80%, transparent);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.voice-order-variant:hover::after {
    opacity: 0.7;
}

/* УЛУЧШЕНО: Стрелки для вариантов товаров - понятная область клика */
.voice-order-variant .voice-product-arrow {
    position: absolute;
    right: 8px; /* Небольшой отступ от края */
    top: 40%;
    transform: translateY(-50%);
    width: 32px; /* Увеличиваем область клика */
    height: 32px;
    background-image: url('/design/template2022/images/voice-arrow.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    cursor: pointer;
    z-index: 15;
    transition: all 0.2s ease;
    
    /* Визуальное выделение области */
    border: 1px solid #E0E0E0;
    border-radius: 6px;
    background-color: #FAFAFA;
    
    /* Тень для объема */
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.voice-order-variant .voice-product-arrow:hover {
    background-color: #F0F8FF;
    border-color: #00A2E2;
    box-shadow: 0 2px 4px rgba(0, 162, 226, 0.15);
    transform: translateY(-50%) scale(1.05);
}

.voice-order-variant .voice-product-arrow:active {
    transform: translateY(-50%) scale(0.95);
    background-color: #E6F3FF;
}

/* Добавляем подсказку при ховере */
.voice-order-variant .voice-product-arrow::after {
    content: 'Открыть товар';
    position: absolute;
    top: -28px;
    right: -20px;
    padding: 4px 8px;
    background: rgba(33, 33, 33, 0.9);
    color: white;
    font-size: 11px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.2s ease;
    pointer-events: none;
    z-index: 20;
}

.voice-order-variant .voice-product-arrow:hover::after {
    opacity: 1;
}

/* Информация о товаре */
.voice-product-info {
    flex: 1;
    min-width: 0;
    margin-right: 50px; /* УВЕЛИЧЕНО: отступ для новой области стрелки */
}

.voice-product-name {
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
    color: #212121;
    margin-bottom: 4px;
}

.voice-product-details {
    font-size: 12px;
    line-height: 16px;
    color: #9E9E9E;
    margin-bottom: 8px;
}

/* ИСПРАВЛЕНО: Блок остатков и скидок - выравнивание по центру */
.voice-product-meta {
    display: flex;
    gap: 25px;
    justify-content: space-between;
    margin-top: 8px;
    min-height: 20px; /* Минимальная высота для стабильности */
}

/* Фикс специально для Safari */
.stock-quantity,
.stock-location {
    -webkit-text-size-adjust: 100%; /* Отключаем авто-zoom */
    -webkit-font-smoothing: antialiased; /* Единообразный рендеринг */
}

/* Форсируем правильное отображение */
.voice-product-stock {
    display: -webkit-flex; /* Префикс для старых iOS */
    display: flex;
    white-space: nowrap;
    min-width: 0; /* Сброс для Safari */
    flex-shrink: 0;
}

/* Хак для iOS Safari */
@supports (-webkit-touch-callout: none) {
    .stock-quantity {
        letter-spacing: 0.01em; /* Микро-промежуток */
        font-variant-numeric: tabular-nums; /* Моноширинные цифры */
    }
}

.voice-product-stock {
    display: -webkit-inline-flex;
    align-items: center;
    font-size: 12px;
    color: #595959;
    height: 20px; /* Фиксированная высота */
}

.stock-quantity {
    margin-right: 8px;
    font-weight: 500;
    line-height: 1;
}



/* СИСТЕМА ИНДИКАТОРОВ ОСТАТКОВ (6 полосок) */
.stock-indicators {
    display: flex;
    align-items: center;
    margin: 0 6px;
    height: 12px; /* Фиксированная высота */
}

.stock-indicators ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 1px;
    align-items: center;
}

.stock-indicators li {
    width: 4px;
    height: 12px;
    background: #E0E0E0;
    border-radius: 1px;
}

.stock-indicators li.red { 
    background: #F32C2D; 
}

.stock-indicators li.orange { 
    background: #FFA500; 
}

.stock-indicators li.green { 
    background: #4CAF50; 
}

/* ДОБАВЛЕНО: Серые полоски для товаров без остатка */
.stock-indicators li.gray { 
    background: #bdc3c7; 
}

.stock-location {
    font-size: 11px;
    color: #9E9E9E;
    margin-left: 4px;
    font-style: italic;
    line-height: 1;
}

/* ИСПРАВЛЕНО: Цены и скидки - выравнивание по центру с остатками */
.voice-product-pricing {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    height: 20px; /* Фиксированная высота, как у остатков */
}

/* ИСПРАВЛЕНО: Бейдж скидки - должен быть слева от цены */
.discount-badge {
    background: #F32C2D;
    color: white;
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    order: 1; /* Сначала бейдж */
}

/* ИСПРАВЛЕНО: Цены */
.price-group {
    display: flex;
    align-items: center;
    gap: 4px;
    order: 2; /* Потом цены */
}

/* ДОБАВЛЕНО: Скрытие нулевых цен */
.price-group .current-price:empty,
.price-group .old-price:empty {
    display: none;
}

.voice-product-pricing:has(.current-price:empty) {
    display: none;
}

.old-price {
    text-decoration: line-through;
    color: #9E9E9E;
    font-size: 12px;
    display: inline-flex;
    align-items: baseline;
}

/* ИСПРАВЛЕНО: Цвет цены и рубля #F32C2D */
.current-price {
    font-weight: 600;
    color: #F32C2D; /* ИСПРАВЛЕНО: красный цвет */
    font-size: 14px;
    display: inline-flex;
    align-items: baseline;
}

/* ========================================================================
   ИСПРАВЛЕНО: СТИЛИ ДЛЯ SVG ИКОНКИ РУБЛЯ (КАК ИНДИКАТОР ЦЕНЫ)
   ======================================================================== */

/* Базовые стили для SVG иконки рубля */
.voice-kit-modal .ruble-icon {
    display: inline-block;
    width: 11px;
    height: 13px;
    margin-left: 1px;
    vertical-align: top;
    position: relative;
    top: -3px; /* ИСПРАВЛЕНО: поднимаем выше как индикатор (как m²) */
    fill: currentColor;
    flex-shrink: 0;
}

/* Стили для текущей цены с рублем */
.voice-kit-modal .current-price {
    display: inline-flex;
    align-items: baseline;
    font-weight: 600;
    color: #F32C2D;
    font-size: 14px;
    line-height: 1;
}

.voice-kit-modal .current-price .ruble-icon {
    top: -4px; /* ИСПРАВЛЕНО: для текущей цены поднимаем еще выше */
    margin-left: 2px;
    fill: #F32C2D;
    width: 10px;
    height: 12px;
}

/* Стили для старой цены с рублем */
.voice-kit-modal .old-price {
    display: inline-flex;
    align-items: baseline;
    text-decoration: line-through;
    color: #999;
    font-size: 12px;
    margin-right: 6px;
    opacity: 0.8;
    line-height: 1;
}

.voice-kit-modal .old-price .ruble-icon {
    top: -3px; /* ИСПРАВЛЕНО: для старой цены тоже поднимаем */
    margin-left: 1px;
    width: 9px;
    height: 11px;
    fill: #999;
}

/* Стили для корзины товаров */
.voice-kit-modal .total-current-price {
    font-weight: 600;
    color: #333;
    font-size: 16px;
    display: inline-flex;
    align-items: baseline;
}

.voice-kit-modal .total-current-price .ruble-icon {
    top: -2px;
    margin-left: 3px;
    fill: #333;
}

.voice-kit-modal .total-price-info {
    color: #666;
    font-size: 14px;
    margin-top: 2px;
}

.voice-kit-modal .total-price-info .ruble-icon {
    top: -1px;
    margin-left: 2px;
    width: 10px;
    height: 12px;
    fill: #666;
}

/* Стили для итоговой суммы корзины */
.voice-kit-modal #voice-cart-total {
    font-weight: 700;
    font-size: 18px;
    color: #333;
    display: inline-flex;
    align-items: baseline;
}

.voice-kit-modal #voice-cart-total .ruble-icon {
    top: -2px;
    margin-left: 4px;
    width: 14px;
    height: 16px; /* Больше для итоговой суммы */
    fill: #333;
}



/* Интерактивность для новых элементов */
.voice-order-item.expanded .voice-order-chevron {
    transform: rotate(180deg);
}

.voice-order-item.expanded .voice-order-variants {
    display: block;
}

/* Обновление стилей "Уточнить" для нового дизайна */
.voice-order-said-content {
    display: flex;
    align-items: center;
    flex: 1;
}

.voice-order-chevron.expanded {
    transform: rotate(180deg);
}

/* ========================================================================
   ИСПРАВЛЕНИЯ ДЛЯ ГОЛОСОВОГО ЗАКАЗА - НОВЫЕ СТИЛИ
   ======================================================================== */

/* 1. СТИЛИ ДЛЯ НЕДОСТУПНЫХ ТОВАРОВ БЕЗ ЦЕНЫ */
.voice-product-pricing .price-unavailable {
    font-size: 12px;
    color: #9E9E9E;
    font-style: italic;
    padding: 2px 6px;
    background: rgba(158, 158, 158, 0.1);
    border-radius: 3px;
    white-space: nowrap;
}

/* 3. СТИЛИ ДЛЯ НЕДОСТУПНЫХ ВАРИАНТОВ ТОВАРОВ */
.voice-order-variant.out-of-stock {
    opacity: 0.6;
    cursor: default !important;
    background-color: #FAFAFA;
}

.voice-order-variant.out-of-stock:hover {
    background-color: #FAFAFA !important;
    box-shadow: none !important;
}

.voice-order-variant.out-of-stock .voice-product-info {
    opacity: 0.7;
}

.voice-order-variant.out-of-stock .voice-product-name {
    color: #999 !important;
}

.voice-order-variant.out-of-stock .voice-product-details {
    color: #BBB !important;
}

/* 4. ПРЕДУПРЕЖДЕНИЕ О НЕДОСТУПНОСТИ ВСЕХ ТОВАРОВ */
.voice-no-stock-warning {
    background: linear-gradient(135deg, #FFF3CD 0%, #FCF4D6 100%);
    border: 1px solid #F1C40F;
    border-radius: 8px;
    padding: 20px;
    margin: 15px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(241, 196, 15, 0.1);
}

.voice-no-stock-warning .warning-icon {
    font-size: 32px;
    margin-bottom: 10px;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}

.voice-no-stock-warning .warning-text {
    font-weight: 600;
    font-size: 16px;
    color: #856404;
    margin-bottom: 5px;
    line-height: 1.3;
}

.voice-no-stock-warning .warning-subtext {
    font-size: 14px;
    color: #856404;
    opacity: 0.8;
    line-height: 1.4;
}

/* 5. УЛУЧШЕННЫЕ СТИЛИ ДЛЯ ИНФОРМАЦИИ О ДОСТУПНОСТИ */
.availability-info {
    font-size: 13px;
    margin-top: 4px;
    line-height: 1.3;
}

.availability-info .available-count {
    color: #4CAF50;
    font-weight: 600;
}

.availability-info .unavailable-count {
    color: #F44336;
    font-weight: 500;
}

.availability-info .no-stock {
    color: #F44336;
    font-weight: 600;
}

/* 6. СКРЫТИЕ ПУСТЫХ ЦЕНЫ И СКИДОК */
.voice-product-pricing:empty {
    display: none;
}

.voice-product-pricing .price-group:empty {
    display: none;
}

.voice-product-pricing .discount-badge:empty {
    display: none;
}

.voice-product-pricing .current-price:empty {
    display: none;
}

.voice-product-pricing .old-price:empty {
    display: none;
}

/* Скрываем весь блок цен если нет валидных цен */
.voice-product-pricing:has(.current-price:empty, .old-price:empty) {
    display: none;
}

/* 7. УЛУЧШЕННЫЕ СТИЛИ ДЛЯ СТРЕЛОК У НЕДОСТУПНЫХ ТОВАРОВ */
.voice-order-variant.out-of-stock .voice-product-arrow {
    opacity: 0.4;
    cursor: default;
    background-color: #F0F0F0 !important;
    border-color: #D0D0D0 !important;
    pointer-events: none;
}

.voice-order-variant.out-of-stock .voice-product-arrow:hover {
    transform: translateY(-50%) !important;
    background-color: #F0F0F0 !important;
    border-color: #D0D0D0 !important;
    box-shadow: none !important;
}

/* 8. АНИМАЦИЯ ДЛЯ НЕДОСТУПНЫХ ТОВАРОВ */
.voice-order-variant.out-of-stock {
    transition: all 0.3s ease;
    position: relative;
}

.voice-order-variant.out-of-stock::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: repeating-linear-gradient(
        45deg,
        transparent,
        transparent 10px,
        rgba(224, 224, 224, 0.1) 10px,
        rgba(224, 224, 224, 0.1) 20px
    );
    pointer-events: none;
    border-radius: inherit;
}

/* ========================================================================
   НОВЫЕ СТИЛИ ДЛЯ ОГРАНИЧЕНИЯ ОТОБРАЖЕНИЯ ВАРИАНТОВ ТОВАРОВ
   ======================================================================== */

/* 1. СКРЫТЫЕ ВАРИАНТЫ ТОВАРОВ */
.voice-variant-hidden {
    display: none !important;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}

.voice-variant-visible {
    display: flex !important;
    opacity: 1;
    max-height: 200px;
    transition: all 0.3s ease-in-out;
    animation: slideDown 0.3s ease-in-out;
}

/* 2. СКРЫТЫЕ ПОХОЖИЕ ТОВАРЫ */
.voice-similar-hidden {
    display: none !important;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}

.voice-similar-visible {
    display: flex !important;
    opacity: 1;
    max-height: 100px;
    transition: all 0.3s ease-in-out;
    animation: slideDown 0.3s ease-in-out;
}

/* 2.1. НОВОЕ: СКРЫТЫЕ ГРУППЫ ТОВАРОВ */
.voice-similar-group-hidden {
    display: none !important;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}

.voice-similar-group-visible {
    display: block !important;
    opacity: 1;
    max-height: none;
    transition: all 0.3s ease-in-out;
    animation: slideDown 0.3s ease-in-out;
}

/* 3. АНИМАЦИИ */
@keyframes slideDown {
    from {
        opacity: 0;
        max-height: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        max-height: 200px;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* 4. КНОПКА "ПОКАЗАТЬ ЕЩЕ ВАРИАНТЫ" (для вариантов товаров) */
.voice-show-more-variants {
    display: flex;
    justify-content: center;
    padding: 12px 15px;
    background-color: #F8F8F8;
    border-top: 1px solid #E6E6E6;
    width: 100%;
    box-sizing: border-box;
}

.voice-show-more-variants-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    background-color: #FFFFFF;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    min-height: 32px;
}

.voice-show-more-variants-btn:hover {
    background-color: #F9FAFB;
    border-color: #9CA3AF;
    color: #1F2937;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

.voice-show-more-variants-btn:active {
    background-color: #F3F4F6;
    border-color: #6B7280;
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.voice-show-more-variants-btn:focus {
    outline: none;
    border-color: #6B7280;
    box-shadow: 0 0 0 3px rgba(107, 114, 128, 0.1);
}

/* 5. ГЛОБАЛЬНАЯ КНОПКА "ПОКАЗАТЬ ВСЕ ТОВАРЫ" (для блока "Может пригодиться") */
.voice-similar-global-show-more {
    display: flex;
    justify-content: center;
    padding: 15px;
    background-color: #F9FAFB;
    border-top: 1px solid #E5E7EB;
    margin-top: 10px;
    width: 100%;
    box-sizing: border-box;
}

.voice-similar-global-show-more-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    background-color: #FFFFFF;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    min-height: 40px;
    position: relative;
}

.voice-similar-global-show-more-btn::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23374151'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0.7;
}

.voice-similar-global-show-more-btn:hover {
    background-color: #F9FAFB;
    border-color: #9CA3AF;
    color: #1F2937;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.voice-similar-global-show-more-btn:hover::before {
    opacity: 1;
}

.voice-similar-global-show-more-btn:active {
    background-color: #F3F4F6;
    border-color: #6B7280;
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.voice-similar-global-show-more-btn:focus {
    outline: none;
    border-color: #6B7280;
    box-shadow: 0 0 0 3px rgba(107, 114, 128, 0.1);
}

/* 6. УЛУЧШЕНИЯ ДЛЯ АДАПТИВНОСТИ */
@media (max-width: 768px) {
    .voice-show-more-variants {
        padding: 10px 12px;
    }
    
    .voice-show-more-variants-btn {
        padding: 6px 12px;
        font-size: 12px;
        min-height: 28px;
    }
    
    .voice-similar-global-show-more {
        padding: 12px;
    }
    
    .voice-similar-global-show-more-btn {
        padding: 8px 16px;
        font-size: 13px;
        min-height: 36px;
    }
    
    .voice-similar-global-show-more-btn::before {
        width: 14px;
        height: 14px;
        left: 10px;
    }
}

@media (max-width: 480px) {
    .voice-show-more-variants-btn {
        padding: 5px 10px;
        font-size: 11px;
        min-height: 26px;
    }
    
    .voice-similar-global-show-more-btn {
        padding: 7px 14px;
        font-size: 12px;
        min-height: 32px;
    }
    
    .voice-similar-global-show-more-btn::before {
        width: 12px;
        height: 12px;
        left: 8px;
    }
}

/* 7. СОСТОЯНИЯ ЗАГРУЗКИ И АНИМАЦИИ */
.voice-show-more-variants-btn.loading,
.voice-similar-global-show-more-btn.loading {
    opacity: 0.7;
    cursor: not-allowed;
    pointer-events: none;
}

.voice-show-more-variants-btn.loading::after,
.voice-similar-global-show-more-btn.loading::after {
    content: '';
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    border: 2px solid #D1D5DB;
    border-top-color: #6B7280;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

/* 8. УЛУЧШЕНИЯ ДЛЯ ТЕМНОЙ ТЕМЫ (если потребуется) */
@media (prefers-color-scheme: dark) {
    .voice-show-more-variants {
        background-color: #1F2937;
        border-top-color: #374151;
    }
    
    .voice-show-more-variants-btn {
        background-color: #374151;
        border-color: #4B5563;
        color: #F9FAFB;
    }
    
    .voice-show-more-variants-btn:hover {
        background-color: #4B5563;
        border-color: #6B7280;
        color: #FFFFFF;
    }
    
    .voice-similar-global-show-more {
        background-color: #1F2937;
        border-top-color: #374151;
    }
    
    .voice-similar-global-show-more-btn {
        background-color: #374151;
        border-color: #4B5563;
        color: #F9FAFB;
    }
    
    .voice-similar-global-show-more-btn:hover {
        background-color: #4B5563;
        border-color: #6B7280;
        color: #FFFFFF;
    }
    
    .voice-similar-global-show-more-btn::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23F9FAFB'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
    }
}

/* 9. ПЛАВНЫЕ ПЕРЕХОДЫ ДЛЯ ВСЕХ ЭЛЕМЕНТОВ */
.voice-order-variant,
.voice-similar-item {
    transition: all 0.2s ease-in-out;
}

.voice-order-variants {
    transition: max-height 0.3s ease-in-out;
}

/* 10. ИСПРАВЛЕНИЯ ДЛЯ ПРАВИЛЬНОЙ РАБОТЫ АНИМАЦИЙ */
.voice-variant-hidden {
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border: none !important;
}

.voice-similar-hidden {
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border: none !important;
}

.voice-similar-group-hidden {
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border: none !important;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .voice-kit-modal .current-price {
        font-size: 13px;
    }
    
    .voice-kit-modal .current-price .ruble-icon {
        width: 9px;
        height: 11px;
        top: -3px; /* ИСПРАВЛЕНО: поднимаем как индикатор */
    }
    
    .voice-kit-modal .old-price {
        font-size: 11px;
    }
    
    .voice-kit-modal .old-price .ruble-icon {
        width: 8px;
        height: 10px;
        top: -2px; /* ИСПРАВЛЕНО: поднимаем */
    }
    
    .voice-kit-modal #voice-cart-total {
        font-size: 17px;
    }
    
    .voice-kit-modal #voice-cart-total .ruble-icon {
        width: 13px;
        height: 15px;
        top: -3px; /* ИСПРАВЛЕНО: поднимаем */
    }
    
    .discount-badge {
        font-size: 10px;
        padding: 1px 5px;
    }
    
    /* ИСПРАВЛЕНО: Мобильная адаптация для новых элементов - НЕ меняем структуру */
    .voice-product-meta {
        min-height: 18px; /* Уменьшаем для мобильных */
    }
    
    .voice-product-stock,
    .voice-product-pricing {
        height: 18px; /* Уменьшаем для мобильных */
    }
    
    /* ИСПРАВЛЕНО: Стрелки на мобильных - поднимаем еще выше */
    .voice-product-arrow,
    .voice-order-variant .voice-product-arrow {
        width: 18px;
        height: 18px;
        right: 12px;
        top: 35%; /* ИСПРАВЛЕНО: поднимаем на мобильных */
        background-size: 14px 14px;
    }

    /* 9. МОБИЛЬНАЯ АДАПТАЦИЯ ДЛЯ НОВЫХ ЭЛЕМЕНТОВ */
    .voice-no-stock-warning {
        margin: 10px;
        padding: 15px;
    }

    .voice-no-stock-warning .warning-icon {
        font-size: 28px;
        margin-bottom: 8px;
    }

    .voice-no-stock-warning .warning-text {
        font-size: 14px;
    }

    .voice-no-stock-warning .warning-subtext {
        font-size: 12px;
    }

    .availability-info {
        font-size: 12px;
    }
}

/* Media Queries - ОРИГИНАЛ + ДОПОЛНЕНИЯ */
@media(max-width: 767px) {
    .voice-command-container {
        display: block;
        margin: 150px auto;
    }

    .voice-start-button-wrapper {
        width: 150px;
        height: 150px;
    }

    .start-voice-button {
        width: 120px;
        height: 120px;
    }

    .voice-button {
        position: relative;
        border-radius: 80%;
        background: #00A2E2;
        border: none;
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        box-shadow: 0 2px 10px rgba(1, 191, 255, 0.738);
        margin-bottom: 30px;
        z-index: 1;
    }

    .voice-cart-actions {
        max-width: 100%;
        gap: 10px;
    }
    
    .voice-order-btn {
        width: 100%;
    }
    
    .voice-cart-item .cell-amount {
        margin-top: 15px;
    }
    
    .voice-retry-button {
        width: 70px;
        height: 70px;
    }
    
    .voice-retry-container .voice-button-text p {
        font-size: 14px;
        line-height: 18px;
    }

    .voice-recognition-area {
        padding-bottom: 70px;
    }

    /* ОБНОВЛЕНО: Мобильные стили для улучшенных стрелок */
    .voice-product-arrow,
    .voice-order-variant .voice-product-arrow {
        width: 28px; /* Увеличенная область для мобильных */
        height: 28px;
        right: 6px;
        top: 35%;
        background-size: 14px 14px;
        border-radius: 4px; /* Меньший радиус для мобильных */
    }
    
    .voice-order-variant::after {
        right: 50px; /* УВЕЛИЧЕНО: больше воздуха на планшетах */
    }

    .voice-product-info {
        margin-right: 55px; /* УВЕЛИЧЕНО: обновляем отступ */
    }
}

@media(max-width: 480px) {
    .voice-button {
        position: relative;
        border-radius: 80%;
        background: #00A2E2;
        border: none;
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        box-shadow: 0 2px 10px rgba(1, 191, 255, 0.738);
        margin-bottom: 30px;
        z-index: 1;
    }
    
    .mic-icon {
        width: 28px;
        height: 28px;
    }
    
    .voice-button-text h3 {
        font-size: 18px;
        line-height: 24px;
    }
    
    .voice-button-text p {
        font-size: 14px;
        line-height: 18px;
    }
    
    .voice-title {
        font-size: 20px;
        line-height: 26px;
    }

    .voice-start-button-wrapper {
        width: 160px;
        height: 160px;
    }

    .start-voice-button {
        width: 110px;
        height: 110px;
    }

    .voice-examples, 
    .voice-instructions {
        padding: 12px;
    }

    .info-icon-blue,
    .info-icon-red {
        width: 20px;
        height: 20px;
    }

    .voice-similar-title {
        font-size: 14px;
    }
    
    .voice-similar-count {
        font-size: 12px;
        padding: 2px 8px;
    }
    
    .voice-similar-item {
        padding: 12px 15px;
    }
    
    .voice-similar-item-name {
        font-size: 13px;
    }
    
    .voice-similar-item-details {
        font-size: 11px;
    }

    .voice-similar-group-header {
        padding: 10px 12px;
    }
    
    .voice-similar-group-title {
        font-size: 13px;
    }
    
    .voice-similar-group-count {
        font-size: 11px;
        padding: 1px 6px;
    }
    
    .voice-similar-show-more-btn {
        padding: 5px 10px;
        font-size: 12px;
    }

    .voice-order-said {
        padding: 12px;
    }
    
    .voice-order-variant {
        padding: 12px;
    }
    
    .voice-order-checkbox {
        min-width: 18px;
        min-height: 18px;
        width: 18px;
        height: 18px;
    }
    
    .voice-order-checkbox.checked::after {
        width: 7px;
        height: 5px;
        top: 4px;
        left: 3px;
    }

    /* ОБНОВЛЕНО: Дополнительные мобильные исправления для улучшенных стрелок */
    .voice-product-arrow,
    .voice-order-variant .voice-product-arrow {
        width: 24px; /* Компактная область для маленьких экранов */
        height: 24px;
        right: 4px;
        top: 30%;
        background-size: 12px 12px;
        border-radius: 3px;
    }
    
    .voice-order-variant::after {
        right: 45px; /* УВЕЛИЧЕНО: больше воздуха на маленьких экранах */
    }

    .voice-product-info {
        margin-right: 50px; /* УВЕЛИЧЕНО: больше отступ */
    }
    
    /* Убираем подсказку на маленьких экранах */
    .voice-order-variant .voice-product-arrow::after {
        display: none;
    }
    
    /* ИСПРАВЛЕНО: Размеры рубля для маленьких экранов */
    .voice-kit-modal .current-price .ruble-icon {
        width: 8px;
        height: 10px;
        top: -3px;
    }
    
    .voice-kit-modal .old-price .ruble-icon {
        width: 7px;
        height: 9px;
        top: -2px;
    }
}

/* ДОБАВЛЕНО: Дополнительные стили для очень маленьких экранов */
@media(max-width: 400px) {
    .voice-order-variant::after {
        right: 50px; /* Еще больше воздуха на очень маленьких экранах */
    }

    .voice-product-info {
        margin-right: 55px; /* Увеличиваем отступ */
    }
    
    /* Дополнительно уменьшаем стрелку для экономии места */
    .voice-product-arrow,
    .voice-order-variant .voice-product-arrow {
        width: 22px;
        height: 22px;
        right: 3px;
        background-size: 11px 11px;
    }
}

/* ========================================================================
   ГОЛОСОВОЙ ЗАКАЗ - КИБЕРПАНК ПРОМО (ТОЛЬКО МОБИЛЬНАЯ ВЕРСИЯ)
   ======================================================================== */

/* Скрываем на десктопе, показываем только на мобиле */
@media (min-width: 768px) {
    .voice-command-container {
        display: none !important;
    }
}

/* Базовые стили для мобильной версии */
@media (max-width: 767px) {
    
    /* Контейнер */
    .voice-command-container {
        display: block !important;
        width: 100%;
        background: transparent;
        margin: 0;
    }

    /* Главный промо-блок */
    .voice-promo-container {
        position: relative;
        background: linear-gradient(135deg, #1a1a2e 0%, #0f0f1e 100%);
        border-radius: 5px;
        padding: 30px 20px 25px;
        margin: 0 auto;
        max-width: calc(100% - 20px);
        overflow: visible;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.4);
    }

    /* Техно-сетка на фоне */
    .voice-promo-container::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-image: 
            linear-gradient(rgba(0, 162, 226, 0.05) 1px, transparent 1px),
            linear-gradient(90deg, rgba(0, 162, 226, 0.05) 1px, transparent 1px);
        background-size: 30px 30px;
        pointer-events: none;
        z-index: 1;
    }

    /* Воблер со скидкой - СЕРЬЕЗНЫЙ СТИЛЬ */
    .discount-wobbler {
        position: absolute;
        top: -12px;
        right: 15px;
        left: auto !important;
        background: #F32C2D;
        color: white;
        width: 70px;
        height: 35px;
        border-radius: 5px;
        font-weight: 900;
        font-size: 18px;
        transform: rotate(-5deg);
        box-shadow: 0 3px 10px rgba(243, 44, 45, 0.4);
        z-index: 2;
        animation: subtle-pulse 3s ease-in-out infinite;
        border: 2px solid rgba(255, 255, 255, 0.2);
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
        letter-spacing: -0.5px;
    }

    /* Только процент скидки */
    .discount-wobbler span:first-child {
        display: none;
    }

    .discount-wobbler span:last-child {
        font-size: 20px;
    }

    /* Минималистичный блик */
    .discount-wobbler::before {
        content: '';
        position: absolute;
        top: 2px;
        left: 2px;
        right: 2px;
        height: 40%;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), transparent);
        border-radius: 3px 3px 0 0;
    }

    /* Убираем звездочки */
    .discount-wobbler::after {
        display: none;
    }

    /* Заголовок */
    .voice-promo-title {
        color: #00A2E2;
        font-size: 22px;
        font-weight: 700;
        margin: 10px 0 8px;
        text-align: center;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        text-shadow: 0 0 15px rgba(0, 162, 226, 0.3);
        position: relative;
        z-index: 2;
    }

    /* Описание */
    .voice-promo-desc {
        color: rgba(255, 255, 255, 0.85);
        font-size: 14px;
        margin-bottom: 20px;
        text-align: center;
        line-height: 1.4;
        position: relative;
        z-index: 2;
    }

    /* Кнопка микрофона */
    .voice-button-enhanced {
        position: relative;
        width: 90px;
        height: 90px;
        margin: 20px auto;
        z-index: 2;
    }

    .voice-button-main {
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background: linear-gradient(135deg, #00A2E2 0%, #0090d0 100%);
        border: 3px solid rgba(255, 255, 255, 0.1);
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        overflow: hidden;
        cursor: pointer;
        box-shadow: 
            0 0 0 0 rgba(0, 162, 226, 0.4),
            0 4px 15px rgba(0, 162, 226, 0.3);
        animation: pulse-shadow 2.5s infinite;
        transition: all 0.3s ease;
    }

    .voice-button-main:active {
        transform: scale(0.95);
    }

    .mic-icon-enhanced {
        width: 40px;
        height: 40px;
        z-index: 1;
    }

    /* Примеры запросов */
    .voice-examples-animated {
        margin: 20px 0;
        height: 50px;
        position: relative;
        overflow: hidden;
        z-index: 2;
    }

    .voice-example-item {
        position: absolute;
        width: 100%;
        text-align: center;
        opacity: 0;
        transform: translateY(15px);
        animation: slide-examples 12s infinite;
    }

    .voice-example-quote {
        background: rgba(255, 255, 255, 0.08);
        border-radius: 8px;
        padding: 10px 15px;
        display: inline-block;
        color: #FFF659;
        font-size: 15px;
        font-weight: 500;
        backdrop-filter: blur(5px);
        border: 1px solid rgba(255, 246, 89, 0.2);
    }

    .voice-example-quote::before,
    .voice-example-quote::after {
        content: '';
    }

    /* CTA кнопка */
    .voice-cta-button {
        display: block;
        background: #FFF659;
        color: #212121;
        font-size: 18px;
        font-weight: 800;
        padding: 12px 30px;
        border: none;
        border-radius: 8px;
        margin: 15px auto;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 3px 15px rgba(255, 246, 89, 0.3);
        text-transform: uppercase;
        letter-spacing: 1px;
        position: relative;
        z-index: 2;
        animation: subtle-glow 2s ease-in-out infinite;
    }

    .voice-cta-button:active {
        transform: scale(0.98);
    }

    /* Футер */
    .voice-promo-footer {
        text-align: center;
        margin-top: 15px;
        font-size: 13px;
        color: rgba(255, 255, 255, 0.7);
        line-height: 1.5;
        position: relative;
        z-index: 2;
    }

    .voice-promo-footer strong {
        color: #00A2E2;
        font-weight: 700;
    }

    .voice-promo-footer small {
        display: block;
        margin-top: 3px;
        font-size: 12px;
        opacity: 0.8;
    }
}

/* Упрощенные анимации для мобильных */
@media (max-width: 767px) {
    @keyframes subtle-pulse {
        0%, 100% { 
            transform: rotate(-5deg) scale(1); 
            box-shadow: 0 3px 10px rgba(243, 44, 45, 0.4);
        }
        50% { 
            transform: rotate(-5deg) scale(1.05); 
            box-shadow: 0 5px 15px rgba(243, 44, 45, 0.6);
        }
    }

    @keyframes pulse-shadow {
        0% {
            box-shadow: 
                0 0 0 0 rgba(0, 162, 226, 0.4),
                0 4px 15px rgba(0, 162, 226, 0.3);
        }
        70% {
            box-shadow: 
                0 0 0 15px rgba(0, 162, 226, 0),
                0 4px 20px rgba(0, 162, 226, 0.4);
        }
        100% {
            box-shadow: 
                0 0 0 0 rgba(0, 162, 226, 0),
                0 4px 15px rgba(0, 162, 226, 0.3);
        }
    }

    @keyframes slide-examples {
        0%, 25% { 
            opacity: 0; 
            transform: translateY(15px); 
        }
        5%, 20% { 
            opacity: 1; 
            transform: translateY(0); 
        }
        25%, 100% { 
            opacity: 0; 
            transform: translateY(-15px); 
        }
    }

    @keyframes subtle-glow {
        0%, 100% { 
            box-shadow: 0 3px 15px rgba(255, 246, 89, 0.3);
        }
        50% { 
            box-shadow: 0 5px 20px rgba(255, 246, 89, 0.5);
        }
    }

    /* Таймлайны для примеров */
    .voice-example-item:nth-child(1) { animation-delay: 0s; }
    .voice-example-item:nth-child(2) { animation-delay: 3s; }
    .voice-example-item:nth-child(3) { animation-delay: 6s; }
    .voice-example-item:nth-child(4) { animation-delay: 9s; }
}

/* Дополнительная оптимизация для маленьких экранов */
@media (max-width: 375px) {
    .voice-promo-container {
        padding: 25px 15px 20px;
    }
    
    .voice-promo-title {
        font-size: 20px;
    }
    
    .voice-promo-desc {
        font-size: 13px;
    }
    
    .voice-button-enhanced {
        width: 80px;
        height: 80px;
    }
    
    .discount-wobbler {
        width: 60px;
        height: 30px;
        font-size: 16px;
        top: -10px;
        right: 10px;
    }
    
    .voice-example-quote {
        font-size: 14px;
        padding: 8px 12px;
    }
    
    .voice-cta-button {
        font-size: 16px;
        padding: 10px 25px;
    }
}

/* ========================================================================
   КНОПКА ГОЛОСОВОГО ПОИСКА В СТРОКЕ ПОИСКА - КИБЕРПАНК СТАЙЛ
   ======================================================================== */

/* Десктопная версия */
.form-find-products {
    position: relative;
    display: flex;
    align-items: center;
}

.btn-voice-search {
    position: absolute;
    right: 15px; /* Позиция левее кнопки "найти" */
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00A2E2;
    transition: all 0.2s ease;
    z-index: 2;
}

.btn-voice-search:hover {
    color: #0090d0;
    transform: translateY(-50%) scale(1.1);
}

.btn-voice-search:active {
    transform: translateY(-50%) scale(0.95);
}

.btn-voice-search svg {
    width: 22px;
    height: 22px;
    transition: all 0.2s ease;
}

/* Анимация пульсации при готовности 
.btn-voice-search.ready {
    animation: voice-ready-pulse 2s ease-in-out infinite;
}*/

@keyframes voice-ready-pulse {
    0%, 100% { 
        color: #00A2E2; 
    }
    50% { 
        color: #F32C2D; 
        filter: drop-shadow(0 0 3px rgba(243, 44, 45, 0.4));
    }
}

/* Скрываем микрофон когда есть текст */
.form-find-products.has-text .btn-voice-search {
    display: none;
}

/* Показываем кнопку очистки и "найти" когда есть текст */
.form-find-products:not(.has-text) .btn-clear-find-products {
    display: none;
}

.form-find-products.has-text .btn-find-products {
    display: block;
}

/* Мобильная версия */
@media (max-width: 767px) {
    .btn-voice-search-mobile {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #00A2E2;
        z-index: 2;
    }
    
    .btn-voice-search-mobile svg {
        width: 20px;
        height: 20px;
    }
    
    /* Отступ для инпута чтобы не перекрывался микрофоном */
    .ajaxed-found-fullscreen .header-search-input {
        padding-right: 50px;
    }
    
    /* Скрываем десктопную кнопку на мобиле */
    .btn-voice-search {
        display: none !important;
    }
}

/* Состояние записи */
.btn-voice-search.recording,
.btn-voice-search-mobile.recording {
    color: #F32C2D;
    animation: voice-recording-pulse 1s ease-in-out infinite;
}

@keyframes voice-recording-pulse {
    0%, 100% { 
        transform: translateY(-50%) scale(1); 
    }
    50% { 
        transform: translateY(-50%) scale(1.2); 
    }
}

/* Блокировка при загрузке */
.btn-voice-search.disabled,
.btn-voice-search-mobile.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

