/* Espace membre — styles communs (sortis de la page en 3.11.9, audit 20/10 D-03 : même contenu, même place, gardé en cache par le navigateur) */
        .pvf-member-box,
        .pvf-dashboard,
        .pvf-via-member-bar,
        .pvf-login-modal {
            font-family: inherit;
        }

        .pvf-member-box {
            background: #fff;
            border: 1px solid #dfe5db;
            border-radius: 18px;
            padding: 22px;
            box-sizing: border-box;
        }

        .pvf-member-box-title {
            font-size: 22px;
            line-height: 1.2;
            font-weight: 800;
            color: #111;
            margin-bottom: 10px;
        }

        .pvf-member-box p {
            margin: 0 0 16px;
            line-height: 1.55;
        }

        .pvf-member-login-form {
            display: flex;
            gap: 10px;
            align-items: stretch;
        }

        .pvf-member-login-form input[type="email"] {
            flex: 1;
            min-width: 0;
            border: 1px solid #cfd7ca;
            border-radius: 999px;
            padding: 12px 16px;
            font: inherit;
            box-sizing: border-box;
        }

        .pvf-member-login-form button,
        .pvf-member-main-btn {
            border: 0;
            border-radius: 999px;
            background: #5f7f44;
            color: #fff !important;
            padding: 12px 18px;
            font: inherit;
            font-weight: 800;
            text-decoration: none !important;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }

        .pvf-member-small {
            margin-top: 10px;
            font-size: 12px;
            color: #777;
        }

        .pvf-member-success,
        .pvf-member-error {
            border-radius: 12px;
            padding: 11px 13px;
            margin-bottom: 14px;
            font-weight: 700;
            font-size: 14px;
        }

        .pvf-member-success {
            background: #eef7e8;
            color: #43612f;
        }

        .pvf-account-delete {
            margin: 28px 0 0;
        }

        .pvf-account-delete details {
            border: 1px solid #f0c9c9;
            border-radius: 14px;
            background: #fff8f8;
        }

        .pvf-account-delete summary {
            cursor: pointer;
            padding: 12px 16px;
            color: #9b2424;
            font-weight: 800;
            font-size: 14px;
        }

        .pvf-account-delete-body {
            padding: 0 16px 16px;
        }

        .pvf-account-delete-body p,
        .pvf-account-delete-note {
            margin: 0 0 10px !important;
            text-align: left !important;
            font-size: 14px;
            line-height: 1.45;
        }

        .pvf-account-delete-legal {
            color: #6b6b6b;
            font-size: 13px !important;
        }

        .pvf-account-delete-form label {
            display: block;
            margin: 6px 0;
            font-size: 14px;
        }

        .pvf-account-delete-form input[type="text"] {
            display: block;
            width: 100%;
            max-width: 260px;
            margin: 0 0 10px !important;
            padding: 9px 12px !important;
            border: 1px solid #e0b4b4 !important;
            border-radius: 10px !important;
            background: #fff !important;
            text-transform: uppercase;
        }

        .pvf-account-delete-btn {
            all: unset;
            box-sizing: border-box;
            cursor: pointer;
            display: inline-block;
            padding: 10px 16px;
            border-radius: 10px;
            background: #b42318 !important;
            color: #fff !important;
            font-weight: 800;
            font-size: 14px;
        }

        .pvf-account-delete-btn:focus-visible {
            outline: 2px solid #7a1a12;
            outline-offset: 2px;
        }

        .pvf-cgu-check,
        .pvf-cgu-check span {
            text-transform: none !important;
            letter-spacing: normal !important;
            font-weight: 400 !important;
            font-size: 13px !important;
            line-height: 1.45 !important;
            color: #4a4f57;
        }

        .pvf-cgu-check {
            display: flex !important;
            align-items: flex-start;
            gap: 8px;
            margin: 4px 0 12px !important;
            text-align: left;
            cursor: pointer;
        }

        .pvf-cgu-check a {
            text-transform: none !important;
            letter-spacing: normal !important;
            text-decoration: underline;
        }

        .pvf-cgu-check input {
            flex: 0 0 auto;
            margin: 2px 0 0 !important;
        }

        .pvf-member-privacy-note {
            margin: 12px 0 0 !important;
            color: #7b8190;
            font-size: 12px;
            line-height: 1.45;
            text-align: left !important;
        }

        .pvf-cgu-banner {
            margin: 0 0 18px;
            padding: 14px 16px;
            border: 1px solid #f0d58a;
            border-radius: 14px;
            background: #fff8e6;
            color: #4d3d10;
            text-align: left;
        }

        .pvf-cgu-banner p {
            margin: 0 0 10px !important;
            text-align: left !important;
            font-size: 14px;
        }

        .pvf-cgu-banner ul.pvf-cgu-changes {
            margin: 0 0 10px 18px !important;
            padding: 0 !important;
            font-size: 13.5px;
            line-height: 1.5;
            text-align: left;
        }

        .pvf-cgu-banner button {
            all: unset;
            box-sizing: border-box;
            cursor: pointer;
            display: inline-block;
            margin-top: 8px;
            padding: 9px 15px;
            border-radius: 10px;
            background: #5b7a3a !important;
            color: #fff !important;
            font-weight: 800;
            font-size: 14px;
        }

        .pvf-member-spam-hint {
            margin: 0 0 14px !important;
            padding: 10px 13px;
            border-radius: 12px;
            background: #fff8e6;
            color: #6b5314;
            font-size: 14px;
            line-height: 1.4;
            text-align: left !important;
        }

        .pvf-profile-pseudo-hint {
            display: block;
            margin: -4px 0 12px;
            color: #8a6d1f;
            font-size: 13px;
            font-weight: 700;
        }

        #pvf-pseudo::placeholder {
            color: #9aa29a;
            opacity: 1;
        }

        .pvf-member-error {
            background: #fff0f0;
            color: #9b2424;
        }

        .pvf-via-member-bar {
            display: flex;
            flex-wrap: wrap;
            gap: 9px;
            align-items: center;
            justify-content: center;
            padding: 11px;
            margin: 0 0 20px;
            background: #f5f8f2;
            border: 1px solid #dce7d5;
            border-radius: 16px;
        }

        .pvf-via-action,
        .pvf-via-space-link {
            appearance: none;
            border: 1px solid #cfd9c8;
            border-radius: 999px;
            background: #fff;
            color: #25301f !important;
            min-height: 42px;
            padding: 9px 14px;
            font: inherit;
            font-size: 14px;
            font-weight: 800;
            text-decoration: none !important;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 7px;
            box-sizing: border-box;
        }

        /* Survol cohérent avec l'identité PVF : vert très clair, jamais gris/noir. */
        .pvf-via-action:not(.is-active):hover,
        .pvf-via-space-link:hover {
            border-color: #5f7f44 !important;
            background: #eef4e9 !important;
            color: #25301f !important;
        }

        .pvf-via-action.is-active:hover {
            border-color: #4f6d3a !important;
            background: #4f6d3a !important;
            color: #fff !important;
        }

        /* Évite le flash gris/noir de Safari au toucher et garde le style PVF. */
        .pvf-via-action,
        .pvf-via-space-link {
            -webkit-tap-highlight-color: transparent;
            -webkit-touch-callout: none;
        }

        .pvf-via-action:focus,
        .pvf-via-action:focus-visible,
        .pvf-via-action:active,
        .pvf-via-space-link:focus,
        .pvf-via-space-link:focus-visible,
        .pvf-via-space-link:active {
            outline: none;
            box-shadow: none;
        }

        .pvf-via-action:not(.is-active):active,
        .pvf-via-action:not(.is-active):focus {
            border-color: #5f7f44 !important;
            background: #eef4e9 !important;
            color: #25301f !important;
        }

        .pvf-via-action.is-active:active,
        .pvf-via-action.is-active:focus {
            border-color: #4f6d3a !important;
            background: #4f6d3a !important;
            color: #fff !important;
        }

        .pvf-via-action.is-active {
            background: #5f7f44;
            border-color: #5f7f44;
            color: #fff !important;
        }

        .pvf-action-icon {
            font-size: 19px;
            line-height: 1;
        }

        .pvf-via-space-link {
            margin-left: 0;
        }

        .pvf-login-modal {
            display: none;
            position: fixed;
            inset: 0;
            z-index: 999999;
            align-items: center;
            justify-content: center;
            padding: 20px;
            box-sizing: border-box;
        }

        .pvf-login-modal.is-open {
            display: flex;
        }

        .pvf-login-modal-overlay {
            position: absolute;
            inset: 0;
            background: rgba(0,0,0,.58);
        }

        .pvf-login-modal-card {
            position: relative;
            z-index: 2;
            width: min(100%, 580px);
            max-height: 90vh;
            overflow: auto;
            background: #fff;
            border-radius: 22px;
            padding: 26px;
            box-sizing: border-box;
            box-shadow: 0 25px 80px rgba(0,0,0,.28);
        }

        .pvf-login-modal-card > .pvf-member-box {
            padding: 0;
            border: 0;
        }


        .pvf-login-modal-close {
            position: absolute;
            right: 12px;
            top: 12px;
            width: 36px;
            height: 36px;
            padding: 0;
            border: 0;
            border-radius: 50%;
            background: #f0f0f0;
            color: #222;
            font-size: 24px;
            line-height: 36px;
            cursor: pointer;
        }

        body.pvf-member-modal-open {
            overflow: hidden;
        }

        .pvf-dashboard {
            width: 100%;
        }

        /* V2.50 — évite la grande zone blanche sous un onglet court de Mon espace.
           Le thème peut imposer une hauteur minimale à la zone de contenu. */
        body:has(.pvf-dashboard) #content,
        body:has(.pvf-dashboard) .site-content,
        body:has(.pvf-dashboard) .content-area,
        body:has(.pvf-dashboard) main,
        body:has(.pvf-dashboard) .site-main {
            min-height: 0 !important;
        }
        body:has(.pvf-dashboard) .pvf-dashboard {
            min-height: 0 !important;
            height: auto !important;
            padding-bottom: 0 !important;
            margin-bottom: 0 !important;
        }

        .pvf-dashboard-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 20px;
            margin-bottom: 24px;
        }

        .pvf-dashboard-kicker {
            color: #5f7f44;
            font-size: 12px;
            font-weight: 900;
            letter-spacing: .08em;
            margin-bottom: 5px;
        }

        .pvf-dashboard-head h2 {
            margin: 0;
            font-size: clamp(26px, 4vw, 38px);
            line-height: 1.1;
        }

        .pvf-dashboard-email {
            color: #777;
            margin-top: 7px;
            font-size: 14px;
        }

        .pvf-dashboard-logout {
            border: 1px solid #ddd;
            border-radius: 999px;
            padding: 9px 14px;
            color: #444 !important;
            text-decoration: none !important;
            font-size: 13px;
            font-weight: 700;
            white-space: nowrap;
        }

        .pvf-dashboard-stats {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 14px;
            margin-bottom: 30px;
        }

        .pvf-stat-card {
            background: #f5f8f2;
            border: 1px solid #dce7d5;
            border-radius: 18px;
            padding: 20px;
            text-align: center;
        }

        .pvf-stat-card span {
            display: block;
            font-size: 24px;
            margin-bottom: 5px;
        }

        .pvf-stat-card strong {
            display: block;
            font-size: 30px;
            line-height: 1;
            color: #4f6d3a;
        }

        .pvf-stat-card small {
            display: block;
            margin-top: 7px;
            color: #555;
            font-weight: 700;
        }

        .pvf-stat-coming {
            opacity: .72;
        }

        .pvf-dashboard-tabs { display:flex; align-items:center; gap:8px; margin:0 0 22px; padding:7px; background:#f5f8f2; border:1px solid #dce7d5; border-radius:18px; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
        .pvf-dashboard-tabs::-webkit-scrollbar { display:none; }
        .pvf-dashboard-tab { flex:1 0 auto; appearance:none; border:1px solid transparent; border-radius:999px; background:transparent; color:#405237; padding:10px 15px; font:inherit; font-size:14px; font-weight:800; white-space:nowrap; cursor:pointer; transition:background .18s ease,color .18s ease,border-color .18s ease; -webkit-tap-highlight-color:transparent; }
        .pvf-dashboard-tab:hover { background:#e7f0e0; border-color:#c6d7ba; color:#365229; }
        .pvf-dashboard-tab.is-active { background:#5f7f44; border-color:#5f7f44; color:#fff; }
        .pvf-dashboard-panel { display:none; }
        .pvf-dashboard-panel.is-active { display:block; animation:pvfPanelIn .22s ease; }
        @keyframes pvfPanelIn { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }
        .pvf-dashboard-welcome { padding:24px; border:1px solid #dce7d5; border-radius:18px; background:#fff; }
        .pvf-dashboard-welcome h3 { margin:0 0 8px; }
        .pvf-dashboard-welcome p { margin:0; color:#666; }
        .pvf-dashboard-shortcuts { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
        .pvf-dashboard-shortcuts button { border:1px solid #cfd9c8; border-radius:999px; background:#f5f8f2; color:#405237; padding:9px 14px; font:inherit; font-weight:800; cursor:pointer; -webkit-tap-highlight-color:transparent; }
        .pvf-dashboard-shortcuts button:hover { background:#e7f0e0; border-color:#5f7f44; }

        .pvf-dashboard-section {
            margin: 30px 0;
        }

        .pvf-dashboard-section h3 {
            font-size: 22px;
            margin-bottom: 14px;
        }

        .pvf-dashboard-empty {
            border: 1px dashed #d3d3d3;
            border-radius: 15px;
            padding: 20px;
            color: #666;
        }

        .pvf-points-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
        .pvf-points-date { display:block; margin-top:4px; color:#7a8175; font-size:12px; font-weight:500; }
        .pvf-points-head h3 { margin:0 0 6px; }
        .pvf-points-head p { margin:0; color:#666; max-width:680px; }
        .pvf-points-total { min-width:120px; padding:16px 20px; border:1px solid #dce7d5; border-radius:16px; background:#f5f8f2; text-align:center; }
        .pvf-points-total strong { display:block; color:#4f6d3a; font-size:32px; line-height:1; }
        .pvf-points-total span { display:block; margin-top:6px; font-weight:800; color:#555; }
        .pvf-points-history { border:1px solid #e2e7df; border-radius:16px; overflow:hidden; background:#fff; }
        .pvf-points-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 16px; border-bottom:1px solid #edf0eb; }
        .pvf-points-row:last-child { border-bottom:0; }
        .pvf-points-row-main { display:flex; flex-direction:column; gap:3px; min-width:0; }
        .pvf-points-row-main a, .pvf-points-row-main span { color:#666; font-size:14px; }
        .pvf-points-earned { flex:0 0 auto; color:#4f6d3a; font-size:17px; }
        .pvf-stat-card[data-pvf-open-tab],
        .pvf-stat-card[data-pvf-open-share] { cursor:pointer; }

        .pvf-stat-share{
            appearance:none !important;
            -webkit-appearance:none !important;
            font:inherit !important;
            color:inherit !important;
            text-decoration:none !important;
            cursor:pointer;
        }
        .pvf-stat-share:hover,
        .pvf-stat-share:focus{
            color:inherit !important;
            text-decoration:none !important;
        }
        .pvf-stat-share > strong{
            line-height:1.15 !important;
        }
        .pvf-share-modal{
            display:none;
            position:fixed;
            inset:0;
            z-index:999999;
            align-items:center;
            justify-content:center;
            padding:18px;
            box-sizing:border-box;
        }
        .pvf-share-modal.is-open{display:flex}
        .pvf-share-modal-backdrop{
            position:absolute;
            inset:0;
            background:rgba(0,0,0,.48);
        }
        .pvf-share-modal-card{
            position:relative;
            z-index:1;
            width:min(430px,100%);
            padding:24px;
            border-radius:20px;
            background:#fff;
            box-shadow:0 20px 60px rgba(0,0,0,.22);
            text-align:center;
            box-sizing:border-box;
        }
        .pvf-share-modal-close{
            position:absolute;
            top:10px;
            right:12px;
            width:34px;
            height:34px;
            padding:0;
            border:0;
            background:transparent;
            color:#555;
            font-size:27px;
            line-height:1;
            cursor:pointer;
        }
        .pvf-share-modal-icon{font-size:28px;line-height:1;margin-bottom:8px}
        /* V3.38 — Story Instagram */
        .pvf-share-modal-card{max-height:calc(100vh - 36px);overflow:auto}
        .pvf-share-modal button.pvf-story-open{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;width:100%;margin:0 0 12px;padding:13px 14px;border-radius:14px;background:linear-gradient(135deg,#4f6d3a,#3f5a2e);color:#fff;text-align:left;font-family:inherit}
        .pvf-story-open > span{font-size:26px;line-height:1}
        .pvf-story-open strong{flex:1;min-width:0;font-size:15px;font-weight:800;line-height:1.25;color:#fff}
        .pvf-story-open strong small{display:block;margin-top:3px;font-size:12px;font-weight:600;color:#dbe9cf}
        .pvf-story-open > b{font-size:22px;line-height:1;color:#fff}
        .pvf-share-modal-card.is-story > :not(.pvf-story):not(.pvf-share-modal-close):not(script){display:none!important}
        .pvf-story{text-align:left}
        .pvf-story[hidden]{display:none!important}
        .pvf-share-modal .pvf-story-back{all:unset;cursor:pointer;display:inline-block;margin:0 0 6px;font-size:13px;font-weight:800;color:#4f6d3a}
        .pvf-story h3{margin:0 0 4px!important;font-size:19px!important}
        .pvf-story .pvf-story-intro{margin:0 0 12px!important;font-size:13px;color:#5f6b58;line-height:1.4;text-align:left!important}
        .pvf-story-main{display:flex;gap:14px;align-items:flex-start;margin-bottom:10px}
        .pvf-story-canvas{flex:0 0 132px;width:132px!important;height:235px!important;border-radius:12px;background:#26331f;box-shadow:0 6px 18px rgba(0,0,0,.18)}
        .pvf-story-side{flex:1;min-width:0}
        .pvf-story-label{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:#26331f}
        .pvf-story-seg{display:flex;flex-direction:column;gap:6px}
        .pvf-share-modal .pvf-story-seg > button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;border:1px solid #d9e4d2;background:#fff;color:#365229;font-family:inherit;font-size:15px;font-weight:900}
        .pvf-share-modal .pvf-story-seg > button small{font-size:12px;font-weight:700;color:#6b7865}
        .pvf-share-modal .pvf-story-seg > button.is-on{background:#4f6d3a;border-color:#4f6d3a;color:#fff}
        .pvf-share-modal .pvf-story-seg > button.is-on small{color:#dbe9cf}
        .pvf-story .pvf-story-small{margin:8px 0 0!important;font-size:11.5px;color:#6b7865;line-height:1.35;text-align:left!important}
        .pvf-share-modal button.pvf-story-btn{all:unset;box-sizing:border-box;cursor:pointer;display:block;width:100%;margin-top:8px;padding:12px;border-radius:999px;border:1px solid #d9e4d2;background:#fff;color:#365229;font-family:inherit;font-size:14px;font-weight:800;text-align:center}
        .pvf-share-modal button.pvf-story-btn.is-main{background:#ee7d1a;border-color:#ee7d1a;color:#fff}
        .pvf-share-modal button.pvf-story-btn[hidden]{display:none!important}
        .pvf-story .pvf-story-small[hidden]{display:none!important}
        .pvf-referral-story{display:flex;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#f1f5ec,#e6efdd);border:1px solid #d9e4d2}
        .pvf-referral-story > span{font-size:26px;line-height:1}
        .pvf-referral-story p{flex:1;min-width:0;margin:0!important;font-size:12.5px;line-height:1.4;color:#5f6b58;text-align:left!important}
        .pvf-referral-story p strong{display:block;margin-bottom:2px;font-size:14px;color:#26331f}
        .pvf-referral-story .pvf-referral-btn{flex:0 0 auto;white-space:nowrap}
        @media(max-width:480px){.pvf-referral-story{flex-wrap:wrap}.pvf-referral-story .pvf-referral-btn{width:100%}}
        .pvf-story-link{display:flex;align-items:center;gap:8px;margin-top:12px;padding:9px 10px;border-radius:12px;background:#f6f9f3;border:1px solid #e1e8da}
        .pvf-story-link code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none;padding:0;font-size:12px;color:#365229}
        .pvf-share-modal .pvf-story-link button{all:unset;cursor:pointer;font-size:13px;font-weight:800;color:#4f6d3a}
        .pvf-story .pvf-story-tip{margin:10px 0 0!important;font-size:12px;color:#6b7865;line-height:1.4;text-align:left!important}
        .pvf-story .pvf-story-feedback{margin:8px 0 0!important;font-size:12.5px;font-weight:700;color:#1e7e34;text-align:left!important}
        .pvf-story .pvf-story-feedback:empty{display:none}
        .pvf-share-modal-card h3{margin:0 0 6px;font-size:21px}
        .pvf-share-modal-card > p{margin:0 0 18px;color:#70766d;font-size:13px}
        .pvf-share-modal-actions{
            display:grid;
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:9px;
        }
        .pvf-share-choice{
            min-height:68px;
            padding:10px 8px;
            border:1px solid #dce7d5 !important;
            border-radius:13px !important;
            background:#f5f8f2 !important;
            color:#405237 !important;
            font:inherit;
            text-decoration:none !important;
            display:flex;
            flex-direction:column;
            align-items:center;
            justify-content:center;
            gap:4px;
            cursor:pointer;
            box-sizing:border-box;
        }
        .pvf-share-choice:hover{background:#eaf2e5 !important}
        .pvf-share-choice span{font-size:19px;line-height:1}
        .pvf-share-choice strong{font-size:12px;line-height:1.2}
        .pvf-share-modal-feedback{
            min-height:18px;
            margin-top:12px;
            color:#5f7f44;
            font-size:12px;
            font-weight:800;
        }
        @media(max-width:700px){
            .pvf-share-modal{align-items:flex-end;padding:12px}
            .pvf-share-modal-card{width:100%;border-radius:20px;padding:22px 16px 18px}
        }

        /* V2.60 — la carte Partager doit être STRICTEMENT identique aux autres cartes.
           Le thème applique son propre style sombre aux <button>, on le neutralise ici. */
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share{
            display:flex !important;
            flex-direction:column !important;
            align-items:center !important;
            justify-content:center !important;
            width:100% !important;
            min-width:0 !important;
            height:auto !important;
            margin:0 !important;
            padding:20px !important;
            box-sizing:border-box !important;
            background:#f5f8f2 !important;
            background-image:none !important;
            border:1px solid #dce7d5 !important;
            border-radius:18px !important;
            box-shadow:none !important;
            color:inherit !important;
            text-align:center !important;
            text-transform:none !important;
            letter-spacing:normal !important;
            line-height:normal !important;
            font-family:inherit !important;
            font-weight:inherit !important;
        }
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share:hover,
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share:focus,
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share:active{
            background:#f5f8f2 !important;
            background-image:none !important;
            border-color:#dce7d5 !important;
            box-shadow:none !important;
            transform:none !important;
        }
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share .pvf-share-icon{
            display:block !important;
            margin:0 0 5px !important;
            padding:0 !important;
            font-size:24px !important;
            line-height:1 !important;
        }
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > strong{
            display:block !important;
            margin:0 !important;
            padding:0 !important;
            font-size:30px !important;
            line-height:1 !important;
            color:#4f6d3a !important;
            font-weight:700 !important;
            text-transform:none !important;
        }
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > small{
            display:block !important;
            margin:7px 0 0 !important;
            padding:0 !important;
            color:#555 !important;
            font-size:inherit !important;
            line-height:normal !important;
            font-weight:700 !important;
            text-transform:none !important;
        }
        @media(max-width:700px){
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share{
                min-height:112px !important;
                padding:10px 7px !important;
            }
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share .pvf-share-icon{
                font-size:18px !important;
                margin-bottom:3px !important;
            }
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > strong{
                font-size:30px !important;
            }
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > small{
                margin-top:3px !important;
                font-size:11px !important;
            }
        }

        .pvf-public-profile-access{
            margin:0 0 18px;
        }
        .pvf-public-profile-access a,
        .pvf-public-profile-access button,
        .pvf-public-profile-access span{
            display:inline-flex;
            align-items:center;
            gap:7px;
            padding:9px 13px;
            border-radius:999px;
            background:#f5f8f2;
            border:1px solid #dce7d5;
            color:#405237;
            font-size:13px;
            font-weight:800;
            text-decoration:none !important;
        }
        .pvf-public-profile-access button{
            font-family:inherit;
            cursor:pointer;
        }
        .pvf-public-profile-access a:hover,
        .pvf-public-profile-access button:hover{
            background:#eaf2e5;
        }
        .pvf-public-profile-access .pvf-copy-profile-feedback{
            display:inline-block;
            margin-left:8px;
            padding:0;
            border:0;
            background:transparent;
            color:#5f7f44;
            font-size:12px;
            font-weight:800;
        }
        .pvf-dashboard-tab.pvf-extra-tab { display:none !important; }
        .pvf-member-activity-list { display:grid; gap:12px; }
        .pvf-member-activity-item { padding:14px 15px; border:1px solid #e1e7dc; border-radius:13px; background:#fff; }
        .pvf-member-activity-item p { margin:8px 0 0; }
        .pvf-member-activity-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
        .pvf-member-activity-head a { text-decoration:none; }
        .pvf-member-activity-head small { color:#777; white-space:nowrap; }
        .pvf-vote-title-group {
            display:flex;
            align-items:center;
            gap:8px;
            min-width:0;
            flex-wrap:wrap;
        }
        .pvf-vote-title-group .pvf-vote-inline {
            margin-left:0 !important;
        }

        .pvf-vote-inline {
            display:inline-flex;
            align-items:center;
            justify-content:center;
            margin-left:8px;
            padding:3px 8px;
            border-radius:999px;
            background:#eef4e9;
            color:#4f6d3a;
            font-size:13px;
            font-weight:800;
            line-height:1.2;
            white-space:nowrap;
        }

        @media(max-width:600px) { .pvf-member-activity-head { flex-direction:column; gap:3px; } }
        @media (max-width:600px) { .pvf-points-head { align-items:stretch; flex-direction:column; } .pvf-points-total { align-self:flex-start; } }

        .pvf-member-via-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 15px;
        }

        .pvf-member-via-card {
            overflow: hidden;
            border: 1px solid #e3e3e3;
            border-radius: 16px;
            background: #fff;
            color: inherit !important;
            text-decoration: none !important;
            transition: transform .18s ease, border-color .18s ease;
        }

        .pvf-member-via-card:hover {
            transform: translateY(-2px);
            border-color: #5f7f44;
        }

        .pvf-member-via-image {
            aspect-ratio: 16 / 9;
            overflow: hidden;
            background: #eee;
        }

        .pvf-member-via-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .pvf-member-via-placeholder {
            width: 100%;
            height: 100%;
            background: #eee;
        }

        .pvf-member-via-content {
            padding: 13px;
        }

        .pvf-member-via-content strong {
            display: block;
            line-height: 1.25;
        }

        .pvf-member-via-content small {
            display: block;
            margin-top: 6px;
            color: #777;
        }


        .pvf-profile-section {
            background: #fff;
            border: 1px solid #e3e7df;
            border-radius: 18px;
            padding: 20px;
        }

        .pvf-profile-form {
            display: grid;
            grid-template-columns: 170px minmax(0, 1fr);
            gap: 26px;
            align-items: start;
        }

        .pvf-profile-avatar-col { text-align: center; }
        .pvf-profile-avatar {
            width: 140px; height: 140px; margin: 0 auto 12px;
            border-radius: 50%; overflow: hidden; background: #f0f0f0;
            border: 3px solid #eef3ea;
        }
        .pvf-profile-avatar-img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; border-radius: 50%; }
        .pvf-profile-photo-btn {
            display: inline-flex; align-items: center; justify-content: center;
            border: 1px solid #6b874f; border-radius: 999px; padding: 9px 13px;
            color: #4f6d3a; font-size: 13px; font-weight: 800; cursor: pointer;
            background: #f6faf3;
        }
        .pvf-profile-photo-btn:hover { background: #eaf3e4; }
        /* V3.32 — Mon espace allégé : en-tête, 4 boutons, grande case « Mes points ». */
        .pvf-dashboard .pvf-head-v332{display:block!important;margin:0 0 18px!important;padding:0!important;border:0!important;background:transparent!important;text-align:left}
        .pvf-head-v332 .pvf-h2-top{display:flex;align-items:center;gap:14px}
        .pvf-head-v332 .pvf-h2-av{flex:0 0 72px;width:72px;height:72px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 3px #fff,0 0 0 5px #a3c08b}
        .pvf-head-v332 .pvf-h2-av img{display:block;width:72px!important;height:72px!important;max-width:none!important;margin:0!important;object-fit:cover;border-radius:50%}
        .pvf-head-v332 .pvf-h2-txt{min-width:0}
        .pvf-head-v332 .pvf-h2-txt h2{margin:0!important;padding:0!important;font-size:21px!important;line-height:1.2!important;color:#26331f!important;text-align:left!important}
        .pvf-head-v332 .pvf-h2-txt span{display:block;margin-top:3px;font-size:13.5px;font-weight:700;color:#5f6b58}
        .pvf-head-v332 .pvf-h2-acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;max-width:560px}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn{all:unset!important;box-sizing:border-box!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:11px 6px!important;border-radius:999px!important;border:1px solid #d9e4d2!important;background:#fff!important;color:#365229!important;font-family:inherit!important;font-size:13.5px!important;font-weight:800!important;line-height:1.2!important;text-align:center!important;white-space:nowrap!important;text-transform:none!important;letter-spacing:normal!important}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn:hover,.pvf-dashboard .pvf-head-v332 .pvf-h2-btn:focus{background:#f1f5ec!important}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-edit{background:#fff8e1!important;border-color:#f0a531!important;color:#9a5a00!important}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-edit:hover,.pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-edit:focus{background:#ffefc2!important}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-share{background:#4f6d3a!important;border-color:#4f6d3a!important;color:#fff!important}
        .pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-share:hover,.pvf-dashboard .pvf-head-v332 .pvf-h2-btn.is-share:focus{background:#3f5a2e!important}
        .pvf-head-v332 img.emoji{display:inline!important;width:1em!important;height:1em!important;margin:0 .1em!important;box-shadow:none!important}
        /* Doublons avec la barre du bas (Menu des abonnés) : case Messagerie et gros bouton « Ajouter une sortie ». */
        .pvf-dashboard > .pvfc-quick-add,.pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-messages{display:none!important}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-points-wide > span{display:block!important;margin:0!important;font-size:inherit!important;line-height:1.3!important}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-points-wide{grid-column:1/-1!important;order:-1;min-height:0!important;height:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:14px 16px!important;text-align:left!important;background:#fff8e6!important;border:1px solid #f0d9a8!important;cursor:pointer}
        .pvf-stat-points-wide .pvf-spw-l b{display:block;font-size:15px;font-weight:800;color:#26331f}
        .pvf-stat-points-wide .pvf-spw-l em,.pvf-stat-points-wide .pvf-spw-r em{display:block;margin-top:3px;font-style:normal;font-size:12.5px;font-weight:700;color:#8a5a00}
        .pvf-stat-points-wide .pvf-spw-r{text-align:right;flex:0 0 auto}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-points-wide .pvf-spw-r strong{display:block;font-size:28px!important;font-weight:900;line-height:1;color:#b06d00}
        .pvf-logout-row{margin:16px 0 0!important;text-align:left!important}
        .pvf-logout-row a.pvf-logout-btn{display:inline-block;padding:10px 18px;border-radius:999px;border:1px solid #e3c9c6;background:#fff;color:#a8322a!important;font-weight:800;text-decoration:none!important}
        .pvf-logout-row a.pvf-logout-btn:hover{background:#fcf0f1}
        /* V3.61 (audit 04/10, F6) : lien discret « Déconnecter mes autres appareils ». */
        .pvf-logout-others-form{margin:10px 0 0!important;text-align:left!important}
        .pvf-logout-others-form button.pvf-logout-others-btn{display:inline!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:#617054!important;font-size:13px!important;font-weight:600!important;text-decoration:underline!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
        @media(min-width:768px){.pvf-head-v332 .pvf-h2-acts{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}.pvf-head-v332 .pvf-h2-av{flex-basis:88px;width:88px;height:88px}.pvf-head-v332 .pvf-h2-av img{width:88px!important;height:88px!important}.pvf-head-v332 .pvf-h2-txt h2{font-size:25px!important}}
        /* V3.36 — Élément visé par un lien du message de bienvenue : surligné un instant. */
        .pvf-go-hl{outline:3px solid #f5a400!important;outline-offset:4px;border-radius:12px;transition:outline-color .3s}
        /* V3.35 — Ligne « niveau · vias » alignée à gauche comme « Bonjour » ; 4 cases par ligne sur ordinateur. */
        .pvf-dashboard .pvf-head-v332 .pvf-h2-txt,.pvf-dashboard .pvf-head-v332 .pvf-h2-txt span{text-align:left!important}
        @media(min-width:701px){.pvf-dashboard .pvf-dashboard-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
        /* V3.33 — Case Mes points sur 2 lignes (chiffres + « Comment gagner des points ? ») et case Mes statistiques. */
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-points-wide{flex-direction:column!important;align-items:stretch!important;gap:10px!important}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-points-wide > span.pvf-spw-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-points-wide > span.pvf-spw-cta{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;padding:9px 12px!important;border-radius:12px;background:#fff!important;border:1px solid #f0d9a8;font-size:13.5px!important;font-weight:800;color:#9a5a00}
        .pvf-spw-cta b{margin-left:auto;font-size:20px;line-height:1;color:#b06d00}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-statsview{grid-column:1/-1!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:0!important;height:auto!important;padding:14px 16px!important;text-align:left!important;cursor:pointer}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-card.pvf-stat-statsview > span{display:block!important;margin:0!important;font-size:inherit!important;line-height:1.3!important}
        .pvf-stat-statsview .pvf-ssv-l b{display:block;font-size:15px;font-weight:800;color:#26331f}
        .pvf-stat-statsview .pvf-ssv-l em,.pvf-stat-statsview .pvf-ssv-r em{display:block;margin-top:3px;font-style:normal;font-size:12.5px;font-weight:700;color:#5f6b58}
        .pvf-stat-statsview .pvf-ssv-r{text-align:right;flex:0 0 auto}
        .pvf-dashboard .pvf-dashboard-stats .pvf-stat-statsview .pvf-ssv-r strong{display:block;font-size:26px!important;font-weight:900;line-height:1;color:#365229}
        /* Les statistiques n'apparaissent plus dans « Modifier mon profil » ; ouvertes par leur case, sans les onglets du profil. */
        .pvf-dashboard:not([data-pvf-profile-mode="stats"]) [data-pvf-subtab="stats"]{display:none!important}
        .pvf-dashboard[data-pvf-profile-mode="stats"] [data-pvf-profile-subtabs]{display:none!important}
        .pvf-dashboard[data-pvf-focus="profile"][data-pvf-profile-mode="stats"] .pvf-focusbar h2 [data-for="profile"]{display:none!important}
        .pvf-dashboard[data-pvf-focus="profile"][data-pvf-profile-mode="stats"] .pvf-focusbar h2 [data-for="stats"]{display:inline!important}
        /* Onglets Photos / Commentaires / Ressentis et Réglages : sur téléphone, icône au-dessus du mot (plus de débordement). */
        @media(max-width:600px){
            .pvf-contrib-tabs,.pvf-settings-tabs{border-radius:18px!important}
            .pvf-dashboard .pvf-contrib-tab,.pvf-dashboard .pvf-settings-tab{flex-direction:column!important;gap:2px!important;padding:8px 2px!important;border-radius:14px!important;font-size:12px!important;white-space:nowrap!important;min-width:0!important}
            .pvf-dashboard .pvf-contrib-tab span{font-size:11px!important;opacity:.85}
            .pvf-dashboard .pvf-contrib-tab img.emoji,.pvf-dashboard .pvf-settings-tab img.emoji{width:17px!important;height:17px!important;margin:0!important}
        }
        /* V3.31 : intitulés de « Mes infos » en casse normale (le thème met les étiquettes en petites majuscules espacées). */
        .pvf-profile-form label,
        .pvf-profile-form .pvf-profile-photo-btn,
        .pvf-profile-form .pvf-profile-photo-btn span{text-transform:none!important;letter-spacing:normal!important}
        .pvf-profile-form .pvf-profile-fields > label:not(.pvf-profile-switch-row),
        .pvf-profile-form .pvf-profile-public-intro label{display:block;font-size:14.5px!important;font-weight:800!important;line-height:1.3!important;color:#26331f!important;margin-top:14px}
        .pvf-profile-form .pvf-profile-switch-row strong{font-size:14.5px!important;text-transform:none!important;letter-spacing:normal!important}
        .pvf-profile-form .pvf-profile-switch-row small{display:block;font-size:13px!important;font-weight:600!important;line-height:1.4!important;color:#5f6b58!important;text-transform:none!important;letter-spacing:normal!important}
        /* Champ fichier de la photo de profil : caché mais présent (ouvert par le bouton « Changer ma photo »). */
        .pvf-avatar-file-input {
            position: absolute !important; left: -9999px !important; top: auto !important;
            width: 1px !important; height: 1px !important; opacity: 0 !important; overflow: hidden !important;
        }
        .pvf-profile-avatar-col > small { display: block; margin-top: 8px; color: #777; font-size: 11px; }
        .pvf-profile-avatar-btn,
        .pvf-profile-cover-btn{
            display:flex!important;
            align-items:center!important;
            justify-content:center!important;
            width:172px!important;
            max-width:100%!important;
            min-height:61px!important;
            margin:8px auto 0!important;
            padding:10px 14px!important;
            box-sizing:border-box!important;
            line-height:1.15!important;
            letter-spacing:.04em!important;
            text-align:center!important;
            cursor:pointer!important;
        }
        .pvf-profile-avatar-btn span{display:block!important;line-height:1.15!important;letter-spacing:.04em!important;color:inherit!important}
        .pvf-profile-avatar-help{
            display:block!important;
            width:190px!important;
            max-width:100%!important;
            margin:8px auto 2px!important;
            text-align:center!important;
            line-height:1.45!important;
        }

        /* V2.85 — Éditeur de couverture sur toute la largeur du formulaire. */
        .pvf-profile-cover-editor{min-width:0;padding:0;border:0}
        .pvf-cover-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
        .pvf-cover-modal.is-open{display:flex}
        .pvf-cover-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58)}
        .pvf-cover-modal-dialog{position:relative;z-index:1;width:min(780px,100%);max-height:90vh;overflow:auto;padding:24px;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.3)}
        .pvf-cover-modal-close{position:absolute;z-index:2;top:12px;right:12px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#f0f2ee;color:#333;font:inherit;font-size:25px;line-height:36px;cursor:pointer}
        body.pvf-cover-modal-open{overflow:hidden}
        @media(max-width:700px){.pvf-cover-modal{padding:10px}.pvf-cover-modal-dialog{max-height:94vh;padding:20px 16px}}
        .pvf-profile-cover-editor h4{margin:0 0 8px;font-size:18px}
        .pvf-profile-cover-editor p{margin:0 0 16px;color:#58634f}
        .pvf-cover-file-label{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-weight:700}
        .pvf-cover-file-label input{max-width:100%;font:inherit;font-size:13px}
        .pvf-profile-cover-editor small{display:block;margin-top:7px;color:#66705f;font-size:12px;line-height:1.5}
        .pvf-image-status{margin-top:8px;font-size:12px;line-height:1.5;color:#526d3b}
        .pvf-image-status.is-error{color:#a52323}
        .pvf-profile-save:disabled{opacity:.65;cursor:wait}
        .pvf-cover-feedback{font-size:13px;color:#526d3b;margin-top:8px}
        .pvf-cover-feedback.is-error{color:#a52323}
        .pvf-cover-stage{margin-top:16px}
        .pvf-cover-stage[hidden]{display:none !important}
        .pvf-cover-view-options{display:flex;gap:8px;margin-bottom:12px}
        .pvf-cover-view-options button,.pvf-cover-center{appearance:none;border:1px solid #cbd7c2;border-radius:999px;padding:7px 13px;background:#fff;color:#405237;font:inherit;font-size:13px;cursor:pointer}
        .pvf-cover-view-options button[aria-pressed="true"]{background:#4f6d3a;color:#fff;border-color:#4f6d3a}
        .pvf-profile-cover-preview{position:relative;width:100%;aspect-ratio:1050 / 300;margin:0 auto 16px;overflow:hidden;border-radius:16px;background:#edf1e9;cursor:grab;touch-action:none;user-select:none}
        .pvf-profile-cover-preview.is-mobile{max-width:390px;aspect-ratio:390 / 220}
        .pvf-profile-cover-preview.is-dragging{cursor:grabbing}
        .pvf-profile-cover-preview img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;pointer-events:none}
        .pvf-cover-position-label{display:grid;gap:9px;font-weight:700;font-size:13px}
        .pvf-cover-position-label input{width:100%;margin:0;accent-color:#4f6d3a;cursor:pointer;min-height:28px}
        .pvf-cover-position-ends{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#66705f}
        .pvf-cover-help-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px}
        .pvf-cover-help-row small{margin:0}
        .pvf-cover-center{flex-shrink:0}
        .pvf-profile-save-row{grid-column:1 / -1}
        .pvf-cover-view-options button:focus-visible,.pvf-cover-center:focus-visible,.pvf-cover-position-label input:focus-visible{outline:2px solid #4f6d3a;outline-offset:3px}
        @media(max-width:700px){.pvf-cover-help-row{align-items:flex-start;flex-direction:column}.pvf-profile-save-row .pvf-profile-save{width:100%}}
        .pvf-profile-url-field{display:flex;align-items:stretch;border:1px solid #d9ded5;border-radius:10px;overflow:hidden;background:#fff}
        .pvf-profile-url-field span{display:flex;align-items:center;padding:0 10px;background:#f3f5f1;color:#777;font-size:12px;white-space:nowrap}
        .pvf-profile-url-field input{border:0 !important;border-radius:0 !important;min-width:0;flex:1}
        .pvf-profile-url-help{display:block;margin-top:5px;color:#777;font-size:11px;word-break:break-all}
        @media(max-width:700px){.pvf-profile-url-field{display:block}.pvf-profile-url-field span{padding:8px 10px;white-space:normal;word-break:break-all}.pvf-profile-url-field input{width:100% !important}}

        .pvf-profile-fields { display: grid; gap: 10px; }
        .pvf-profile-fields > label[for="pvf-pseudo"], .pvf-profile-email-label { font-weight: 800; font-size: 14px; }
        .pvf-profile-fields input[type="text"] {
            width: 100%; border: 1px solid #cfd7ca; border-radius: 12px;
            padding: 11px 13px; font: inherit; box-sizing: border-box;
        }
        .pvf-profile-email-value { background: #f6f6f6; border-radius: 12px; padding: 11px 13px; color: #666; }
        .pvf-profile-public-intro{display:grid;gap:8px;margin-top:8px;padding:14px;border:1px solid #dfe7da;border-radius:14px;background:#fbfcfa}
        .pvf-profile-likes-box{display:grid;gap:8px;margin:0 0 18px;padding:14px 16px;border-radius:14px;background:#fff5f4;border:1px solid #f4d2cd}
        .pvf-profile-subtabs{display:flex;gap:6px;margin:0 0 18px;padding:5px;border-radius:999px;background:#f5f8f2;border:1px solid #dce7d5;overflow-x:auto;-webkit-overflow-scrolling:touch}
        .pvf-profile-subtabs[hidden],[data-pvf-sub][hidden],.pvf-profile-form[hidden]{display:none!important}
        .pvf-profile-subtab{flex:1 0 auto;appearance:none!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#405237!important;font:inherit!important;font-size:14px!important;font-weight:700!important;padding:9px 14px!important;margin:0!important;text-transform:none!important;letter-spacing:normal!important;box-shadow:none!important;cursor:pointer!important;white-space:nowrap}
        .pvf-profile-subtab:hover{background:#e7f0e0!important}
        .pvf-profile-subtab.is-active{background:#5f7f44!important;color:#fff!important}
        .pvf-profile-subtab:focus-visible{outline:2px solid #5f7f44!important;outline-offset:2px!important}
        .pvf-profile-sub-stats{display:flex;flex-direction:column}
        .pvf-profile-sub-stats .pvf-profile-stats-box{order:-1}
        @media(max-width:700px){.pvf-profile-subtab{font-size:13px!important;padding:9px 11px!important}}
        .pvf-profile-stats-box{display:grid;gap:10px;margin:0 0 18px;padding:14px 16px;border-radius:14px;background:#f5f8f2;border:1px solid #dce7d5}
        .pvf-profile-stats-box > strong{font-size:15px;color:#2e4020}
        .pvf-profile-stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
        .pvf-profile-stats-grid > div{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px 6px;border-radius:12px;background:#fff;border:1px solid #e3eadc}
        .pvf-profile-stats-grid b{font-size:22px;line-height:1.1;color:#4f6d3a}
        .pvf-profile-stats-grid small{font-size:11px;color:#6b7865;line-height:1.3}
        /* V3.27 — courbe à points des statistiques */
        .pvf-stats-line{position:relative;padding:10px 8px 6px;border-radius:12px;background:#fff;border:1px solid #e3eadc}
        .pvf-stats-line svg{display:block;width:100%;height:150px;overflow:visible}
        .pvf-stats-dots{position:absolute;left:8px;right:8px;top:10px;height:150px;pointer-events:none}
        .pvf-stats-dots i{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#fff;border:2px solid #5f7f44;box-sizing:border-box}
        .pvf-stats-dots i.is-best,.pvf-stats-dots i.is-today{width:11px;height:11px;margin:-5.5px 0 0 -5.5px}
        .pvf-stats-dots i.is-today{background:#ee7d1a;border-color:#ee7d1a}
        .pvf-stats-dots i.is-on{background:#5f7f44}
        .pvf-stats-line rect{cursor:pointer}
        .pvf-stats-line-max{position:absolute;right:10px;top:4px;font-size:10.5px;font-weight:700;color:#98a192}
        .pvf-stats-line-axis{display:flex;justify-content:space-between;padding:2px 2px 0;font-size:10.5px;font-weight:700;color:#98a192}
        .pvf-stats-line-tip{position:absolute;transform:translate(-50%,-115%);padding:5px 9px;border-radius:9px;background:#26331f;color:#fff;font-size:12px;line-height:1.2;white-space:nowrap;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.2);text-align:center}
        .pvf-stats-line-tip b{display:block;font-weight:800}
        .pvf-stats-line-tip small{display:block;font-size:10.5px;opacity:.8}
        .pvf-stats-line-tip[hidden]{display:none!important}
        p.pvf-stats-line-hint{margin:0!important;font-size:12px;font-weight:700;color:#4f6d3a;text-align:center!important}
        .pvf-stats-line-best{display:grid;grid-template-columns:1fr 1fr;gap:8px}
        .pvf-stats-line-best span{padding:8px;border-radius:10px;background:#eef4e8;text-align:center;font-size:12px;font-weight:700;color:#4a5544;line-height:1.35}
        .pvf-stats-line-best b{color:#26331f}
        .pvf-profile-stats-help{color:#6b7865;font-size:12px;line-height:1.4}
        @media(max-width:700px){.pvf-profile-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pvf-profile-stats-grid > div:nth-child(n+4){grid-column:span 1}}
        .pvf-profile-likes-box strong{font-size:15px;color:#7a2a22}
        .pvf-profile-likes-box small{color:#7a6461;font-size:12px}
        .pvf-profile-likers{display:flex;flex-wrap:wrap;gap:8px}
        .pvf-profile-liker{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:4px 10px 4px 4px;border-radius:999px;background:#fff;border:1px solid #f0d6d2;color:#3d2a28;font-size:13px;font-weight:600;text-decoration:none}
        a.pvf-profile-liker:hover,a.pvf-profile-liker:focus{border-color:#d9928a;color:#7a2a22}
        .pvf-profile-liker img{width:26px!important;height:26px!important;border-radius:50%;object-fit:cover;margin:0!important;display:block;flex:0 0 26px;vertical-align:middle}
        .pvf-profile-liker span{line-height:1.2}
        .pvf-profile-liker span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}
        .pvf-profile-liker.is-more{padding:4px 10px;color:#7a6461}
        .pvf-profile-public-intro-head strong{display:block;font-size:15px}
        .pvf-profile-public-intro-head small{display:block;color:#6b7865;font-size:12px;line-height:1.4}
        .pvf-profile-public-intro > label{font-weight:800;font-size:14px;margin-top:4px}
        .pvf-profile-public-intro textarea{width:100%;min-height:120px;border:1px solid #cfd7ca;border-radius:12px;padding:11px 13px;font:inherit;font-size:16px;line-height:1.5;box-sizing:border-box;resize:vertical;background:#fff}
        .pvf-profile-counter{color:#777;font-size:12px;line-height:1.4}
        .pvf-profile-counter.is-limit{color:#b32d2e;font-weight:700}
        .pvf-profile-instagram-field{display:flex;align-items:stretch;border:1px solid #cfd7ca;border-radius:12px;overflow:hidden;background:#fff}
        .pvf-profile-instagram-field span{display:flex;align-items:center;padding:0 12px;background:#f3f5f1;color:#6b7865;font-weight:800}
        .pvf-profile-instagram-field input{flex:1;min-width:0;border:0 !important;border-radius:0 !important;font-size:16px !important}
        .pvf-profile-switch-row {
            display: flex; gap: 10px; align-items: flex-start; margin-top: 5px;
            padding: 13px; border-radius: 13px; background: #f5f8f2; cursor: pointer;
        }
        .pvf-profile-switch-row input { margin-top: 4px; }
        .pvf-profile-switch-row span { display: block; }
        .pvf-profile-switch-row strong, .pvf-profile-switch-row small { display: block; }
        .pvf-profile-switch-row small { margin-top: 3px; color: #666; line-height: 1.35; }
        .pvf-profile-save {
            justify-self: start; border: 0; border-radius: 999px; background: #5f7f44;
            color: #fff; padding: 11px 18px; font: inherit; font-weight: 800; cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .pvf-profile-save:hover { background: #4f6d3a; }


        .pvf-photo-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
        .pvf-photo-section-head h3{margin-bottom:5px}.pvf-photo-section-head p{margin:0;color:#6b6b6b;font-size:14px}
        .pvf-photo-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.pvf-photo-counts span{display:inline-flex;gap:5px;white-space:nowrap;padding:7px 11px;border-radius:999px;background:#eef5e9;color:#4f6d3a;font-size:13px}.pvf-photo-counts span.is-pending{background:#fff6dd;color:#765b0c}
        .pvf-member-photo-group+.pvf-member-photo-group{margin-top:28px}.pvf-member-photo-group h4{margin:0 0 12px;font-size:17px}
        .pvf-member-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.pvf-member-photo-card{overflow:hidden;border:1px solid #e2e5df;border-radius:16px;background:#fff}.pvf-member-photo-card.is-pending{border-color:#eadcae}
        .pvf-member-photo-image{position:relative;aspect-ratio:4/3;overflow:hidden;background:#f0f0f0}.pvf-member-photo-image img{width:100%;height:100%;object-fit:cover;display:block}.pvf-member-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:34px}
        .pvf-member-photo-status{position:absolute;top:9px;right:9px;padding:6px 9px;border-radius:999px;background:rgba(255,246,221,.96);color:#765b0c;font-size:11px;font-weight:800}
        .pvf-member-photo-info{padding:12px 13px 14px}.pvf-member-photo-info a{color:inherit!important;text-decoration:none!important}.pvf-member-photo-info a:hover{color:#5f7f44!important}.pvf-member-photo-info strong,.pvf-member-photo-info small{display:block}.pvf-member-photo-info small{margin-top:5px;color:#777}

        @media (max-width: 800px) {
            .pvf-profile-form { grid-template-columns: 1fr; gap: 18px; }
            .pvf-profile-avatar { width: 110px; height: 110px; }
            .pvf-profile-save { width: 100%; justify-self: stretch; }

            .pvf-member-login-form {
                flex-direction: column;
            }

            .pvf-member-login-form button {
                width: 100%;
            }

            /* Barre membre compacte sur smartphone */
            .pvf-via-member-bar {
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
                gap: 7px;
                padding: 8px;
                margin-bottom: 16px;
                border-radius: 14px;
            }

            .pvf-via-action {
                width: 100%;
                min-width: 0;
                min-height: 40px;
                padding: 8px 7px;
                gap: 5px;
                font-size: 12px;
                line-height: 1;
                white-space: nowrap;
            }

            .pvf-via-action .pvf-action-icon {
                flex: 0 0 auto;
                font-size: 18px;
            }

            /* Mon espace reprend le bouton pilule de la V0.1, plus lisible. */
            .pvf-via-space-link {
                grid-column: 1 / -1;
                width: 100%;
                min-height: 40px;
                margin: 0;
                padding: 8px 12px;
                border: 1px solid #cfd9c8;
                background: #fff;
                font-size: 12px;
                color: #25301f !important;
            }

            .pvf-via-space-link:hover,
            .pvf-via-space-link:active {
                border-color: #5f7f44;
                background: #fff;
                color: #25301f !important;
            }

            .pvf-space-icon {
                font-size: 14px;
            }

            .pvf-dashboard-tabs { margin-left:-2px; margin-right:-2px; padding:6px; gap:6px; }
            .pvf-dashboard-tab { flex:0 0 auto; padding:9px 13px; font-size:13px; }
            .pvf-dashboard-shortcuts { flex-direction:column; }
            .pvf-dashboard-shortcuts button { width:100%; text-align:left; }

            .pvf-dashboard-head {
                flex-direction: column;
            }

            .pvf-dashboard-stats {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

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

            .pvf-photo-section-head{flex-direction:column}.pvf-photo-counts{justify-content:flex-start}.pvf-member-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pvf-member-photo-info{padding:10px}.pvf-member-photo-info strong{font-size:13px;line-height:1.25}.pvf-member-photo-info small{font-size:11px}
        }

        .pvf-rewards-box{margin:28px 0 30px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
        .pvf-rewards-title{display:block;margin-bottom:16px}
        .pvf-rewards-title h4,.pvf-points-section-title{margin:0 0 16px;font-size:22px;line-height:1.25;font-weight:800}
        .pvf-rewards-title p{margin:0;color:#666;font-size:13px}
        .pvf-rewards-balance{text-align:right;white-space:nowrap}
        .pvf-rewards-balance strong{display:block;font-size:25px;line-height:1}
        .pvf-rewards-balance span{display:block;margin-top:5px;font-size:12px;color:#666}
        .pvf-reward-next{padding:14px 16px;margin-bottom:16px;background:#f6fbf7;border:1px solid #d6eadb;border-radius:13px}
        .pvf-reward-next>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}
        .pvf-reward-next span{color:#555}
        .pvf-reward-progress{height:8px;margin-top:10px;background:#e4e7e5;border-radius:999px;overflow:hidden}
        .pvf-reward-progress i{display:block;height:100%;background:#2e7d32;border-radius:999px}
        .pvf-reward-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
        /* V3.17 : cadeau physique (photo) sur toute la largeur de la grille, photo à gauche. */
        .pvf-reward-stock{display:inline-block;margin:4px 0 2px;padding:2px 8px;border-radius:999px;background:#fff1e6;border:1px solid #f5c49b;color:#a14a00;font-size:11.5px;font-weight:800;font-style:normal}
        .pvf-reward-stock.is-out{background:#f1f1f1;border-color:#d6d6d6;color:#666}
        .pvf-reward-card.is-soldout{filter:grayscale(1);opacity:.7}
        .pvf-reward-card.is-gift{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:center;background:#fffaf0;border:2px solid #f5c04a}
        .pvf-reward-card.is-gift > *{grid-column:2}
        .pvf-reward-card.is-gift .pvf-reward-img{grid-column:1;grid-row:1 / span 7;display:block;width:110px;height:110px;border-radius:12px;overflow:hidden;background:#fff}
        /* Photo détourée (PNG transparent) : affichée en entier, sans être rognée. */
        .pvf-reward-card.is-gift .pvf-reward-img img{width:100%!important;height:100%!important;object-fit:contain;padding:6px;box-sizing:border-box;display:block;margin:0!important}
        .pvf-reward-card.is-gift strong{font-size:16px}
        .pvf-reward-tag{display:block;font-style:normal;font-size:11.5px;font-weight:800;color:#9a5b00;margin-bottom:3px}
        .pvf-reward-card.is-gift.is-unlocked{background:#f6fbf7;border-color:#a8d5b1}
        @media(max-width:520px){.pvf-reward-card.is-gift .pvf-reward-img{width:84px;height:84px}}
        /* V3.19 : photo dans une case normale (en haut), description, lien vidéo. */
        .pvf-reward-card.has-img:not(.is-gift) .pvf-reward-img{display:block;height:78px;margin:-4px 0 8px;border-radius:10px;overflow:hidden;background:#fff}
        .pvf-reward-card.has-img:not(.is-gift) .pvf-reward-img img{width:100%!important;height:100%!important;object-fit:contain;display:block;margin:0!important;padding:4px;box-sizing:border-box}
        .pvf-reward-text{display:block;font-style:normal;font-size:12px;line-height:1.35;color:#5f6b58;margin:-2px 0 6px}
        .pvf-reward-card a.pvf-reward-video{display:inline-block;margin-top:8px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid #e1c9c3;color:#b3261e!important;font-size:12.5px;font-weight:800;text-decoration:none!important}
        .pvf-reward-card a.pvf-reward-video:hover{background:#fdf1ef}
        .pvf-reward-card{padding:14px;border:1px solid #ddd;border-radius:13px;background:#fafafa}
        .pvf-reward-card strong,.pvf-reward-card span,.pvf-reward-card small{display:block}
        .pvf-reward-card strong{font-size:14px;margin-bottom:6px}
        .pvf-reward-card span{font-weight:800;font-size:13px}
        .pvf-reward-card small{margin-top:6px;color:#666;font-size:11px}
        .pvf-reward-card.is-unlocked{background:#f6fbf7;border-color:#a8d5b1}
        .pvf-reward-card.is-unlocked small{color:#2e7d32;font-weight:800}
        .pvf-rewards-note{margin:14px 0 0;color:#777;font-size:12px}
        @media(max-width:800px){.pvf-reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
        @media(max-width:520px){.pvf-rewards-title{display:block}.pvf-rewards-balance{text-align:left;margin-top:14px}.pvf-reward-next>div:first-child{display:block}.pvf-reward-next span{display:block;margin-top:4px}}


        .pvf-mobile-profile-banner{display:none}

        @media(max-width:700px){
            .pvf-dashboard-stats{
                display:grid !important;
                grid-template-columns:repeat(2,minmax(0,1fr)) !important;
                gap:10px !important;
            }
            .pvf-dashboard-stats .pvf-stat-card{
                aspect-ratio:1/1;
                min-width:0 !important;
                width:100% !important;
                height:auto !important;
                padding:14px 8px !important;
                display:flex !important;
                flex-direction:column !important;
                align-items:center !important;
                justify-content:center !important;
                text-align:center !important;
            }
            .pvf-dashboard-stats .pvf-stat-card span{
                margin-bottom:5px;
            }
            .pvf-dashboard-stats .pvf-stat-card small{
                text-align:center;
                line-height:1.2;
            }
            .pvf-mobile-profile-banner{
                width:100%;
                display:flex;
                align-items:center;
                gap:9px;
                margin:12px 0 18px;
                padding:11px 14px;
                border:1px solid #dcdcde;
                border-radius:11px;
                background:#fff;
                color:inherit;
                cursor:pointer;
                text-align:left;
                box-shadow:none;
                -webkit-tap-highlight-color:transparent;
            }
            .pvf-mobile-profile-banner strong{
                flex:1;
                font-size:14px;
            }
            .pvf-mobile-profile-arrow{
                font-size:22px;
                line-height:1;
                color:#777;
            }
            .pvf-dashboard-tabs{
                display:none !important;
            }
        }


        /* V2.2 — navigation uniquement par cartes */
        .pvf-dashboard-tabs{display:none !important}

        /* Ordinateur : 10 cartes (avec Messages et Amis) sur deux lignes de 5 */
        .pvf-dashboard-stats{
            display:grid !important;
            grid-template-columns:repeat(5,minmax(0,1fr)) !important;
            gap:12px !important;
        }
        .pvf-dashboard-stats .pvf-stat-card{position:relative}
        /* Cartes plus compactes (10 cartes) */
        .pvf-dashboard-stats .pvf-stat-card,
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share{padding:12px 8px !important;border-radius:14px !important}
        .pvf-dashboard-stats .pvf-stat-card > span{font-size:20px !important;margin-bottom:3px !important}
        .pvf-dashboard-stats .pvf-stat-card > strong{font-size:23px !important}
        .pvf-dashboard-stats .pvf-stat-card > small{margin-top:4px !important;font-size:12px !important;line-height:1.2 !important}
        /* V3.16 : « Mes sorties » aux mêmes couleurs que les autres cartes ; c'est « + Ajouter une sortie » qui est mis en avant. */
        /* Carte Partager : mêmes tailles de texte que les autres cartes (« Partager » comme « Profil », « Mon profil » comme les libellés). */
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > strong{font-size:23px !important;line-height:1 !important}
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > small{margin-top:4px !important;font-size:12px !important;line-height:1.2 !important}
        .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share .pvf-share-icon{font-size:20px !important;margin-bottom:3px !important}
        @media(max-width:700px){
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > strong{line-height:1.05 !important}
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share > small{margin-top:3px !important;font-size:11px !important}
            .pvf-dashboard-stats > button.pvf-stat-card.pvf-stat-share .pvf-share-icon{font-size:18px !important}
            .pvf-dashboard-stats .pvf-stat-notifications > strong{font-size:19px !important}
        }
        @media(max-width:700px){.pvf-dashboard-stats .pvf-stat-card{min-height:88px !important}}
        .pvf-stat-badge{font-style:normal;position:absolute;top:8px;right:8px;min-width:20px;padding:2px 6px;border-radius:999px;background:#c0392b;color:#fff;font-size:12px;font-weight:800;line-height:16px;text-align:center}
        .pvf-dashboard-stats .pvf-stat-card{
            min-width:0 !important;
        }
        .pvf-mobile-profile-banner{display:none !important}
        .pvf-stat-share{display:flex !important}

        @media(max-width:700px){
            /* Mobile : Profil retiré des carrés, les 6 autres restent en 2 colonnes */
            .pvf-dashboard-stats{
                grid-template-columns:repeat(2,minmax(0,1fr)) !important;
                gap:8px !important;
            }
            .pvf-dashboard-stats .pvf-stat-card{
                aspect-ratio:auto !important;
                min-height:112px !important;
                padding:10px 7px !important;
            }
            .pvf-dashboard-stats .pvf-stat-card > span{
                font-size:18px !important;
                margin-bottom:3px !important;
            }
            .pvf-dashboard-stats .pvf-stat-card > strong{
                line-height:1.05 !important;
            }
            .pvf-dashboard-stats .pvf-stat-card > small{
                margin-top:3px !important;
                font-size:11px !important;
            }
            .pvf-dashboard-stats .pvf-stat-profile,
            .pvf-dashboard-stats .pvf-stat-share{
                display:flex !important;
            }
            .pvf-mobile-profile-banner{
                display:flex !important;
                width:100%;
                box-sizing:border-box;
                align-items:center;
                gap:9px;
                margin:10px 0 18px !important;
                padding:11px 14px;
                border:1px solid #176b45 !important;
                border-radius:11px;
                background:#eaf6ef !important;
                color:#176b45 !important;
                cursor:pointer;
                text-align:left;
                box-shadow:none !important;
                -webkit-tap-highlight-color:transparent;
            }
            .pvf-mobile-profile-banner strong{
                flex:1;
                font-size:14px;
                color:#176b45 !important;
            }
            .pvf-mobile-profile-arrow{
                font-size:22px;
                line-height:1;
                color:#176b45 !important;
            }
        }


        /* V2.3 — entête centré */
        .pvf-member-head,
        .pvf-dashboard-header,
        .pvf-member-header{
            text-align:center !important;
        }
        .pvf-member-head > *,
        .pvf-dashboard-header > *,
        .pvf-member-header > *{
            text-align:center !important;
        }

        /* Cœur Favoris rouge */
        .pvf-stat-favorites > span{
            color:#e53935 !important;
        }

        @media(max-width:700px){
            /*
             * Le bandeau Profil reprend exactement le traitement visuel
             * des cartes et se place à un gap identique (10px).
             */
            .pvf-mobile-profile-banner{
                margin:10px 0 18px !important;
            }
        }


        @media(max-width:700px){
            .pvf-mobile-profile-banner{background:#f5f8f2 !important;}
            .pvf-mobile-profile-banner{border:1px solid #dce7d5 !important;}
        }

        /* V2.6 — en-tête de l'espace membre réellement centré */
        .pvf-dashboard-head{
            display:flex !important;
            flex-direction:column !important;
            align-items:center !important;
            justify-content:center !important;
            gap:10px !important;
            text-align:center !important;
        }
        .pvf-dashboard-head > div,
        .pvf-dashboard-kicker,
        .pvf-dashboard-head h2,
        .pvf-dashboard-email{
            width:100%;
            text-align:center !important;
        }
        .pvf-dashboard-logout{
            align-self:center !important;
            margin:0 auto !important;
        }


        /* V2.7 — identité membre avec avatar */
        .pvf-dashboard-head{
            display:flex !important;
            flex-direction:column !important;
            align-items:center !important;
            justify-content:center !important;
            text-align:center !important;
        }
        .pvf-dashboard-identity{
            display:flex !important;
            align-items:center !important;
            justify-content:center !important;
            gap:14px !important;
            width:auto !important;
            text-align:left !important;
        }
        .pvf-dashboard-avatar{
            width:68px !important;
            height:68px !important;
            flex:0 0 68px !important;
            border-radius:50% !important;
            overflow:hidden !important;
        }
        .pvf-dashboard-avatar img,
        .pvf-dashboard-avatar-img{
            display:block !important;
            width:68px !important;
            height:68px !important;
            object-fit:cover !important;
            border-radius:50% !important;
        }
        .pvf-dashboard-identity-text{
            width:auto !important;
            text-align:left !important;
        }
        .pvf-dashboard-identity-text h2,
        .pvf-dashboard-identity-text .pvf-dashboard-email{
            width:auto !important;
            text-align:left !important;
        }
        .pvf-dashboard-identity-text h2{
            margin-top:0 !important;
        }
        .pvf-dashboard-logout{
            margin-top:10px !important;
        }

        @media(max-width:700px){
            .pvf-dashboard-identity{
                gap:11px !important;
            }
            .pvf-dashboard-avatar,
            .pvf-dashboard-avatar img,
            .pvf-dashboard-avatar-img{
                width:58px !important;
                height:58px !important;
            }
            .pvf-dashboard-avatar{
                flex-basis:58px !important;
            }
        }


/* ===== PVF V2.12 — BARRE MEMBRE FLOTTANTE MOBILE ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
  .pvf-via-member-bar{
    position:fixed !important;
    left:-16px !important;
    top:68% !important;
    z-index:999998 !important;
    transform:translateY(-50%) !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:6px !important;
    width:auto !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    overflow:visible !important;
  }
  .pvf-via-member-bar .pvf-via-action,
  .pvf-via-member-bar .pvf-via-space-link{
    position:relative !important;
    box-sizing:border-box !important;
    width:54px !important;
    height:48px !important;
    min-width:54px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 13px !important;
    justify-content:flex-end !important;
    gap:11px !important;
    overflow:hidden !important;
    border:1px solid #cfd9c8 !important;
    border-radius:0 25px 25px 0 !important;
    background:#fff !important;
    color:#25301f !important;
    box-shadow:6px 7px 18px rgba(0,0,0,.10) !important;
    white-space:nowrap !important;
    transition:width .30s ease,left .30s ease,background-color .26s ease,border-color .26s ease !important;
  }
  .pvf-via-member-bar .pvf-via-action.is-active{
    background:#5f7f44 !important;
    border-color:#5f7f44 !important;
    color:#fff !important;
  }
  .pvf-via-member-bar .pvf-action-icon,
  .pvf-via-member-bar .pvf-space-icon{
    order:2;
    width:27px;
    min-width:27px;
    flex:0 0 27px;
    text-align:center;
    font-size:23px !important;
    line-height:1;
  }
  .pvf-via-member-bar .pvf-action-label{
    order:1;
    opacity:0;
    flex:0 0 auto;
    font-size:14px;
    transform:translateX(-5px);
    transition:opacity .2s ease,transform .2s ease;
  }
  .pvf-via-member-bar .pvf-via-space-link{
    font-size:0 !important;
  }
  .pvf-via-member-bar .pvf-via-space-link::before{
    content:"Mon espace";
    order:1;
    opacity:0;
    flex:0 0 auto;
    font-size:14px;
    font-weight:800;
    transform:translateX(-5px);
    transition:opacity .2s ease,transform .2s ease;
  }
  .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded,
  .pvf-via-member-bar .pvf-via-action.pvf-member-expanded{
    width:198px !important;
    left:16px !important;
  }
  .pvf-via-member-bar .pvf-via-action.pvf-member-expanded .pvf-action-label,
  .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded::before{
    opacity:1;
    transform:translateX(0);
  }
}
@media (max-width:380px){
  .pvf-via-member-bar{top:69% !important}
  .pvf-via-member-bar .pvf-via-action,
  .pvf-via-member-bar .pvf-via-space-link{
    width:52px !important;height:46px !important;min-width:52px !important;min-height:46px !important;padding:0 12px !important
  }
  .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded,
  .pvf-via-member-bar .pvf-via-action.pvf-member-expanded{width:190px !important}
}

/* ===== PVF V2.14 — POSITION MENU FLOTTANT MOBILE ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
    .pvf-via-member-bar { top:72% !important; }
}
@media (max-width:380px) {
    .pvf-via-member-bar { top:73% !important; }
}


/* ===== PVF V2.15 — OUVERTURE CORRECTE DEPUIS LA GAUCHE ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
    .pvf-via-member-bar{
        left:-16px !important;
        align-items:flex-start !important;
    }

    /* Fermé : la puce déborde légèrement. Ouvert : bord gauche calé à 0. */
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:16px !important;
        width:198px !important;
    }

    /* L'icône reste côté droit de la pastille et le texte se développe vers la droite. */
    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        transform:none !important;
    }
}
@media (max-width:380px){
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:16px !important;
        width:190px !important;
    }
}


/* ===== PVF V2.16 — LARGEUR RÉELLE DES BOUTONS OUVERTS ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:16px !important;
        width:245px !important;
        max-width:calc(100vw - 12px) !important;
    }
}
@media (max-width:380px){
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        width:235px !important;
        max-width:calc(100vw - 12px) !important;
    }
}


/* ===== PVF V2.17 — CONFORT TACTILE / MARGE ICÔNES À GAUCHE ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
    /* La puce ne sort plus que de 7 px de l'écran au lieu de 16 px. */
    .pvf-via-member-bar{
        left:-7px !important;
    }

    /* Ouvert : bord gauche parfaitement aligné avec l'écran. */
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:7px !important;
    }

    /* Un peu plus d'air autour des icônes côté bord d'écran. */
    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        padding-right:15px !important;
    }
}
@media (max-width:380px){
    .pvf-via-member-bar{
        left:-6px !important;
    }
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:6px !important;
    }
    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        padding-right:14px !important;
    }
}


/* ===== PVF V2.18 — CODE DE CONNEXION 4 CHIFFRES ===== */
.pvf-login-code-input{
    width:100% !important;
    min-height:58px !important;
    padding:8px 14px !important;
    text-align:center !important;
    font-size:30px !important;
    font-weight:800 !important;
    letter-spacing:.35em !important;
    text-indent:.35em !important;
    font-variant-numeric:tabular-nums;
}
.pvf-code-resend-form{
    margin-top:10px;
    text-align:center;
}

/* ===== PVF V2.72 — GOOGLE reCAPTCHA / FLUX DE CONNEXION ===== */
.pvf-code-email-form{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
}
.pvf-code-email-form > input[type="email"]{
    display:block !important;
    width:100% !important;
    min-width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}
.pvf-code-email-form > .g-recaptcha{
    display:block !important;
    align-self:flex-start !important;
    margin:0 !important;
    width:304px !important;
    max-width:100% !important;
}
.pvf-code-email-form > button[type="submit"]{
    display:block !important;
    width:100% !important;
    min-height:48px !important;
}
.pvf-code-resend-wrap{
    margin-top:10px;
    text-align:center;
}
.pvf-code-resend-toggle{
    border:0 !important;
    background:transparent !important;
    color:#587b3c !important;
    text-decoration:underline !important;
    cursor:pointer !important;
    padding:4px 8px !important;
}
.pvf-code-resend-form[hidden]{
    display:none !important;
}
.pvf-code-resend-form:not([hidden]){
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:10px !important;
    margin-top:10px !important;
}
.pvf-code-resend-form .g-recaptcha{
    margin:0 auto !important;
}
@media (max-width:360px){
    .pvf-code-email-form > .g-recaptcha,
    .pvf-code-resend-form .g-recaptcha{
        transform:scale(.90);
        transform-origin:left top;
        margin-bottom:-7px !important;
    }
}
.pvf-code-resend-btn{
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:5px 8px !important;
    color:#4f6f39 !important;
    font-size:13px !important;
    font-weight:700 !important;
    text-decoration:underline !important;
    cursor:pointer;
}
.pvf-code-change-email{
    display:block;
    margin-top:7px;
    text-align:center;
    color:#666 !important;
    font-size:12px;
    text-decoration:underline !important;
}


/* ===== PVF V2.19 — RETOUR BARRE MEMBRE INTÉGRÉE SUR MOBILE ===== */
@media (max-width:768px), (hover:none), (pointer:coarse) {
    .pvf-via-member-bar{
        position:static !important;
        left:auto !important;
        top:auto !important;
        right:auto !important;
        z-index:auto !important;
        transform:none !important;

        display:flex !important;
        flex-direction:row !important;
        align-items:stretch !important;
        justify-content:center !important;
        flex-wrap:wrap !important;
        gap:8px !important;

        width:100% !important;
        max-width:100% !important;
        padding:0 !important;
        margin:14px 0 18px !important;

        background:transparent !important;
        border:0 !important;
        border-radius:0 !important;
        box-shadow:none !important;
        overflow:visible !important;
    }

    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link,
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        position:static !important;
        left:auto !important;
        top:auto !important;
        right:auto !important;
        transform:none !important;

        width:auto !important;
        max-width:none !important;
        height:auto !important;
        min-width:0 !important;
        min-height:44px !important;

        padding:9px 12px !important;
        justify-content:center !important;
        gap:6px !important;
        overflow:visible !important;

        border:1px solid #cfd9c8 !important;
        border-radius:12px !important;
        background:#fff !important;
        color:#25301f !important;
        box-shadow:none !important;

        font-size:12px !important;
        line-height:1.2 !important;
        white-space:nowrap !important;
    }

    .pvf-via-member-bar .pvf-via-action.is-active{
        background:#5f7f44 !important;
        border-color:#5f7f44 !important;
        color:#fff !important;
    }

    .pvf-via-member-bar .pvf-via-action .pvf-action-label{
        display:inline !important;
        opacity:1 !important;
        visibility:visible !important;
        width:auto !important;
        max-width:none !important;
        font-size:12px !important;
        white-space:nowrap !important;
    }

    .pvf-via-member-bar .pvf-via-space-link{
        font-size:12px !important;
    }

    /* Le texte "Mon espace" est déjà présent dans le lien :
       on supprime le pseudo-libellé utilisé uniquement par le menu flottant. */
    .pvf-via-member-bar .pvf-via-space-link::before{
        content:none !important;
        display:none !important;
    }

    .pvf-via-member-bar .pvf-action-icon,
    .pvf-via-member-bar .pvf-space-icon{
        flex:0 0 auto !important;
        opacity:1 !important;
        visibility:visible !important;
    }
}

@media (max-width:380px){
    .pvf-via-member-bar{
        left:auto !important;
        top:auto !important;
        margin:12px 0 16px !important;
        gap:6px !important;
    }

    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link,
    .pvf-via-member-bar .pvf-via-action.pvf-member-expanded,
    .pvf-via-member-bar .pvf-via-space-link.pvf-member-expanded{
        left:auto !important;
        width:auto !important;
        max-width:none !important;
        padding:8px 10px !important;
        font-size:11px !important;
    }

    .pvf-via-member-bar .pvf-via-action .pvf-action-label{
        font-size:11px !important;
    }
}


/* ===== PVF V2.21 — PRÉSENTATION DE L'ESPACE AVANT CONNEXION ===== */
.pvf-member-discovery{
    text-align:left;
}
.pvf-member-discovery .pvf-member-box-title{
    padding-right:34px;
    margin-bottom:8px;
}
.pvf-member-discovery-context{
    color:#53604d;
    font-size:15px;
    font-weight:700;
    margin-bottom:18px;
}
.pvf-member-discovery-benefits{
    display:grid;
    gap:9px;
    margin:0 0 18px;
}
.pvf-member-discovery-benefits > div{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:42px;
    padding:8px 11px;
    background:#f5f8f2;
    border:1px solid #dce7d5;
    border-radius:12px;
    box-sizing:border-box;
}
.pvf-member-discovery-benefits span{
    flex:0 0 26px;
    text-align:center;
    font-size:19px;
}
.pvf-member-discovery-benefits strong{
    color:#34422d;
    font-size:14px;
    line-height:1.25;
}
.pvf-member-discovery-free{
    margin:2px 0 14px;
    text-align:center;
    color:#5f7f44;
    font-size:13px;
    font-weight:900;
}
.pvf-member-discovery-free span{
    padding:0 6px;
    color:#a1ae98;
}
.pvf-member-discovery-start{
    width:100%;
    min-height:48px;
    border:0 !important;
    border-radius:12px !important;
    background:#5f7f44 !important;
    color:#fff !important;
    font:inherit;
    font-size:14px !important;
    font-weight:900 !important;
    cursor:pointer;
}
.pvf-member-discovery-start:hover,
.pvf-member-discovery-start:focus{
    background:#4f6d3a !important;
    color:#fff !important;
}
.pvf-member-login-step[hidden]{
    display:none !important;
}
.pvf-member-login-step{
    position:relative;
}
.pvf-member-login-back{
    display:inline-flex;
    align-items:center;
    margin:0 0 10px;
    padding:5px 0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#5f7f44 !important;
    font:inherit;
    font-size:13px !important;
    font-weight:800 !important;
    cursor:pointer;
}
.pvf-member-login-step > .pvf-member-box{
    padding:0;
    border:0;
}
.pvf-member-login-step > .pvf-member-box > .pvf-member-box-title{
    display:block;
}
.pvf-member-login-step > .pvf-member-box > p{
    display:block;
}
.pvf-login-modal-card[data-pvf-intent="favorite"] .pvf-member-discovery-context,
.pvf-login-modal-card[data-pvf-intent="done"] .pvf-member-discovery-context{
    color:#405237;
}
@media (max-width:520px){
    .pvf-login-modal{
        padding:12px;
    }
    .pvf-login-modal-card{
        padding:22px 18px;
        border-radius:18px;
    }
    .pvf-member-discovery-benefits{
        gap:7px;
    }
    .pvf-member-discovery-benefits > div{
        min-height:39px;
        padding:7px 9px;
    }
    .pvf-member-discovery-benefits strong{
        font-size:13px;
    }
}


/* ===== PVF V2.22 — PRÉSENTATION VISIBLE SUR LA PAGE MON ESPACE ===== */
.pvf-member-loggedout-page{
    width:min(100%,620px);
    margin:0 auto;
}
.pvf-member-page-discovery{
    margin:0 0 14px;
    padding:22px;
    background:#fff;
    border:1px solid #dce7d5;
    border-radius:18px;
    box-sizing:border-box;
}
.pvf-member-page-discovery .pvf-member-box-title{
    margin-bottom:7px;
}
.pvf-member-page-discovery-lead{
    margin:0 0 17px;
    color:#53604d;
    font-weight:700;
}
@media (max-width:520px){
    .pvf-member-page-discovery{
        padding:18px 15px;
        border-radius:16px;
    }
}


/* ===== PVF V2.23 — MON ESPACE DÉCONNECTÉ = BOUTON DE MODALE, PAS UN LIEN ===== */
.pvf-via-space-button{
    appearance:none;
    -webkit-appearance:none;
    font:inherit;
    cursor:pointer;
}


/* ===== PVF V2.24 — AVANTAGES INTÉGRÉS AU FORMULAIRE DE CONNEXION ===== */
.pvf-login-benefits{
    margin:0 0 22px;
    padding:0 0 20px;
    border-bottom:1px solid #e3eadf;
}
.pvf-login-benefits-lead{
    margin:5px 0 16px !important;
    color:#53604d;
    font-weight:700;
}


/* ===== PVF V2.26 — NETTOYAGE DÉFINITIF BARRE VIA + MODALE ===== */

/* Laisse toujours une vraie zone libre pour la croix de fermeture. */
.pvf-login-modal-card .pvf-member-box-title{
    padding-right:52px !important;
    box-sizing:border-box !important;
}

/* Barre intégrée : neutralise définitivement les anciennes règles du menu flottant. */
.pvf-via-member-bar .pvf-via-action,
.pvf-via-member-bar .pvf-via-space-link{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    vertical-align:middle !important;
}

.pvf-via-member-bar .pvf-action-icon,
.pvf-via-member-bar .pvf-space-icon{
    order:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:0 !important;
    flex:0 0 auto !important;
    margin:0 !important;
    transform:none !important;
    text-align:center !important;
}

.pvf-via-member-bar .pvf-action-label{
    order:0 !important;
    display:inline-block !important;
    flex:0 0 auto !important;
    width:auto !important;
    margin:0 !important;
    transform:none !important;
    text-align:center !important;
    opacity:1 !important;
    visibility:visible !important;
}

/* "Mon espace" n'utilise plus aucun faux libellé hérité des anciennes puces. */
.pvf-via-member-bar .pvf-via-space-link::before{
    content:none !important;
    display:none !important;
}

/* Sur écran tactile : aucun faux état hover qui puisse absorber le premier toucher. */
@media (hover:none), (pointer:coarse){
    .pvf-via-member-bar .pvf-via-action:hover,
    .pvf-via-member-bar .pvf-via-space-link:hover{
        border-color:#cfd9c8 !important;
        background:#fff !important;
        color:#25301f !important;
    }

    .pvf-via-member-bar .pvf-via-action.is-active:hover{
        border-color:#5f7f44 !important;
        background:#5f7f44 !important;
        color:#fff !important;
    }

    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        touch-action:manipulation !important;
    }
}


/* ===== PVF V2.27 — CENTRAGE IPHONE + SÉPARATION ADMIN / MEMBRE ===== */
.pvf-via-member-bar .pvf-via-action,
.pvf-via-member-bar .pvf-via-space-link{
    display:inline-grid !important;
    grid-template-columns:max-content max-content !important;
    grid-auto-flow:column !important;
    align-items:center !important;
    justify-content:center !important;
    justify-items:center !important;
    column-gap:8px !important;
    text-align:center !important;
}

.pvf-via-member-bar .pvf-via-action .pvf-action-label,
.pvf-via-member-bar .pvf-via-action .pvf-action-icon,
.pvf-via-member-bar .pvf-via-space-link .pvf-space-icon{
    position:static !important;
    float:none !important;
    inset:auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    flex:none !important;
    justify-self:center !important;
}

/* Mon espace contient du texte brut + l'icône : même centrage du contenu complet. */
.pvf-via-member-bar .pvf-via-space-link{
    white-space:nowrap !important;
}


/* ===== PVF V2.29 — BARRE MEMBRE MOBILE 1 + 2 =====
 * Mobile : Favoris seul sur toute la première ligne.
 * Deuxième ligne : Je l’ai faite + Mon espace côte à côte.
 */
@media (max-width:768px), (hover:none), (pointer:coarse){
    .pvf-via-member-bar{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        grid-template-rows:auto auto !important;
        align-items:stretch !important;
        justify-items:stretch !important;
        gap:8px !important;
        width:100% !important;
        max-width:100% !important;
        padding:10px !important;
        margin:14px 0 18px !important;
        box-sizing:border-box !important;
        background:#f5f8f2 !important;
        border:1px solid #dce7d5 !important;
        border-radius:16px !important;
        box-shadow:none !important;
    }

    /* Favoris : toute la largeur, première ligne. */
    .pvf-via-member-bar > .pvf-via-action:nth-of-type(1){
        grid-column:1 / -1 !important;
        grid-row:1 !important;
        justify-self:stretch !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
    }

    /* Je l’ai faite : bas gauche. */
    .pvf-via-member-bar > .pvf-via-action:nth-of-type(2){
        grid-column:1 !important;
        grid-row:2 !important;
        justify-self:stretch !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
    }

    /* Mon espace : bas droite. */
    .pvf-via-member-bar > .pvf-via-space-link{
        grid-column:2 !important;
        grid-row:2 !important;
        justify-self:stretch !important;
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
    }

    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        box-sizing:border-box !important;
        margin:0 !important;
    }
}

@media (max-width:380px){
    .pvf-via-member-bar{
        padding:8px !important;
        gap:6px !important;
    }

    .pvf-via-member-bar .pvf-via-action,
    .pvf-via-member-bar .pvf-via-space-link{
        padding-left:7px !important;
        padding-right:7px !important;
        font-size:11px !important;
    }

    .pvf-via-member-bar .pvf-via-action .pvf-action-label{
        font-size:11px !important;
    }
}


/* ===== PVF V2.32 — VIA RÉALISÉES PAR DÉPARTEMENT / RÉGION ===== */
.pvf-done-summary{
    display:flex;
    align-items:baseline;
    gap:9px;
    margin:0 0 22px;
    padding:14px 17px;
    border:1px solid #dce7d5;
    border-radius:15px;
    background:#f5f8f2;
}
.pvf-done-summary strong{
    color:#4f6d3a;
    font-size:28px;
    line-height:1;
}
.pvf-done-summary span{
    font-weight:800;
    color:#405237;
}
.pvf-done-country + .pvf-done-country{
    margin-top:30px;
}
.pvf-done-country-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin:0 0 11px;
}
.pvf-done-country-head h4{
    margin:0;
    font-size:20px;
}
.pvf-done-country-head > span{
    color:#6d7469;
    font-size:13px;
    font-weight:700;
}
.pvf-done-regions{
    display:grid;
    gap:9px;
}
.pvf-done-region{
    border:1px solid #dfe5db;
    border-radius:14px;
    background:#fff;
    overflow:hidden;
}
.pvf-done-region > summary{
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    min-height:52px;
    padding:12px 15px;
    cursor:pointer;
    font-weight:800;
    color:#25301f;
    background:#f8faf6;
    -webkit-tap-highlight-color:transparent;
}
.pvf-done-region > summary::-webkit-details-marker{
    display:none;
}
.pvf-done-region > summary:hover{
    background:#f1f6ed;
}
.pvf-done-region-right{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
}
.pvf-done-region-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:29px;
    height:29px;
    padding:0 8px;
    box-sizing:border-box;
    border-radius:999px;
    background:#e5efde;
    color:#4f6d3a;
    font-size:13px;
}
.pvf-done-region-arrow{
    display:inline-block;
    font-size:19px;
    line-height:1;
    transition:transform .18s ease;
}
.pvf-done-region[open] .pvf-done-region-arrow{
    transform:rotate(180deg);
}
.pvf-done-region-content{
    padding:15px;
    border-top:1px solid #e8ece5;
}
.pvf-done-region-content .pvf-member-via-grid{
    margin:0;
}

@media(max-width:700px){
    .pvf-done-summary{
        margin-bottom:18px;
        padding:12px 14px;
    }
    .pvf-done-summary strong{
        font-size:25px;
    }
    .pvf-done-country-head{
        align-items:flex-end;
    }
    .pvf-done-country-head h4{
        font-size:18px;
    }
    .pvf-done-country-head > span{
        font-size:12px;
    }
    .pvf-done-region > summary{
        min-height:50px;
        padding:11px 13px;
    }
    .pvf-done-region-content{
        padding:10px;
    }
}


/* ===== PVF V2.33 — BADGES DE CONTRIBUTION ===== */
.pvf-contribution-badge{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid #e1e6dc;border-radius:18px;background:#fff}
.pvf-contribution-badge-img{width:112px;height:112px;object-fit:contain;flex:0 0 112px}
.pvf-contribution-badge-placeholder{width:112px;height:112px;display:flex;align-items:center;justify-content:center;flex:0 0 112px;border-radius:50%;background:#eef3e9;color:#4f6d3a;font-size:30px;font-weight:900}
.pvf-contribution-badge-copy{min-width:0;flex:1}.pvf-contribution-badge-copy small{display:block;margin-bottom:3px;color:#6d7469;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pvf-contribution-badge-copy strong{display:block;color:#252a23;font-size:23px;line-height:1.15}.pvf-contribution-badge-copy>span{display:block;margin-top:5px;color:#596055;font-size:14px;font-weight:700}
.pvf-badge-progress{height:8px;margin-top:13px;overflow:hidden;border-radius:999px;background:#e7ebe4}.pvf-badge-progress i{display:block;height:100%;border-radius:inherit;background:#f5a400}
.pvf-contribution-badge-copy em{display:block;margin-top:7px;color:#72786f;font-size:12px;font-style:normal}
.pvf-contribution-badge.is-compact{display:inline-flex;margin-top:10px;padding:7px 11px 7px 7px;gap:9px;border-radius:14px;background:#f7f9f5}
.pvf-contribution-badge.is-compact .pvf-contribution-badge-img,.pvf-contribution-badge.is-compact .pvf-contribution-badge-placeholder{width:44px;height:44px;flex-basis:44px}
.pvf-contribution-badge.is-compact .pvf-contribution-badge-placeholder{font-size:15px}
.pvf-contribution-badge.is-compact .pvf-contribution-badge-copy small{font-size:9px}.pvf-contribution-badge.is-compact .pvf-contribution-badge-copy strong{font-size:14px}.pvf-contribution-badge.is-compact .pvf-contribution-badge-copy>span{margin-top:1px;font-size:11px}
.pvf-badge-points-panel{margin:0 0 22px}.pvf-badge-points-note{margin:8px 3px 0;color:#6f756c;font-size:12px}
@media(max-width:700px){.pvf-contribution-badge{gap:13px;padding:13px}.pvf-contribution-badge-img,.pvf-contribution-badge-placeholder{width:88px;height:88px;flex-basis:88px}.pvf-contribution-badge-copy strong{font-size:19px}.pvf-contribution-badge.is-compact{margin-top:8px}.pvf-contribution-badge.is-compact .pvf-contribution-badge-img,.pvf-contribution-badge.is-compact .pvf-contribution-badge-placeholder{width:40px;height:40px;flex-basis:40px}}


/* ===== V2.35 — EN-TÊTE MEMBRE / BADGE ===== */
.pvf-dashboard-head{
    display:grid !important;
    grid-template-columns:minmax(260px,1fr) minmax(270px,330px) !important;
    grid-template-areas:"identity badge" "logout badge" !important;
    align-items:center !important;
    gap:8px 28px !important;
}
.pvf-dashboard-head .pvf-dashboard-identity{grid-area:identity !important;min-width:0}
.pvf-dashboard-head .pvf-dashboard-logout{grid-area:logout !important;justify-self:start !important;margin:0 0 0 96px !important}
.pvf-member-head-badge{
    grid-area:badge;
    display:flex;
    align-items:center;
    gap:14px;
    padding-left:22px;
    border-left:1px solid #e2e7dd;
}
.pvf-member-head-badge-img{display:block;width:112px;height:112px;object-fit:contain;flex:0 0 112px}
.pvf-member-head-badge-copy{min-width:0;flex:1}
.pvf-member-head-badge-copy strong{display:block;color:#2e352a;font-size:18px;line-height:1.12}
.pvf-member-head-badge-copy>span{display:block;margin-top:4px;color:#687064;font-size:12px;font-weight:700}
.pvf-member-head-progress{height:7px;margin-top:10px;overflow:hidden;border-radius:999px;background:#e6ebe2}
.pvf-member-head-progress i{display:block;height:100%;border-radius:inherit;background:#f5a400}
.pvf-member-head-badge-copy small{display:block;margin-top:6px;color:#777e73;font-size:10px;line-height:1.25}
@media(max-width:760px){
    .pvf-dashboard-head{
        grid-template-columns:1fr !important;
        grid-template-areas:"identity" "badge" "logout" !important;
        gap:12px !important;
    }
    .pvf-dashboard-head .pvf-dashboard-identity{justify-content:center !important}
    .pvf-dashboard-head .pvf-dashboard-logout{justify-self:center !important;margin:0 !important}
    .pvf-member-head-badge{
        justify-self:center;
        width:min(100%,360px);
        justify-content:center;
        padding:12px 0 0;
        border-left:0;
        border-top:1px solid #e2e7dd;
    }
    .pvf-member-head-badge-img{width:96px;height:96px;flex-basis:96px}
    .pvf-member-head-badge-copy{max-width:210px}
}


/* ===== V2.36 — SIMPLIFICATION DU HEADER / POINTS ===== */
.pvf-dashboard-head{
    grid-template-areas:"identity badge" !important;
    grid-template-rows:auto !important;
}
.pvf-dashboard-identity-text .pvf-dashboard-logout-inline{
    display:inline-flex !important;
    margin:9px 0 0 !important;
    padding:7px 13px !important;
    width:auto !important;
    justify-self:auto !important;
}
@media(max-width:760px){
    .pvf-dashboard-head{
        grid-template-areas:"identity" "badge" !important;
    }
    .pvf-dashboard-identity-text .pvf-dashboard-logout-inline{
        margin-top:8px !important;
    }
}


/* ===== V2.38 — MES POINTS SIMPLIFIÉ ===== */
.pvf-points-head{display:block !important}
.pvf-points-intro>h3{margin-bottom:18px !important}
.pvf-points-intro>h4{margin:0 0 12px !important;color:#333;font-size:16px !important}
.pvf-points-howto{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:22px}
.pvf-referral{margin:26px 0 30px;padding:18px;border:1px solid #e2e6de;border-radius:16px;background:#f8faf6}
.pvf-referral-intro,.pvf-referral-rules{margin:0 0 12px !important;text-align:left !important;line-height:1.45}
.pvf-referral-rules{color:#617054;font-size:12px}
.pvf-referral-link{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}
.pvf-referral-link input{flex:1 1 220px;min-width:0;margin:0 !important;padding:10px 12px !important;border:1px solid #cfd6c8 !important;border-radius:10px !important;background:#fff !important;font-size:14px !important;color:#333 !important}
.pvf-referral-btn{all:unset;box-sizing:border-box;cursor:pointer;padding:10px 16px;border-radius:10px;background:#5b7a3a;color:#fff;font-weight:800;font-size:14px;text-align:center}
.pvf-referral-btn[hidden]{display:none}
.pvf-referral-btn-share{background:#2f3b25}
.pvf-referral-btn:focus-visible{outline:2px solid #2f3b25;outline-offset:2px}
.pvf-referral-feedback{min-height:18px;margin:6px 0 4px !important;color:#3f6b1f;font-size:13px;font-weight:700}
.pvf-referral-title{margin:16px 0 8px !important;font-size:16px;font-weight:800}
.pvf-referral-list{list-style:none;margin:0 !important;padding:0 !important}
.pvf-referral-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:9px 0;border-top:1px solid #e2e6de;margin:0 !important}
.pvf-referral-name{font-weight:800;color:#333}
.pvf-referral-list small{color:#7b8190}
.pvf-referral-state{margin-left:auto;font-size:12px;color:#7b8190}
.pvf-referral-state.is-ok{color:#3f6b1f}
.pvf-referral-state.is-wait{color:#8a6d1f}
.pvf-points-howto>div{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e2e6de;border-radius:13px;background:#f8faf6}
.pvf-points-howto>div>span{font-size:22px;line-height:1;flex:0 0 auto}
.pvf-points-howto p{margin:0 !important;line-height:1.25}
.pvf-points-howto strong{display:block;color:#333;font-size:13px}
.pvf-points-howto small{display:block;margin-top:4px;color:#617054;font-size:12px;font-weight:800}
@media(max-width:700px){.pvf-points-howto{grid-template-columns:1fr}.pvf-points-howto>div{padding:11px 12px}}


/* ===== V2.39 — HEADER PLUS LÉGER ===== */
.pvf-dashboard-identity{align-items:center !important}
.pvf-dashboard-avatar,
.pvf-dashboard-avatar img,
.pvf-dashboard-avatar .avatar,
.pvf-dashboard-avatar .pvf-profile-avatar-img{
    width:96px !important;
    height:96px !important;
    min-width:96px !important;
    border-radius:50% !important;
    object-fit:cover !important;
}
.pvf-member-head-badge{
    grid-template-columns:1fr !important;
    padding:14px 16px !important;
}
.pvf-member-head-badge-img{display:none !important}
.pvf-member-head-badge-copy{width:100% !important}
@media(max-width:700px){
    .pvf-dashboard-avatar,
    .pvf-dashboard-avatar img,
    .pvf-dashboard-avatar .avatar,
    .pvf-dashboard-avatar .pvf-profile-avatar-img{
        width:90px !important;
        height:90px !important;
        min-width:90px !important;
    }
}


/* ===== V2.40 — HEADER DESKTOP ALIGNÉ ===== */
@media(min-width:701px){
    .pvf-dashboard-head{
        grid-template-columns:minmax(0,1fr) minmax(300px,360px) !important;
        align-items:center !important;
    }
    .pvf-dashboard-identity{
        justify-self:start !important;
        width:auto !important;
        margin-left:0 !important;
        text-align:left !important;
    }
    .pvf-dashboard-identity-text{
        text-align:left !important;
        align-items:flex-start !important;
    }
    .pvf-member-head-badge{
        justify-self:end !important;
        width:100% !important;
    }
    .pvf-dashboard-avatar,
    .pvf-dashboard-avatar img,
    .pvf-dashboard-avatar .avatar,
    .pvf-dashboard-avatar .pvf-profile-avatar-img{
        width:112px !important;
        height:112px !important;
        min-width:112px !important;
    }
}


/* V2.85 — Accès au profil partageable, à gauche de la déconnexion. */
.pvf-dashboard-identity-text .pvf-dashboard-account-links {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    margin-top:9px;
}
.pvf-dashboard-account-links .pvf-dashboard-view-profile {
    display:inline-flex;
    align-items:center;
    border:1px solid #ddd;
    border-radius:999px;
    padding:7px 13px;
    color:#444 !important;
    text-decoration:none !important;
    font-size:13px;
    font-weight:700;
    white-space:nowrap;
}
.pvf-dashboard-head .pvf-dashboard-identity-text .pvf-dashboard-account-links > a {
    margin:0 !important;
}
.pvf-dashboard-account-links > a:focus-visible {
    outline:2px solid #4f6d3a;
    outline-offset:3px;
}
