/* Avis, J’aime et commentaires des vias (sortis de la page en 3.11.9, audit 20/10 D-03 : même contenu, même place) */
        .pvf-social-box {
            width: 100%;
            max-width: none;
            margin: 20px 0;
            padding: 14px 16px;
            background: #ffffff;
            border: 1px solid #e7e7e7;
            border-radius: 16px;
            box-sizing: border-box;
        }

        .pvf-social-actions {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
            width: 100%;
        }

        .pvf-comments-seo {
            position: absolute !important;
            width: 1px !important;
            height: 1px !important;
            padding: 0 !important;
            margin: -1px !important;
            overflow: hidden !important;
            clip: rect(0, 0, 0, 0) !important;
            white-space: normal !important;
            border: 0 !important;
        }

        .pvf-condition-summary {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 7px;
            margin-top: 12px;
            padding: 11px 13px;
            background: #f7f7f7;
            border: 1px solid #ededed;
            border-radius: 13px;
            font-size: 14px;
            color: #222222;
        }

        .pvf-condition-summary-label {
            color: #666666;
            font-weight: 700;
        }

        .pvf-experience-intro {
            margin: 0 0 14px 0;
            padding: 12px 13px;
            background: #f7f7f7;
            border-radius: 12px;
            color: #444444;
            line-height: 1.45;
        }

        .pvf-form-section {
            margin-bottom: 14px;
        }

        .pvf-form-section-title {
            display: block;
            margin-bottom: 8px;
            font-size: 15px;
            line-height: 1.25;
            font-weight: 800;
            color: #111111;
        }

        .pvf-choice-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 8px;
        }

        .pvf-choice-card {
            position: relative;
            display: flex !important;
            align-items: center;
            justify-content: flex-start;
            min-height: 42px;
            margin: 0 !important;
            padding: 10px 12px;
            border: 1px solid #dddddd;
            border-radius: 12px;
            background: #ffffff;
            color: #111111;
            font-weight: 800 !important;
            cursor: pointer;
            text-align: left;
            box-sizing: border-box;
        }

        .pvf-choice-card input {
            position: absolute;
            opacity: 0;
            pointer-events: none;
        }

        .pvf-choice-card:has(input:checked) {
            border-color: #111111;
            background: #111111;
            color: #ffffff;
        }

        .pvf-optional {
            color: #777777;
            font-size: 12px;
            font-weight: 600;
        }

        .pvf-comment-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            margin: 2px 0 7px 0;
        }

        .pvf-comment-badge {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            padding: 4px 7px;
            border-radius: 999px;
            background: #ffffff;
            border: 1px solid #e5e5e5;
            color: #444444;
            font-size: 12px;
            font-weight: 800;
            line-height: 1;
        }


        .pvf-rating-field {
            display: inline-flex;
            align-items: center;
            justify-content: flex-start;
            gap: 5px;
            padding: 8px 10px;
            background: #f7f7f7;
            border: 1px solid #ededed;
            border-radius: 13px;
        }

        .pvf-member-moderation-note {
            margin:-4px 0 18px;
            padding:10px 12px;
            border-radius:10px;
            background:#f6f7f7;
            color:#50575e;
            font-size:13px;
            line-height:1.45;
        }

        .pvf-member-comment-identity {
            display:flex;
            align-items:center;
            gap:11px;
            margin-bottom:16px;
            padding:11px 13px;
            background:#f7f7f7;
            border:1px solid #ededed;
            border-radius:12px;
        }

        .pvf-member-comment-avatar {
            width:42px !important;
            height:42px !important;
            min-width:42px !important;
            min-height:42px !important;
            max-width:42px !important;
            max-height:42px !important;
            aspect-ratio:1 / 1 !important;
            border-radius:50% !important;
            object-fit:cover !important;
            object-position:center !important;
            flex:0 0 42px !important;
            display:block !important;
            overflow:hidden !important;
        }

        .pvf-member-comment-avatar-fallback {
            display:flex;
            align-items:center;
            justify-content:center;
            background:#ececec;
            font-size:19px;
            line-height:1;
        }

        .pvf-member-comment-identity-text {
            min-width:0;
            color:#666;
            font-size:14px;
            line-height:1.35;
        }

        .pvf-member-comment-identity-text span {
            display:block;
        }

        .pvf-member-comment-identity strong {
            display:inline;
            margin:0;
            color:#222;
            font-weight:700;
        }

        .pvf-rating-star {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 31px;
            height: 31px;
            margin: 0 !important;
            padding: 0 !important;
            border: 0 !important;
            background: transparent !important;
            color: #f5b400 !important;
            font-size: 31px;
            line-height: 1;
            cursor: pointer;
            opacity: 0.28;
            appearance: none;
            -webkit-appearance: none;
            transition: opacity 0.15s ease, transform 0.15s ease;
        }

        .pvf-rating-star:hover,
        .pvf-rating-star.is-active {
            opacity: 1;
        }

        .pvf-rating-star:hover {
            transform: translateY(-1px) scale(1.03);
        }

        .pvf-rating-star:focus-visible {
            outline: 2px solid #111111;
            outline-offset: 3px;
            border-radius: 8px;
        }

        .pvf-comment-rating {
            color: #444444;
            letter-spacing: 1px;
            font-weight: 800;
        }

        .pvf-comment-rating-stars {
            color: #f5b400;
        }


        .pvf-social-btn {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 3px;
            min-height: 68px;
            padding: 10px 14px;
            border: 1px solid #e6e6e6;
            border-radius: 14px;
            background: #f8f8f8;
            color: #111111;
            font-size: 16px;
            font-weight: 800;
            cursor: pointer;
            transition: all 0.2s ease;
            appearance: none;
            -webkit-appearance: none;
        }

        .pvf-social-btn:hover {
            background: #111111;
            border-color: #111111;
            color: #ffffff;
        }

        .pvf-social-btn.is-loading {
            pointer-events: none;
            opacity: 0.65;
        }

        .pvf-like-button {
            background: #fdf1f3;
            border-color: #f6d7dd;
            color: #b83252;
        }

        .pvf-like-button .pvf-social-icon {
            color: #cc3d5c;
        }

        .pvf-like-button:hover {
            background: #f7dfe4;
            border-color: #efc2cb;
            color: #9f2745;
        }

        .pvf-like-button.is-liked {
            background: #f7d9df;
            color: #8a1f2d;
            border-color: #efbcc6;
            opacity: 1;
        }

        .pvf-like-button.is-liked:hover {
            background: #f7e4e7;
            color: #8a1f2d;
            border-color: #f1cbd1;
        }


        .pvf-social-topline {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 7px;
            line-height: 1;
        }

        .pvf-social-label {
            font-size: 13px;
            font-weight: 800;
            line-height: 1.1;
            margin-bottom: 4px;
        }

        .pvf-social-icon {
            font-size: 21px;
            line-height: 1;
        }

        .pvf-social-number {
            font-size: 16px;
            line-height: 1;
        }

        .pvf-comments-modal {
            display: none;
        }

        .pvf-comments-modal.is-open {
            display: block;
        }

        .pvf-comments-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.48);
            z-index: 99998;
        }

        .pvf-comments-dialog {
            position: fixed;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: min(92vw, 620px);
            max-height: 82vh;
            overflow-y: auto;
            background: #ffffff;
            border-radius: 18px;
            padding: 22px;
            box-sizing: border-box;
            z-index: 99999;
            box-shadow: 0 18px 60px rgba(0,0,0,0.25);
        }

        .pvf-comments-dialog h3 {
            margin: 0 38px 16px 0;
            font-size: 22px;
            line-height: 1.25;
        }

        .pvf-comments-close {
            position: absolute;
            right: 14px;
            top: 12px;
            width: 34px;
            height: 34px;
            border: none;
            background: transparent;
            color: #111111;
            font-size: 30px;
            line-height: 1;
            cursor: pointer;
            padding: 0;
        }

        .pvf-comments-list {
            display: flex;
            flex-direction: column;
            gap: 10px;
            margin-bottom: 14px;
        }

        .pvf-comment-item {
            padding: 13px 14px;
            background: #f7f7f7;
            border-radius: 12px;
        }

        .pvf-comment-author-wrap {
            display:flex;
            align-items:center;
            gap:10px;
            min-width:0;
        }

        .pvf-comment-avatar {
            width:38px !important;
            height:38px !important;
            min-width:38px !important;
            min-height:38px !important;
            max-width:38px !important;
            max-height:38px !important;
            aspect-ratio:1 / 1 !important;
            border-radius:50% !important;
            object-fit:cover !important;
            flex:0 0 38px !important;
            display:block;
        }

        .pvf-comment-author-wrap > a:not(.pvf-comment-author) {
            display:block;
            flex:0 0 38px;
            width:38px;
            height:38px;
            line-height:0;
            border-radius:50%;
            overflow:hidden;
        }

        .pvf-comment-avatar-fallback {
            display:flex;
            align-items:center;
            justify-content:center;
            background:#f1f1f1;
            font-size:18px;
            line-height:1;
        }

        .pvf-comment-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            margin-bottom: 6px;
        }

        .pvf-comment-author {
            font-weight: 800;
            color: #111111;
        }

        a.pvf-comment-author {
            text-decoration:none;
        }

        a.pvf-comment-author:hover,
        a.pvf-comment-author:focus {
            text-decoration:underline;
        }

        .pvf-comment-date {
            font-size: 12px;
            color: #777777;
            white-space: nowrap;
        }

        .pvf-comment-text {
            margin: 0;
            color: #222222;
            line-height: 1.45;
            white-space: pre-wrap;
        }

        .pvf-comment-actions {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-top: 10px;
        }

        .pvf-comment-like-button {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            padding: 6px 9px;
            border: 1px solid #e5e5e5;
            border-radius: 999px;
            background: #ffffff;
            color: #444444;
            font-size: 12px;
            font-weight: 800;
            line-height: 1;
            cursor: pointer;
            appearance: none;
            -webkit-appearance: none;
            transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
        }

        .pvf-comment-like-button:hover {
            background: #fdf1f3;
            border-color: #f6d7dd;
            color: #b83252;
        }

        .pvf-comment-like-button.is-liked {
            background: #f7d9df;
            border-color: #efbcc6;
            color: #8a1f2d;
        }

        .pvf-comment-like-button.is-loading {
            pointer-events: none;
            opacity: 0.65;
        }

        .pvf-comment-like-icon {
            font-size: 15px;
            line-height: 1;
        }


        .pvf-comments-empty,
        .pvf-comments-loading {
            margin: 0;
            padding: 14px;
            background: #f7f7f7;
            border-radius: 12px;
            text-align: center;
            color: #555555;
        }

        .pvf-comments-disabled {
            margin: 8px 0 0 0;
            padding: 13px 14px;
            background: #fff7e6;
            border: 1px solid #f0d9a7;
            border-radius: 12px;
            text-align: center;
            color: #6b4b00;
            font-weight: 800;
        }

        .pvf-add-comment-toggle {
            width: 100%;
            margin: 4px 0 0 0;
            padding: 11px 14px;
            border: 1px solid #111111;
            border-radius: 12px;
            background: #111111;
            color: #ffffff;
            font-weight: 800;
            cursor: pointer;
        }

        .pvf-comment-form {
            margin-top: 14px;
            padding-top: 14px;
            border-top: 1px solid #ededed;
        }

        .pvf-comment-form label {
            display: block;
            margin-bottom: 12px;
            font-weight: 700;
            color: #111111;
        }

        .pvf-comment-form input,
        .pvf-comment-form textarea {
            display: block;
            width: 100%;
            margin-top: 6px;
            padding: 11px 12px;
            border: 1px solid #dddddd;
            border-radius: 10px;
            font-size: 15px;
            box-sizing: border-box;
        }

        .pvf-comment-form-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
        }

        .pvf-comment-help {
            font-size: 12px;
            color: #777777;
        }

        .pvf-comment-form button[type="submit"] {
            padding: 10px 16px;
            border: 1px solid #111111;
            border-radius: 999px;
            background: #111111;
            color: #ffffff;
            font-weight: 800;
            cursor: pointer;
        }

        .pvf-comment-message {
            margin: 10px 0 0 0;
            font-weight: 700;
        }

        .pvf-comment-message.is-pending-success {
            margin: 18px 0 0 0;
            padding: 18px 16px;
            border: 2px solid #1f7a4d;
            border-radius: 14px;
            background: #edf8f2;
            color: #145a39;
            text-align: center;
            font-size: 16px;
            line-height: 1.45;
        }

        .pvf-comment-message.is-pending-success strong {
            display: block;
            margin-bottom: 5px;
            font-size: 18px;
        }

        .pvf-like-ranking {
            width: 100%;
            max-width: none;
            margin: 26px 0;
            padding: 22px;
            background: #ffffff;
            border: 1px solid #e7e7e7;
            border-radius: 20px;
            box-sizing: border-box;
            box-shadow: 0 8px 24px rgba(0,0,0,0.04);
        }

        .pvf-like-ranking-title {
            margin: 0 0 18px 0;
            font-size: 22px;
            line-height: 1.25;
            text-align: center;
        }

        .pvf-like-ranking-list {
            margin: 0;
            padding-left: 0;
            list-style: none;
            counter-reset: pvf-like-rank;
            display: grid;
            gap: 10px;
        }

        .pvf-like-ranking-item {
            counter-increment: pvf-like-rank;
            margin: 0;
        }

        .pvf-like-ranking-link {
            display: grid;
            grid-template-columns: 38px minmax(0, 1fr);
            align-items: center;
            gap: 13px;
            width: 100%;
            padding: 14px;
            background: linear-gradient(135deg, #fafafa 0%, #f3f3f3 100%);
            border: 1px solid #eeeeee;
            border-radius: 16px;
            color: #111111;
            text-decoration: none !important;
            box-sizing: border-box;
            transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
        }

        .pvf-like-ranking-link:hover {
            background: #111111;
            color: #ffffff;
            text-decoration: none !important;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(0,0,0,0.12);
        }

        .pvf-like-ranking-rank {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 34px;
            height: 34px;
            border-radius: 999px;
            background: #ffffff;
            color: #111111;
            font-size: 14px;
            font-weight: 900;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        }

        .pvf-like-ranking-rank:before {
            content: counter(pvf-like-rank);
        }

        .pvf-like-ranking-content {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            min-width: 0;
        }

        .pvf-like-ranking-name {
            display: block;
            min-width: 0;
            font-weight: 800;
            line-height: 1.25;
            overflow-wrap: anywhere;
        }

        .pvf-like-ranking-count {
            flex: 0 0 auto;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            padding: 7px 10px;
            border-radius: 999px;
            background: #fff0f2;
            color: #b51f35;
            font-size: 14px;
            font-weight: 900;
            line-height: 1;
            white-space: nowrap;
        }

        .pvf-like-ranking-link:hover .pvf-like-ranking-count {
            background: rgba(255,255,255,0.14);
            color: #ffffff;
        }

        .pvf-like-ranking-heart {
            font-size: 16px;
            line-height: 1;
        }

        .pvf-like-ranking-toggle {
            display: block;
            margin: 14px auto 0;
            padding: 4px 0;
            border: 0;
            background: transparent;
            color: inherit;
            font: inherit;
            font-weight: 800;
            text-decoration: underline;
            text-underline-offset: 3px;
            cursor: pointer;
        }

        .pvf-like-ranking-toggle:hover {
            text-decoration-thickness: 2px;
        }

        .pvf-like-empty {
            text-align: center;
            font-weight: 600;
        }

        @media (max-width: 600px) {
            .pvf-social-box {
                margin: 18px 0;
                padding: 13px 14px;
                border-radius: 14px;
            }

            .pvf-social-actions {
                gap: 8px;
            }

            .pvf-choice-grid {
                grid-template-columns: 1fr;
            }

            .pvf-social-btn {
                min-height: 44px;
                padding: 10px;
                border-radius: 12px;
            }

            .pvf-comments-dialog {
                width: 92vw;
                max-height: 84vh;
                padding: 18px;
                border-radius: 16px;
            }

            .pvf-comment-head {
                align-items: flex-start;
                flex-direction: column;
                gap: 2px;
            }

            .pvf-comment-form-footer {
                align-items: stretch;
                flex-direction: column;
            }

            .pvf-comment-form button[type="submit"] {
                width: 100%;
            }

            .pvf-like-ranking {
                margin: 22px 0;
                padding: 14px;
                border-radius: 18px;
            }

            .pvf-like-ranking-title {
                font-size: 20px;
                margin-bottom: 14px;
            }

            .pvf-like-ranking-list {
                gap: 9px;
            }

            .pvf-like-ranking-link {
                grid-template-columns: 32px minmax(0, 1fr);
                gap: 11px;
                padding: 12px;
                border-radius: 14px;
            }

            .pvf-like-ranking-rank {
                width: 30px;
                height: 30px;
                font-size: 13px;
            }

            .pvf-like-ranking-content {
                align-items: flex-start;
                flex-direction: column;
                gap: 8px;
            }

            .pvf-like-ranking-name {
                font-size: 16px;
                line-height: 1.25;
            }

            .pvf-like-ranking-count {
                padding: 6px 9px;
                font-size: 13px;
            }
        }
    
