.review-feed {

                    display: flex;

                    flex-wrap: wrap;

                    justify-content: center;

                    gap: 8px;

                    margin-bottom: 16px;

                }



                .review-card {

                    box-sizing: border-box;

                    background: rgba(255, 255, 255, 0.03);

                    border: 1px solid var(--glass-border, rgba(255, 255, 255, 0.08));

                    border-radius: 10px;

                    padding: 6px;

                    display: flex;

                    flex-direction: column;

                    gap: 5px;

                    overflow: hidden;

                    /* 8 cột desktop: (100% - 7*8px) / 8 */

                    width: calc((100% - 7 * 8px) / 8);

                    flex-shrink: 0;

                }



                .review-card.rv-hidden {

                    display: none !important;

                }



                .review-img-wrap {

                    width: 100%;

                    aspect-ratio: 9 / 16;

                    border-radius: 10px;

                    overflow: hidden;

                    cursor: zoom-in;

                    background: rgba(255, 255, 255, 0.04);

                    border: 1px solid var(--glass-border, rgba(255, 255, 255, 0.06));

                    position: relative;

                }



                .review-img-wrap img {

                    width: 100%;

                    height: 100%;

                    object-fit: cover;

                    display: block;

                    transition: transform .3s ease;

                }



                .review-img-wrap:hover img {

                    transform: scale(1.04);

                }



                .review-head {

                    display: flex;

                    align-items: center;

                    gap: 8px;

                }



                .review-avatar {

                    width: 28px;

                    height: 28px;

                    border-radius: 50%;

                    background: linear-gradient(135deg, #a78bfa, #7c3aed);

                    color: #fff;

                    font-weight: 700;

                    font-size: 12px;

                    display: flex;

                    align-items: center;

                    justify-content: center;

                    flex: 0 0 28px;

                }



                .review-info {

                    flex: 1;

                    min-width: 0;

                }



                .review-name {

                    font-weight: 700;

                    font-size: 12px;

                    color: var(--text-0);

                    white-space: nowrap;

                    overflow: hidden;

                    text-overflow: ellipsis;

                }



                .review-text {

                    font-size: 12.5px;

                    line-height: 1.45;

                    color: var(--text-1, var(--text-0));

                    white-space: pre-line;

                    word-wrap: break-word;

                    display: -webkit-box;

                    -webkit-line-clamp: 4;

                    -webkit-box-orient: vertical;

                    overflow: hidden;

                }



                .review-time {

                    font-size: 10px;

                    color: var(--text-2);

                }



                .review-no-img {

                    width: 100%;

                    aspect-ratio: 9 / 16;

                    border-radius: 10px;

                    background: linear-gradient(135deg, rgba(167, 139, 250, 0.12), rgba(124, 58, 237, 0.18));

                    display: flex;

                    align-items: center;

                    justify-content: center;

                    color: #a78bfa;

                    font-size: 38px;

                    font-weight: 800;

                    border: 1px solid var(--glass-border, rgba(255, 255, 255, 0.06));

                }



                .review-ctrl-wrap {

                    display: flex;

                    gap: 10px;

                    justify-content: center;

                    margin-bottom: 36px;

                    margin-top: 4px;

                }



                .review-ctrl-btn {

                    display: inline-flex;

                    align-items: center;

                    gap: 6px;

                    padding: 9px 22px;

                    border-radius: 50px;

                    font-size: 13px;

                    font-weight: 700;

                    cursor: pointer;

                    border: 1.5px solid rgba(167, 139, 250, 0.45);

                    background: rgba(167, 139, 250, 0.08);

                    color: #a78bfa;

                    transition: all .2s ease;

                    user-select: none;

                }



                .review-ctrl-btn:hover {

                    background: rgba(167, 139, 250, 0.18);

                    border-color: #a78bfa;

                }



                .review-ctrl-btn.close-btn {

                    border-color: rgba(255, 255, 255, 0.12);

                    background: rgba(255, 255, 255, 0.04);

                    color: var(--text-2);

                }



                .review-ctrl-btn.close-btn:hover {

                    background: rgba(255, 255, 255, 0.09);

                }



                @media (max-width: 768px) {

                    .review-feed {

                        gap: 5px;

                    }



                    /* 4 cột mobile: (100% - 3*5px) / 4 */

                    .review-card {

                        width: calc((100% - 3 * 5px) / 4);

                        padding: 4px;

                        gap: 4px;

                        border-radius: 8px;

                    }



                    .review-avatar {

                        width: 20px;

                        height: 20px;

                        flex-basis: 20px;

                        font-size: 9px;

                    }



                    .review-name {

                        font-size: 10px;

                    }



                    .review-text {

                        font-size: 10px;

                        -webkit-line-clamp: 3;

                    }



                    .review-time {

                        font-size: 8px;

                        margin-top: 1px;

                    }



                    .review-img-wrap {

                        border-radius: 6px;

                    }



                    .review-no-img {

                        font-size: 20px;

                        border-radius: 6px;

                    }



                    .review-ctrl-btn {

                        font-size: 12px;

                        padding: 8px 18px;

                    }

                }