body.single-product .shop-sidebar { display: none !important; }
body.single-product .shop-content { width: 100% !important; }
body.single-product .shop-header-row { display: none !important; }
body.single-product .shop-breadcrumbs { margin-bottom: 20px !important; display: block !important; }

.woocommerce div.product { display: flex !important; flex-wrap: wrap; gap: 0px; background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.02); }
.woocommerce div.product .woocommerce-product-gallery { width: 45% !important; float: none !important; margin: 0 !important; }
.woocommerce div.product .summary.entry-summary { width: calc(55% - 40px) !important; float: none !important; display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: center !important; align-content: flex-start !important; }

/* Жесткая привязка к .summary, чтобы не ломать сопутствующие товары */
.woocommerce div.product .summary .product_title { width: 100% !important; order: 1; font-size: 28px !important; margin-bottom: 50px !important; color: #333 !important; }
.woocommerce div.product .summary .price { width: auto !important; order: 2; font-size: 26px !important; color: #008238 !important; font-weight: bold !important; margin: 0 20px 0 0 !important; border: none !important; }
.woocommerce div.product .summary .stock { width: auto !important; order: 3; color: #00a046 !important; font-size: 14px !important; margin: 0 25px 0 0 !important; }
.woocommerce div.product .summary form.cart { width: auto !important; order: 4; display: flex !important; align-items: center !important; gap: 15px !important; margin: 0 !important; padding: 0 !important; border: none !important; }
.woocommerce div.product .summary.entry-summary::before { content: ""; width: 100%; order: 5; height: 1px; background: #eee; margin: 20px 0 15px 0; }
.woocommerce div.product .summary .product_meta { width: auto !important; order: 6; font-size: 14px !important; color: #333 !important; margin: 0 25px 0 0 !important; font-weight: bold !important; border: none !important; padding: 0 !important; }
.woocommerce div.product .summary .product_meta .posted_in { display: none !important; }
.woocommerce div.product .summary .woocommerce-product-rating { width: auto !important; order: 7; display: flex !important; align-items: center !important; gap: 5px !important; margin: 0 25px 0 0 !important; }
.woocommerce div.product .summary .woocommerce-product-rating .star-rating { margin: 1px 4px 0 0; float: left; }
.woocommerce div.product .summary .woosc-btn { width: auto !important; order: 8; display: inline-flex !important; margin: 0 15px 0 0 !important; font-size: 0 !important; background: transparent !important; border: none !important; padding: 0 !important; color: #888 !important; transition: transform 0.2s; }
.woocommerce div.product .summary .woosw-btn { width: auto !important; order: 9; display: inline-flex !important; margin: 0 !important; font-size: 0 !important; background: transparent !important; border: none !important; padding: 0 !important; color: #888 !important; transition: transform 0.2s; }
.woocommerce div.product .summary .woosc-btn::before { content: '\2696' !important; color: #ffa900 !important; font-size: 30px !important; }
.woocommerce div.product .summary .woosw-btn::before { content: '\2661' !important; color: #FF3D3D !important; font-size: 30px !important; }
.woocommerce div.product .summary .woosw-btn.woosw-added::before { content: '\2665' !important; color: #f84147 !important; }
.woocommerce div.product .summary .woosc-btn:hover, .woocommerce div.product .summary .woosw-btn:hover { transform: scale(1.1) !important; }
.woocommerce div.product .summary .woocommerce-product-details__short-description { display: none !important; }

.woocommerce div.product .summary form.cart input.qty[type=number]::-webkit-inner-spin-button,
.woocommerce div.product .summary form.cart input.qty[type=number]::-webkit-outer-spin-button { -webkit-appearance: none !important; margin: 0 !important; }
.woocommerce div.product .summary form.cart input.qty[type=number] { -moz-appearance: textfield !important; }
.woocommerce div.product .summary form.cart div.quantity { display: flex !important; align-items: stretch !important; border: 1px solid #ccc !important; border-radius: 4px !important; background: #fff !important; height: 45px !important; margin-right: 15px !important; padding: 0 !important; overflow: hidden !important; }
.woocommerce div.product .summary form.cart input.qty { width: 50px !important; height: 100% !important; text-align: center !important; border: none !important; font-size: 16px !important; font-weight: bold !important; color: #333 !important; background: #fff !important; margin: 0 !important; padding: 0 !important; box-shadow: none !important; outline: none !important; }
.woocommerce div.product .summary form.cart div.quantity .qty-btn { width: 35px !important; background: #f5f5f5 !important; border: none !important; color: #333 !important; font-size: 20px !important; font-weight: normal !important; cursor: pointer !important; display: flex !important; align-items: center !important; justify-content: center !important; transition: 0.2s !important; margin: 0 !important; padding: 0 !important; }
.woocommerce div.product .summary form.cart div.quantity .qty-btn:hover { background: #e0e0e0 !important; color: #00a046 !important; }
.woocommerce div.product .summary form.cart div.quantity .qty-btn.minus { border-right: 1px solid #ccc !important; }
.woocommerce div.product .summary form.cart div.quantity .qty-btn.plus { border-left: 1px solid #ccc !important; }

button.single_add_to_cart_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background: #00a046 !important;
    color: #fff !important;
    height: 45px !important;
    border-radius: 6px !important;
    font-weight: bold !important;
    border: none !important;
    padding: 0 30px !important;
    cursor: pointer;
    transition: all 0.2s !important;
}

button.single_add_to_cart_button::before {
    content: '\1F6D2' !important;
    font-size: 20px !important;
    color: #ffffff !important;
    filter: brightness(0) invert(1) !important; 
}

button.single_add_to_cart_button:hover {
    background: #008238 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 10px rgba(0, 160, 70, 0.3) !important;
}

/* Мобильная версия с защитой селекторов */
@media (max-width: 768px) {
    .woocommerce div.product { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; padding: 0px !important; align-items: center !important; }
    .woocommerce div.product .summary.entry-summary { display: contents !important; }

    .shop-breadcrumbs { order: 1 !important; width: 100% !important; margin-bottom: 10px !important; }
    .woocommerce div.product .summary .product_title { order: 2 !important; width: 100% !important; font-size: 22px !important; margin: 0 0 15px 0 !important; }
    .woocommerce div.product .woocommerce-product-gallery { order: 3 !important; width: 100% !important; margin-bottom: 15px !important; }
    
    .woocommerce div.product .summary .product_meta { order: 4 !important; width: 33.33% !important; margin: 0 !important; font-size: 13px !important; padding: 0 !important; text-align: left !important; }
    .woocommerce div.product .summary .woocommerce-product-rating { order: 5 !important; width: 33.33% !important; margin: 0 !important; display: flex !important; justify-content: center !important; align-items: center !important; }
    .woocommerce div.product .summary .woocommerce-product-rating .woocommerce-review-link { font-size: 0 !important; text-decoration: none !important; }
    .woocommerce div.product .summary .woocommerce-product-rating .woocommerce-review-link .count { font-size: 13px !important; color: #888 !important; margin-left: 5px !important; }
    .woocommerce div.product .summary .stock { order: 6 !important; width: 33.33% !important; margin: 0 !important; font-size: 13px !important; text-align: right !important; }
    
    .woocommerce div.product .summary .price { order: 7 !important; width: 50% !important; margin: 15px 0 !important; font-size: 24px !important; }
    .woocommerce div.product .summary .woosc-btn { order: 8 !important; width: 20% !important; margin: 15px 0 !important; justify-content: flex-end !important; }
    .woocommerce div.product .summary .woosw-btn { order: 9 !important; width: 25% !important; margin: 15px 0 !important; justify-content: flex-end !important; }
    
    .woocommerce div.product .summary form.cart { order: 10 !important; width: 100% !important; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; gap: 1px !important; margin: 10px 0 20px 0 !important; }
    .woocommerce div.product .summary form.cart div.quantity { width: 120px !important; flex-shrink: 0 !important; margin: 0 !important; }
    .woocommerce div.product .summary button.single_add_to_cart_button { flex-grow: 1 !important; margin: 0 !important; padding: 0 10px !important; }

    .woocommerce div.product .summary.entry-summary::before { display: none !important; }

    /* Отключаем влияние flexbox на секции внизу */
    .woocommerce div.product .woocommerce-tabs { order: 11 !important; width: 100% !important; margin-top: 10px !important; display: block !important; }
    .woocommerce div.product .up-sells { order: 12 !important; width: 100% !important; display: block !important; }
    .woocommerce div.product .related.products { order: 13 !important; width: 100% !important; display: block !important; }
}

@media (max-width: 768px) {
    .woocommerce div.product .summary form.cart { justify-content: space-between !important; }
    .woocommerce div.product .summary form.cart div.quantity { width: 35% !important; min-width: 100px !important; flex-shrink: 1 !important; margin-bottom: 10px !important; }
    .woocommerce div.product .summary button.single_add_to_cart_button { width: 40% !important; flex-grow: 0 !important; padding: 0 5px !important; margin-bottom: 10px !important; }
}
@media (max-width: 768px) {
    /* 1. Держим "Наличие" всегда прижатым к правому краю, даже если нет звезд */
    .woocommerce div.product .summary .stock {
        margin-left: auto !important;
    }

    /* 2. Создаем невидимый барьер на 100% ширины, чтобы Цена НИКОГДА не прыгала вверх к Артикулу */
    .woocommerce div.product::after {
        content: "" !important;
        display: block !important;
        width: 100% !important;
        order: 6 !important; /* Встает ровно между Артикулом/Наличием (order: 4,5,6) и Ценой (order: 7) */
    }
}