
body.single-product .yith-wfbt-section {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 36px 0 !important;
        padding: 0 !important;
        float: none !important;
        clear: both !important;
        box-sizing: border-box !important;
    }

    body.single-product .yith-wfbt-section *,
    body.single-product .yith-wfbt-section *::before,
    body.single-product .yith-wfbt-section *::after {
        box-sizing: border-box;
    }

    /* 標題 */
    body.single-product .yith-wfbt-section > h2 {
        margin: 0 0 24px !important;
        font-size: clamp(24px, 2vw, 30px) !important;
        line-height: 1.4 !important;
    }

    /* YITH 原生表單 */
    body.single-product
    .yith-wfbt-section form.yith-wfbt-form {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /*
     * 原始圖片表格保留在 DOM，
     * 讓 JavaScript 取得商品圖片資料。
     */
    body.single-product
    .yith-wfbt-section table.yith-wfbt-images {
        display: none !important;
    }

    /* 兩欄商品網格 */
    body.single-product
    .yith-wfbt-section ul.yith-wfbt-items {
        order: 1 !important;
        display: grid !important;
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        float: none !important;
    }

    /* 單張商品卡片 */
    body.single-product
    .yith-wfbt-section
    ul.yith-wfbt-items > li.yith-wfbt-item {
        display: grid !important;
        grid-template-columns:
            128px minmax(0, 1fr) !important;
        align-items: start !important;
        align-content: start !important;
        gap: 18px !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 20px !important;
        float: none !important;

        border: 1px solid #E9E2D9 !important;
        border-radius: 10px !important;
        background: #FFFBF8 !important;
    }

    body.single-product
    .yith-wfbt-section li.yith-wfbt-item::before {
        content: none !important;
        display: none !important;
    }

    /* 商品圖片容器 */
    body.single-product
    .yith-wfbt-section .jhyuen-wfbt-media {
        grid-column: 1 !important;
        grid-row: 1 !important;

        width: 128px !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1;

        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;

        border-radius: 8px !important;
        background: #F3EEE8 !important;
    }

    body.single-product
    .yith-wfbt-section .jhyuen-wfbt-media a {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
    }

    /*
     * v6.0 改用原生 IMG
     * 不再使用 Canvas。
     */
    body.single-product
    .yith-wfbt-section .jhyuen-wfbt-media img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;

        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;

        object-fit: cover !important;
        object-position: center !important;

        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
    }

    /* 右側商品資料 */
    body.single-product
    .yith-wfbt-section li.yith-wfbt-item > label {
        display: block !important;
        position: relative !important;

        grid-column: 2 !important;
        grid-row: 1 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 0 0 36px !important;
        float: none !important;

        font-size: 0 !important;
        line-height: 1.6 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        text-align: left !important;
    }

    /* 勾選框 */
    body.single-product
    .yith-wfbt-section
    li.yith-wfbt-item input[name="offeringID[]"] {
        position: absolute !important;

        top: 5px !important;
        left: 0 !important;

        display: block !important;
        width: 21px !important;
        height: 21px !important;

        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        transform: none !important;

        accent-color: #987B61 !important;
        cursor: pointer !important;
    }

    /* 商品名稱與規格 */
    body.single-product
    .yith-wfbt-section .yith-wfbt-item .product-name {
        display: block !important;
        font-size: 18px !important;
        line-height: 1.65 !important;
        color: #4D4037 !important;
        overflow-wrap: anywhere !important;
    }

    body.single-product
    .yith-wfbt-section .jhyuen-wfbt-title {
        display: block !important;
        margin: 0 0 5px !important;

        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 1.6 !important;
    }

    body.single-product
    .yith-wfbt-section .jhyuen-wfbt-spec {
        display: block !important;

        font-size: 18px !important;
        font-weight: 400 !important;
        line-height: 1.6 !important;
        color: #78685D !important;
    }

    body.single-product
    .yith-wfbt-section
    li.yith-wfbt-item > label
    > a:not(.yith-wfbt-open-modal) {
        display: block !important;
        color: inherit !important;
        text-decoration: none !important;
    }

    /* 商品價格 */
    body.single-product
    .yith-wfbt-section .yith-wfbt-item .price {
        display: block !important;
        margin: 12px 0 0 !important;

        font-size: 20px !important;
        font-weight: 600 !important;
        line-height: 1.5 !important;
        color: #4D4037 !important;
    }

    body.single-product
    .yith-wfbt-section .yith-wfbt-item .price del,
    body.single-product
    .yith-wfbt-section .yith-wfbt-item .price del * {
        font-size: 18px !important;
        font-weight: 400 !important;
        color: #99928C !important;
    }

    /* 選擇規格按鈕 */
    body.single-product
    .yith-wfbt-section a.yith-wfbt-open-modal {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: auto !important;
        max-width: 100% !important;

        margin: 12px 0 0 !important;
        padding: 10px 16px !important;

        border: 1px solid #AB926E !important;
        border-radius: 5px !important;

        background: transparent !important;
        color: #765D45 !important;

        font-size: 18px !important;
        line-height: 1.5 !important;
        text-decoration: none !important;
        cursor: pointer !important;
    }

    body.single-product
    .yith-wfbt-section a.yith-wfbt-open-modal:hover {
        background: #AB926E !important;
        color: #FFFFFF !important;
    }

    /* 總價與加入購物車區塊 */
    body.single-product
    .yith-wfbt-section .yith-wfbt-submit-block {
        order: 2 !important;

        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 20px 24px !important;

        border: 1px solid #E9E2D9 !important;
        border-radius: 10px !important;
        background: #F8F4EE !important;
    }

    body.single-product
    .yith-wfbt-section .price_text {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 10px !important;

        margin: 0 !important;
        padding: 0 !important;
        font-size: 18px !important;
    }

    body.single-product
    .yith-wfbt-section .total_price_label,
    body.single-product
    .yith-wfbt-section .save-amount,
    body.single-product
    .yith-wfbt-section .save-amount * {
        font-size: 18px !important;
    }

    body.single-product
    .yith-wfbt-section .total_price {
        font-size: 26px !important;
        font-weight: 700 !important;
    }

    body.single-product
    .yith-wfbt-section .total_price del,
    body.single-product
    .yith-wfbt-section .total_price del * {
        font-size: 18px !important;
        font-weight: 400 !important;
    }

    body.single-product
    .yith-wfbt-section .yith-wfbt-submit-button {
        min-height: 48px !important;
        margin: 0 !important;
        padding: 12px 24px !important;
        font-size: 18px !important;
    }

    /* 平板 */
    @media (max-width: 1024px) {
        body.single-product
        .yith-wfbt-section
        ul.yith-wfbt-items > li.yith-wfbt-item {
            grid-template-columns:
                96px minmax(0, 1fr) !important;
            gap: 12px !important;
            padding: 14px !important;
        }

        body.single-product
        .yith-wfbt-section .jhyuen-wfbt-media {
            width: 96px !important;
        }
    }

    /* 手機 */
    @media (max-width: 767px) {
        body.single-product
        .yith-wfbt-section ul.yith-wfbt-items {
            grid-template-columns:
                minmax(0, 1fr) !important;
        }

        body.single-product
        .yith-wfbt-section .yith-wfbt-submit-block {
            flex-direction: column !important;
            align-items: stretch !important;
        }

        body.single-product
        .yith-wfbt-section .yith-wfbt-submit-button {
            width: 100% !important;
        }
    }