        /* CSS star rating selector */
        .star-rating-input {
            display: flex;
            flex-direction: row-reverse;
            justify-content: flex-end;
            gap: 6px;
            margin-bottom: 12px;
        }
        .star-rating-input input {
            display: none;
        }
        .star-rating-input label {
            font-size: 26px;
            color: #ddd;
            cursor: pointer;
            transition: color 0.15s ease-in-out;
        }
        .star-rating-input label:hover,
        .star-rating-input label:hover ~ label,
        .star-rating-input input:checked ~ label {
            color: #f1c40f;
        }

        .rating-summary-box {
            background: #FAF8F6;
            border: 1px solid #F0ECE7;
            border-radius: 12px;
            padding: 20px;
            display: flex;
            align-items: center;
            gap: 32px;
            margin-bottom: 24px;
        }
        .rating-big-num {
            font-size: 48px;
            font-weight: 700;
            color: #5C3D2E;
            line-height: 1;
        }
        .rating-stars-row {
            color: #f1c40f;
            font-size: 18px;
            display: flex;
            gap: 4px;
            margin-bottom: 6px;
        }
        .review-list-item {
            border-bottom: 1px solid #ECEFF1;
            padding: 16px 0;
            display: flex;
            gap: 16px;
        }
        .review-avatar {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            object-fit: cover;
        }
        .review-bubble {
            flex: 1;
        }
        .review-meta {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 6px;
        }
        .review-user-name {
            font-weight: 600;
            font-size: 14px;
        }
        .review-date {
            font-size: 12px;
            color: #78909C;
        }
        .review-stars {
            color: #f1c40f;
            font-size: 12px;
            margin-bottom: 6px;
        }
        .review-body {
            font-size: 14px;
            color: #455A64;
            line-height: 1.5;
        }
        .btn-fav {
            background: white !important;
            border: 1px solid #D0C6B8 !important;
            color: #5C3D2E !important;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 10px 20px;
            border-radius: 8px;
            font-size: 14px;
            font-weight: 600;
            cursor: pointer;
            text-decoration: none;
            transition: all 0.2s ease;
        }
        .btn-fav:hover {
            background: #FAF8F6 !important;
            border-color: #5C3D2E !important;
        }
        .btn-fav.active {
            background: #FFF5F5 !important;
            border-color: #E74C3C !important;
            color: #E74C3C !important;
        }
