/*
 * Habillage « Prospectus » des pages intérieures : fiche deal, favoris,
 * poster/compléter un deal, profil, classement, badges, récompenses,
 * vendeur, contact, transfert de deals, publicité (sponsor) et pages
 * d'information (à propos, CGU, confidentialité). Complète prospectus.css (variables,
 * en-tête, coupons, pied de page, navigation mobile, connexion, cookies),
 * chargé avec lui par includes/prospectus_head.php en fin de <head>.
 *
 * Même principe que sur l'accueil : le balisage et la logique PHP/JS ne
 * changent pas, on restyle les classes existantes. Les sélecteurs passent
 * par body.vpc-prospectus pour l'emporter sur les <style> propres à chaque
 * page, y compris ceux placés plus loin dans le <body>.
 */

/* ================================================================ commun */
/* Encarts papier : bord encre, ombre portée franche, angles vifs. */
body.vpc-prospectus .pros-paper-box,
body.vpc-prospectus .detail-temperature,
body.vpc-prospectus .detail-share-section,
body.vpc-prospectus .detail-vendor-card,
body.vpc-prospectus .comment-form-wrapper,
body.vpc-prospectus .comment-login-prompt,
body.vpc-prospectus .deal-hot-section,
body.vpc-prospectus .detail-description,
body.vpc-prospectus .detail-specs-table {
    background: var(--pros-paper) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 6px 6px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
/* Gros titres de section, en Anton capitales. */
body.vpc-prospectus .detail-section-title,
body.vpc-prospectus .favoris-title,
body.vpc-prospectus .page-title {
    font: 400 44px/0.92 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .005em;
    color: var(--pros-ink) !important;
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
}
/* Fil d'Ariane */
body.vpc-prospectus .detail-breadcrumb { font: 800 12px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .02em; color: var(--pros-ink) !important; }
body.vpc-prospectus .detail-breadcrumb a { color: var(--pros-ink) !important; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.vpc-prospectus .detail-breadcrumb .sep { color: var(--pros-red) !important; }

/* Boutons « encre » génériques */
body.vpc-prospectus .btn-primary,
body.vpc-prospectus .btn-outline,
body.vpc-prospectus .btn-sm {
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 400 16px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
}
body.vpc-prospectus .btn-primary { background: var(--pros-ink) !important; color: var(--pros-y) !important; }
body.vpc-prospectus .btn-outline { background: #fff !important; color: var(--pros-ink) !important; }

/* Toast */
body.vpc-prospectus .toast,
body.vpc-prospectus #toast {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 5px 5px 0 var(--pros-red) !important;
    font: 800 14px var(--pros-body) !important;
}

/* ============================================================= fiche deal */
body.vpc-prospectus .detail-expired-banner {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 0 !important;
    border-radius: 0 !important;
    font: 400 20px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    transform: rotate(-1deg);
}
@media (min-width: 901px) { body.vpc-prospectus .detail-main { gap: 44px !important; padding-top: 18px; } }

/* Deal expiré : styles.css estompe tout le bloc (opacité), ce qui salit le
   jaune du fond. On garde le papier opaque, on passe le contenu en gris et on
   pose un tampon « Expiré » (au lieu du ruban, qui déborderait du cadre). */
body.vpc-prospectus .detail-main.detail-expired { opacity: 1; filter: none; }
body.vpc-prospectus .detail-main.detail-expired .gallery-track,
body.vpc-prospectus .detail-main.detail-expired .gallery-thumbs,
body.vpc-prospectus .detail-main.detail-expired .detail-info { filter: grayscale(1) contrast(.65) brightness(1.15); opacity: 1; }
body.vpc-prospectus .detail-main.detail-expired .gallery-main::after {
    top: 22px; left: 22px; z-index: 7;
    transform: rotate(-12deg);
    background: var(--pros-paper);
    color: var(--pros-red);
    border: 4px solid var(--pros-red);
    outline: 2px solid var(--pros-red); outline-offset: -9px;
    box-shadow: none;
    padding: 10px 16px 8px;
    font: 400 34px/1 var(--pros-big);
    letter-spacing: .06em;
}

/* Galerie : affiche scotchée */
/* Pas de « position » ici : la galerie est sticky en PC (top: 100px), statique en mobile. */
body.vpc-prospectus .detail-gallery { transform: rotate(-1.2deg); background: none !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; box-shadow: none !important; }
body.vpc-prospectus .detail-gallery::before {
    content: ''; position: absolute; z-index: 5; top: -14px; left: 50px;
    width: 130px; height: 32px; background: rgba(255, 255, 255, .6); border: 1px solid rgba(0, 0, 0, .08);
    transform: rotate(-7deg); pointer-events: none;
}
body.vpc-prospectus .gallery-main {
    background: #fff !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 10px 10px 0 var(--pros-ink) !important;
    overflow: visible !important;
}
/* Le cadre laisse déborder le badge ; les images sont découpées par .gallery-viewport (styles.css). */
body.vpc-prospectus .gallery-main .deal-reduction {
    display: grid !important; place-items: center;
    left: auto !important; right: -26px !important; top: -26px !important;
    width: 86px !important; height: 86px !important; min-height: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 3.5px solid var(--pros-ink) !important;
    font: 400 28px/1 var(--pros-big) !important;
    transform: rotate(12deg);
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    z-index: 6 !important;
}
body.vpc-prospectus .gallery-nav {
    background: var(--pros-y) !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 2px 2px 0 var(--pros-ink) !important;
    backdrop-filter: none !important;
}
body.vpc-prospectus .gallery-dot { background: #fff !important; border: 2px solid var(--pros-ink) !important; }
body.vpc-prospectus .gallery-dot.active { background: var(--pros-ink) !important; }
body.vpc-prospectus .gallery-thumbs { gap: 10px !important; padding-top: 16px !important; }
body.vpc-prospectus .gallery-thumb {
    background: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    opacity: 1; /* pas de transparence : le jaune du fond teinterait les photos */
}
body.vpc-prospectus .gallery-thumb.active { box-shadow: 4px 4px 0 var(--pros-red) !important; outline: none !important; }

/* Colonne d'infos */
body.vpc-prospectus .detail-temperature { padding: 12px 18px !important; transform: rotate(.6deg); }
body.vpc-prospectus .detail-temp-value { font: 400 40px/1 var(--pros-big) !important; color: var(--pros-ink) !important; text-shadow: none !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.vpc-prospectus .detail-temp-value.temp-hot,
body.vpc-prospectus .detail-temp-value.temp-burning,
body.vpc-prospectus .detail-temp-value.hot { color: var(--pros-red) !important; }
body.vpc-prospectus .detail-temp-value.temp-cold,
body.vpc-prospectus .detail-temp-value.cold { color: var(--pros-blue) !important; }
body.vpc-prospectus .detail-temp-label { font: 800 11px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .06em; color: var(--pros-ink) !important; }
body.vpc-prospectus .temp-btn {
    background: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    box-shadow: 2px 2px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .temp-btn.vote-hot.active,
body.vpc-prospectus .temp-btn.vote-hot.voted { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .temp-btn.vote-cold.active,
body.vpc-prospectus .temp-btn.vote-cold.voted { background: var(--pros-blue) !important; color: #fff !important; }
body.vpc-prospectus .detail-favorite-btn {
    background: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 2px 2px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .detail-favorite-btn.active { background: var(--pros-red) !important; color: #fff !important; }

body.vpc-prospectus .detail-merchant,
body.vpc-prospectus .detail-merchant a { font: 800 13px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .02em; color: var(--pros-ink) !important; }
body.vpc-prospectus .detail-merchant-logo { background: #fff; border: 2px solid var(--pros-ink); border-radius: 0 !important; }
body.vpc-prospectus .detail-title {
    font: 400 clamp(38px, 3.6vw, 58px)/0.95 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .005em;
    color: var(--pros-ink) !important;
    margin: 6px 0 14px !important;
}
body.vpc-prospectus .detail-pricing { gap: 12px 16px !important; align-items: center; }
body.vpc-prospectus .detail-price-current {
    display: inline-block;
    font: 400 52px/1 var(--pros-big) !important;
    color: #fff !important;
    background: var(--pros-red) !important;
    -webkit-text-fill-color: #fff !important;
    padding: 8px 16px 6px;
    border: 3.5px solid var(--pros-ink);
    box-shadow: 6px 6px 0 var(--pros-ink);
    transform: rotate(-2deg);
    text-shadow: none !important;
}
body.vpc-prospectus .detail-price-original { font: 700 22px var(--pros-body) !important; color: var(--pros-ink) !important; text-decoration: line-through; text-decoration-color: var(--pros-red) !important; text-decoration-thickness: 3px !important; }
body.vpc-prospectus .detail-savings { font: 400 20px var(--pros-hand) !important; color: var(--pros-blue) !important; background: none !important; border: 0 !important; padding: 0 !important; transform: rotate(-3deg); }
body.vpc-prospectus .price-history-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 800 12px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .detail-tag {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 800 12px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .detail-tag.tag-shipping { background: var(--pros-green) !important; color: #fff !important; }
body.vpc-prospectus .detail-tag.tag-hot { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .detail-tag.tag-expire { background: var(--pros-y) !important; }
body.vpc-prospectus .detail-tag-pill {
    background: var(--pros-paper) !important;
    color: var(--pros-ink) !important;
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 500 13px var(--pros-mono) !important;
}
body.vpc-prospectus .detail-odr {
    background: var(--pros-pink) !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
}
body.vpc-prospectus .detail-odr * { color: var(--pros-ink) !important; }
body.vpc-prospectus .detail-promo {
    background: var(--pros-y) !important;
    border: 3px dashed var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
body.vpc-prospectus .detail-promo-label { font: 400 18px var(--pros-hand) !important; color: var(--pros-blue) !important; text-transform: none !important; }
body.vpc-prospectus .detail-promo-code {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 500 18px var(--pros-mono) !important;
}

/* Bouton principal : grosse étiquette encre */
body.vpc-prospectus .detail-cta-wrapper { gap: 14px !important; align-items: center; }
body.vpc-prospectus .detail-cta-btn {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 7px 7px 0 var(--pros-red) !important;
    font: 400 26px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: 15px 28px !important;
    text-shadow: none !important;
    transition: transform .12s, box-shadow .12s !important;
}
body.vpc-prospectus .detail-cta-btn:hover { transform: translate(-2px, -2px); box-shadow: 9px 9px 0 var(--pros-red) !important; }
body.vpc-prospectus .detail-cta-btn:active { transform: translate(4px, 4px); box-shadow: 2px 2px 0 var(--pros-red) !important; }
body.vpc-prospectus .deal-report-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 2px 2px 0 var(--pros-ink) !important;
    font: 800 11px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .deal-report-done { font: 400 16px var(--pros-hand) !important; color: var(--pros-blue) !important; }

body.vpc-prospectus .detail-share-section { padding: 14px 18px !important; transform: rotate(-.5deg); }
body.vpc-prospectus .detail-share-label { font: 400 20px var(--pros-big) !important; text-transform: uppercase; letter-spacing: .03em; color: var(--pros-ink) !important; }
body.vpc-prospectus .share-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
}
body.vpc-prospectus .share-btn:hover { background: var(--pros-ink) !important; color: var(--pros-y) !important; }

body.vpc-prospectus .deal-hot-section { padding: 18px 20px !important; }
body.vpc-prospectus .deal-hot-title { font: 400 24px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .deal-hot-reason { background: #fff !important; border: 2px solid var(--pros-ink) !important; border-radius: 0 !important; color: var(--pros-ink) !important; }

body.vpc-prospectus .detail-meta-row { font: 700 13px var(--pros-body) !important; color: var(--pros-ink) !important; border-top: 2px solid var(--pros-ink) !important; }
body.vpc-prospectus .detail-meta-row a { color: var(--pros-blue) !important; font: 400 16px var(--pros-hand) !important; }

/* Sections du bas */
body.vpc-prospectus .detail-content { padding-top: 10px; }
body.vpc-prospectus .detail-section { margin-bottom: 30px !important; border: 0 !important; background: none !important; box-shadow: none !important; }
body.vpc-prospectus .detail-section-title { font-size: 40px !important; margin-bottom: 16px !important; }
body.vpc-prospectus .detail-description { padding: 20px 24px !important; font: 500 15px/1.65 var(--pros-body) !important; }
body.vpc-prospectus .detail-description a { color: var(--pros-blue) !important; }
body.vpc-prospectus .detail-specs-table { border-collapse: separate; border-spacing: 0; overflow: hidden; }
body.vpc-prospectus .detail-specs-table td,
body.vpc-prospectus .detail-specs-table th { border-color: var(--pros-ink) !important; border-bottom: 2px solid var(--pros-ink) !important; color: var(--pros-ink) !important; background: transparent !important; }
body.vpc-prospectus .detail-specs-table tr:last-child td { border-bottom: 0 !important; }
body.vpc-prospectus .spec-label { font: 800 13px var(--pros-body) !important; text-transform: uppercase; }
body.vpc-prospectus .detail-inclus-list li { color: var(--pros-ink) !important; font-weight: 700; }
body.vpc-prospectus .detail-vendor-card { padding: 18px 22px !important; transform: rotate(.4deg); }
body.vpc-prospectus .vendor-name { font: 400 28px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .vendor-desc,
body.vpc-prospectus .vendor-detail { color: #333 !important; }
body.vpc-prospectus .vendor-link {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-red) !important;
    font: 400 17px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
}

/* Commentaires */
body.vpc-prospectus .comments-empty { font: 400 20px var(--pros-hand) !important; color: var(--pros-blue) !important; font-style: normal !important; }
body.vpc-prospectus .comment {
    background: var(--pros-paper) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
}
body.vpc-prospectus .comment-reply { background: #fff !important; box-shadow: 3px 3px 0 var(--pros-ink) !important; }
body.vpc-prospectus .comment-author { font: 400 18px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .comment-date { font: 500 12px var(--pros-mono) !important; color: #555 !important; }
body.vpc-prospectus .comment-body { color: var(--pros-ink) !important; font: 500 14px/1.55 var(--pros-body) !important; }
body.vpc-prospectus .comment-avatar { border: 2.5px solid var(--pros-ink) !important; }
body.vpc-prospectus .comment-vote-btn,
body.vpc-prospectus .comment-reply-btn,
body.vpc-prospectus .comment-report-btn {
    background: #fff !important;
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    color: var(--pros-ink) !important;
    font: 800 12px var(--pros-body) !important;
}
body.vpc-prospectus .comment-form-wrapper { padding: 18px 20px !important; }
body.vpc-prospectus .comment-form-title { font: 400 24px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .comment-input,
body.vpc-prospectus .reply-input,
body.vpc-prospectus .rich-editor,
body.vpc-prospectus .rich-content {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: var(--pros-body) !important;
}
body.vpc-prospectus .rich-toolbar,
body.vpc-prospectus .comment-toolbar { background: var(--pros-y) !important; border: 2.5px solid var(--pros-ink) !important; border-bottom: 0 !important; border-radius: 0 !important; }
body.vpc-prospectus .toolbar-btn,
body.vpc-prospectus .rich-btn { color: var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .comment-char-count { font: 500 12px var(--pros-mono) !important; color: #555 !important; }
body.vpc-prospectus .comment-login-prompt { padding: 18px !important; font: 700 15px var(--pros-body) !important; border-style: dashed !important; box-shadow: none !important; }
body.vpc-prospectus .comment-login-prompt a { color: var(--pros-red) !important; font-weight: 900; }
body.vpc-prospectus .comment-confirm-overlay { background: rgba(13, 13, 13, .55) !important; backdrop-filter: none !important; }
body.vpc-prospectus .comment-confirm-modal {
    background: var(--pros-paper) !important;
    color: var(--pros-ink) !important;
    border: 4px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 10px 10px 0 var(--pros-ink) !important;
}
body.vpc-prospectus .report-reason-option { border: 2px solid var(--pros-ink) !important; border-radius: 0 !important; background: #fff !important; color: var(--pros-ink) !important; }

/* Deals similaires : petits coupons */
body.vpc-prospectus .similar-deals-grid { gap: 26px !important; padding: 6px 4px 10px; }
body.vpc-prospectus .similar-deal-card {
    position: relative;
    background: var(--pros-paper) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 5px 5px 0 var(--pros-ink) !important;
    overflow: visible !important;
    color: var(--pros-ink) !important;
    transition: transform .15s, box-shadow .15s !important;
}
body.vpc-prospectus .similar-deal-card:nth-child(odd) { transform: rotate(-.8deg); }
body.vpc-prospectus .similar-deal-card:nth-child(even) { transform: rotate(.8deg); }
body.vpc-prospectus .similar-deal-card:hover { transform: rotate(0) translate(-2px, -2px); box-shadow: 8px 8px 0 var(--pros-ink) !important; }
body.vpc-prospectus .similar-deal-img { background: #fff !important; border-bottom: 2.5px dashed var(--pros-ink) !important; overflow: hidden; }
body.vpc-prospectus .similar-deal-img .deal-reduction {
    border-radius: 0 !important;
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 2px solid var(--pros-ink) !important;
    font: 400 15px var(--pros-big) !important;
    box-shadow: none !important;
}
body.vpc-prospectus .similar-deal-merchant { font: 800 11px var(--pros-body) !important; text-transform: uppercase; color: #444 !important; }
body.vpc-prospectus .similar-deal-title { font: 800 14px/1.25 var(--pros-body) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .similar-deal-price { font: 400 24px var(--pros-big) !important; color: var(--pros-ink) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.vpc-prospectus .similar-deal-old { color: #555 !important; text-decoration-color: var(--pros-red) !important; text-decoration-thickness: 2px !important; }
body.vpc-prospectus .similar-deal-temp { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; font: 400 14px var(--pros-big) !important; }

/* Fenêtres modales propres à la fiche (historique des prix, édition admin…) */
body.vpc-prospectus .price-history-modal,
body.vpc-prospectus .price-history-content,
body.vpc-prospectus .admin-edit-section {
    background: var(--pros-paper) !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 8px 8px 0 var(--pros-ink) !important;
}
body.vpc-prospectus .admin-edit-locked,
body.vpc-prospectus .admin-edit-msg { background: var(--pros-y) !important; color: var(--pros-ink) !important; border: 2.5px dashed var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .admin-edit-title { font: 400 26px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .admin-edit-form input,
body.vpc-prospectus .admin-edit-form select,
body.vpc-prospectus .admin-edit-form textarea,
body.vpc-prospectus .image-url-add input { background: #fff !important; color: var(--pros-ink) !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .admin-edit-submit,
body.vpc-prospectus .image-url-add button { background: var(--pros-ink) !important; color: var(--pros-y) !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; box-shadow: 3px 3px 0 var(--pros-red) !important; }
body.vpc-prospectus .image-upload-zone { background: #fff !important; border: 2.5px dashed var(--pros-ink) !important; border-radius: 0 !important; color: var(--pros-ink) !important; }

@media (max-width: 900px) {
    body.vpc-prospectus .detail-gallery { transform: none; }
    body.vpc-prospectus .detail-gallery::before { display: none; }
    body.vpc-prospectus .gallery-main { box-shadow: 7px 7px 0 var(--pros-ink) !important; }
    body.vpc-prospectus .gallery-main .deal-reduction { width: 70px !important; height: 70px !important; font-size: 22px !important; right: -8px !important; top: -18px !important; }
    body.vpc-prospectus .detail-title { font-size: 38px !important; }
    body.vpc-prospectus .detail-price-current { font-size: 42px !important; }
    body.vpc-prospectus .detail-section-title { font-size: 34px !important; }
    body.vpc-prospectus .detail-cta-btn { font-size: 22px !important; }
}

/* ================================================================ favoris */
body.vpc-prospectus .favoris-header {
    background: var(--pros-paper) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 9px 9px 0 var(--pros-ink) !important;
    transform: rotate(-.6deg);
    padding: 24px 28px !important;
}
body.vpc-prospectus .favoris-title { font-size: 64px !important; display: flex; align-items: center; gap: 12px; }
body.vpc-prospectus .favoris-title svg,
body.vpc-prospectus .favoris-title .heart-icon { color: var(--pros-red) !important; fill: var(--pros-red) !important; filter: none !important; }
body.vpc-prospectus .favoris-subtitle { font: 400 20px/1.2 var(--pros-hand) !important; color: var(--pros-blue) !important; transform: rotate(-1.5deg); display: inline-block; }
body.vpc-prospectus .favoris-stats { gap: 14px !important; }
body.vpc-prospectus .favoris-stat-item {
    background: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .favoris-stat-item:nth-child(2) { transform: rotate(1.5deg); }
body.vpc-prospectus .favoris-stat-item:hover { transform: translate(-2px, -2px); border-color: var(--pros-ink) !important; }
body.vpc-prospectus .favoris-stat-item.is-active,
body.vpc-prospectus .favoris-stat-item[data-fav-filter].is-active {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border-color: var(--pros-ink) !important;
    box-shadow: 4px 4px 0 var(--pros-red) !important;
}
body.vpc-prospectus .favoris-stat-value { font: 400 40px/1 var(--pros-big) !important; color: inherit !important; text-shadow: none !important; }
body.vpc-prospectus .favoris-stat-item:not(.is-active) .favoris-stat-success { color: var(--pros-green) !important; }
body.vpc-prospectus .favoris-stat-item:not(.is-active) .favoris-stat-danger { color: var(--pros-red) !important; }
body.vpc-prospectus .favoris-stat-label { font: 800 12px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .05em; color: inherit !important; }
body.vpc-prospectus .favoris-search-wrap { margin: 34px auto 30px !important; }
body.vpc-prospectus #favorisSearchInput {
    border: 3px solid var(--pros-ink);
    border-radius: 0;
    background: #fff;
    color: var(--pros-ink);
    box-shadow: 4px 4px 0 var(--pros-ink);
    font: 700 15px var(--pros-body);
}
body.vpc-prospectus #favorisSearchInput:focus { border-color: var(--pros-ink); box-shadow: 4px 4px 0 var(--pros-blue); }
body.vpc-prospectus #favorisSearchInput::placeholder { color: #777; }
body.vpc-prospectus .favoris-search-icon { color: var(--pros-ink); }
body.vpc-prospectus #favorisSearchClear { background: var(--pros-ink); color: var(--pros-y); border-radius: 0; }
body.vpc-prospectus .favoris-search-noresult { font: 400 22px var(--pros-hand) !important; color: var(--pros-blue) !important; }
/* Deals expirés : tampon « Expiré » posé de travers sur le coupon */
body.vpc-prospectus #favorisGrid .deal-card.deal-expired .deal-expired-badge {
    top: 34px; left: 22px; z-index: 7;
    background: var(--pros-paper);
    color: var(--pros-red);
    border: 3px solid var(--pros-red);
    outline: 1.5px solid var(--pros-red); outline-offset: -7px;
    border-radius: 0;
    box-shadow: none;
    padding: 8px 12px 6px;
    font: 400 22px/1 var(--pros-big);
    letter-spacing: .06em;
    transform: rotate(-12deg);
}
/* La carte reste nette (styles.css l'estompait en plus du contenu) : seul son contenu passe en gris. */
body.vpc-prospectus #favorisGrid .deal-card.deal-expired { opacity: 1; box-shadow: 5px 5px 0 rgba(13, 13, 13, .55) !important; }
@media (max-width: 720px) {
    body.vpc-prospectus .favoris-header { padding: 18px 16px !important; box-shadow: 6px 6px 0 var(--pros-ink) !important; }
    body.vpc-prospectus .favoris-title { font-size: 46px !important; }
    body.vpc-prospectus .favoris-stat-value { font-size: 32px !important; }
}

/* ========================================== formulaires (ajout, profil) */
body.vpc-prospectus .profil-card {
    background: var(--pros-paper) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 9px 9px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .profil-form .form-group label,
body.vpc-prospectus .profil-card .form-group > label {
    font: 800 12px/1.3 var(--pros-body) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .profil-form .form-group { margin-bottom: 18px; }
body.vpc-prospectus .field-hint { font: 500 11px var(--pros-mono) !important; text-transform: none !important; letter-spacing: 0 !important; color: #555 !important; }
body.vpc-prospectus .profil-form input[type="text"],
body.vpc-prospectus .profil-form input[type="url"],
body.vpc-prospectus .profil-form input[type="email"],
body.vpc-prospectus .profil-form input[type="number"],
body.vpc-prospectus .profil-form input[type="password"],
body.vpc-prospectus .profil-form input[type="date"],
body.vpc-prospectus .profil-form input:not([type]),
body.vpc-prospectus .profil-form select,
body.vpc-prospectus .profil-form textarea,
body.vpc-prospectus .image-url-add-row input {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 600 14px var(--pros-body) !important;
}
body.vpc-prospectus .profil-form input:focus,
body.vpc-prospectus .profil-form select:focus,
body.vpc-prospectus .profil-form textarea:focus,
body.vpc-prospectus .image-url-add-row input:focus { outline: none !important; box-shadow: 4px 4px 0 var(--pros-blue) !important; border-color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-form input::placeholder,
body.vpc-prospectus .profil-form textarea::placeholder { color: #888 !important; }
body.vpc-prospectus .profil-form input[type="checkbox"],
body.vpc-prospectus .profil-form input[type="radio"] { accent-color: var(--pros-ink); width: 18px; height: 18px; }
body.vpc-prospectus .form-checkbox label { text-transform: none !important; font: 700 14px var(--pros-body) !important; letter-spacing: 0 !important; }
body.vpc-prospectus .profil-form .btn-primary,
body.vpc-prospectus .profil-form button[type="submit"] {
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 6px 6px 0 var(--pros-ink) !important;
    font: 400 24px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: 14px 22px !important;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-prospectus .profil-form .btn-primary:hover,
body.vpc-prospectus .profil-form button[type="submit"]:hover { transform: translate(-2px, -2px); box-shadow: 8px 8px 0 var(--pros-ink) !important; }
body.vpc-prospectus .form-error {
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    font: 800 14px var(--pros-body) !important;
}
body.vpc-prospectus .form-success,
body.vpc-prospectus .profil-success {
    background: var(--pros-green) !important;
    color: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    font: 800 14px var(--pros-body) !important;
}

/* ============================================================ poster un deal */
body.vpc-page-ajouter.vpc-prospectus .category-hero,
body.vpc-page-completer.vpc-prospectus .category-hero,
body.vpc-page-transfert.vpc-prospectus .category-hero {
    max-width: 1000px !important;
    margin: 0 auto !important;
    padding: 30px 20px 6px !important;
}
body.vpc-page-profil.vpc-prospectus .category-hero,
body.vpc-page-vendeur.vpc-prospectus .category-hero {
    width: calc(100% - 32px);
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 30px 24px 10px !important;
}
body.vpc-prospectus .breadcrumb { font: 800 12px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .02em; color: var(--pros-ink) !important; }
body.vpc-prospectus .breadcrumb a { color: var(--pros-ink) !important; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.vpc-prospectus .breadcrumb .sep { color: var(--pros-red) !important; }
body.vpc-page-ajouter.vpc-prospectus .hero-title-row { margin-top: 14px; }
body.vpc-page-ajouter.vpc-prospectus .hero-title-row h1,
body.vpc-page-profil.vpc-prospectus .category-hero h1,
body.vpc-page-completer.vpc-prospectus .category-hero h1,
body.vpc-page-transfert.vpc-prospectus .category-hero h1,
body.vpc-page-vendeur.vpc-prospectus .category-hero h1 { font: 400 clamp(52px, 6vw, 88px)/0.88 var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-page-profil.vpc-prospectus .category-hero h1,
body.vpc-page-completer.vpc-prospectus .category-hero h1,
body.vpc-page-transfert.vpc-prospectus .category-hero h1,
body.vpc-page-vendeur.vpc-prospectus .category-hero h1 { margin: 14px 0 0 !important; }
body.vpc-page-ajouter.vpc-prospectus .hero-title-row h1 .neon,
body.vpc-page-profil.vpc-prospectus .category-hero h1 .neon,
body.vpc-page-completer.vpc-prospectus .category-hero h1 .neon,
body.vpc-page-transfert.vpc-prospectus .category-hero h1 .neon,
body.vpc-page-vendeur.vpc-prospectus .category-hero h1 .neon {
    background: var(--pros-ink); color: var(--pros-y) !important; padding: .07em .12em .02em; line-height: 1;
    display: inline-block; transform: rotate(-2deg); text-shadow: none !important;
    -webkit-text-fill-color: currentColor !important;
}
body.vpc-prospectus .btn-reset-deal {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    font: 400 17px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    transform: rotate(2deg);
}
body.vpc-prospectus .btn-reset-deal:hover { filter: none !important; transform: rotate(0); box-shadow: 6px 6px 0 var(--pros-ink) !important; }
body.vpc-page-ajouter.vpc-prospectus .profil-container,
body.vpc-page-completer.vpc-prospectus .profil-container { max-width: 1000px; padding-top: 24px; padding-bottom: 60px; }
body.vpc-page-ajouter.vpc-prospectus .profil-card,
body.vpc-page-completer.vpc-prospectus .profil-card { padding: 28px !important; }
body.vpc-prospectus .add-mode-choice { gap: 18px !important; }
body.vpc-prospectus .add-mode-card {
    position: relative;
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 3px dashed var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-prospectus .add-mode-card:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--pros-ink) !important; border-color: var(--pros-ink) !important; }
body.vpc-prospectus .add-mode-card.active {
    background: var(--pros-y) !important;
    border-style: solid !important;
    box-shadow: 6px 6px 0 var(--pros-ink) !important;
    transform: rotate(-1deg);
}
body.vpc-prospectus .add-mode-card.active::after {
    content: '✓ choisi'; position: absolute; right: 12px; top: -14px;
    background: var(--pros-ink); color: var(--pros-y);
    font: 400 14px/1 var(--pros-big); text-transform: uppercase; letter-spacing: .05em;
    padding: 5px 8px; transform: rotate(4deg);
}
body.vpc-prospectus .add-mode-card .add-mode-title { font: 400 24px/1 var(--pros-big) !important; text-transform: uppercase; letter-spacing: .02em; }
body.vpc-prospectus .add-mode-card .add-mode-desc { color: #333 !important; font-weight: 500; }
body.vpc-prospectus .add-mode-card .add-mode-desc strong { color: var(--pros-ink) !important; }
body.vpc-prospectus .mail-toggle-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font-weight: 800 !important;
}
body.vpc-prospectus .mail-toggle-btn .mail-toggle-switch { background: #fff !important; border: 2.5px solid var(--pros-ink); border-radius: 0 !important; width: 44px !important; height: 24px !important; }
body.vpc-prospectus .mail-toggle-btn .mail-toggle-switch::after { background: var(--pros-ink) !important; border-radius: 0 !important; top: 1.5px !important; left: 1.5px !important; width: 16px !important; height: 16px !important; }
body.vpc-prospectus .mail-toggle-btn.active { background: var(--pros-y) !important; }
body.vpc-prospectus .mail-toggle-btn.active .mail-toggle-switch { background: var(--pros-green) !important; }
body.vpc-prospectus .mail-toggle-btn.active .mail-toggle-switch::after { background: #fff !important; transform: translateX(20px) !important; }
body.vpc-prospectus .add-mode-warn,
body.vpc-prospectus .url-mode-warn,
body.vpc-prospectus .dup-warning {
    background: var(--pros-y) !important;
    color: var(--pros-ink) !important;
    border: 2.5px dashed var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-weight: 600 !important;
}
body.vpc-prospectus .add-mode-warn { display: block !important; }
body.vpc-prospectus .add-mode-warn .warn-blink { margin-right: 6px; }
body.vpc-prospectus .add-mode-warn strong,
body.vpc-prospectus .url-mode-warn strong,
body.vpc-prospectus .dup-warning strong { color: var(--pros-ink) !important; font-weight: 900; text-decoration: underline; text-decoration-color: var(--pros-red); text-decoration-thickness: 3px; }
body.vpc-prospectus .dup-warning a { color: var(--pros-blue) !important; font-weight: 800; }
body.vpc-prospectus .btn-autofill {
    background: var(--pros-blue) !important;
    color: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 400 17px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
}
body.vpc-prospectus .autofill-msg { font: 400 17px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .autofill-msg.success { color: var(--pros-green) !important; }
body.vpc-prospectus .autofill-msg.error { color: var(--pros-red) !important; }
body.vpc-prospectus .odr-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 800 13px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .odr-btn.active { background: var(--pros-pink) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .image-preview-item { border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; background: #fff !important; }
body.vpc-prospectus .image-preview-remove { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; }
body.vpc-prospectus .image-preview-remove:hover { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .image-main-badge { background: var(--pros-red) !important; color: #fff !important; border-radius: 0 !important; border: 2px solid var(--pros-ink); font-family: var(--pros-body) !important; }
body.vpc-prospectus .image-zoom-popup { border: 3px solid var(--pros-ink) !important; border-radius: 0 !important; box-shadow: 8px 8px 0 var(--pros-ink) !important; background: #fff !important; }
body.vpc-prospectus .image-upload-text { font: 400 20px var(--pros-big) !important; text-transform: uppercase; letter-spacing: .02em; }
body.vpc-prospectus .image-upload-sub { font: 400 16px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .image-upload-zone:hover,
body.vpc-prospectus .image-upload-zone.dragover { background: var(--pros-y) !important; color: var(--pros-ink) !important; border-style: solid !important; }
body.vpc-prospectus .title-suggest {
    background: var(--pros-paper) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 6px 6px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .deal-success h2 { font: 400 46px/0.95 var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .deal-success p { font: 400 20px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .deal-success .verify-icon { font-size: 56px; transform: rotate(-8deg); display: inline-block; }
@media (max-width: 720px) {
    body.vpc-page-ajouter.vpc-prospectus .category-hero,
    body.vpc-page-completer.vpc-prospectus .category-hero,
    body.vpc-page-transfert.vpc-prospectus .category-hero { padding: 20px 16px 4px !important; }
    body.vpc-page-ajouter.vpc-prospectus .profil-container,
    body.vpc-page-completer.vpc-prospectus .profil-container { padding-left: 14px; padding-right: 14px; }
    body.vpc-page-ajouter.vpc-prospectus .profil-card,
    body.vpc-page-completer.vpc-prospectus .profil-card { padding: 18px 14px !important; box-shadow: 6px 6px 0 var(--pros-ink) !important; }
    body.vpc-prospectus .btn-reset-deal { transform: none; }
}

/* ============================================================== classement */
body.vpc-prospectus .leaderboard-page { padding-top: 30px; }
body.vpc-prospectus .back-link {
    display: inline-block;
    font: 400 18px var(--pros-hand) !important;
    color: var(--pros-blue) !important;
    background: none !important;
    border: 0 !important;
    transform: rotate(-2deg);
    text-decoration: none !important;
}
body.vpc-prospectus .back-link:hover { text-decoration: underline !important; }
body.vpc-prospectus .leaderboard-hero { margin: 24px 0 46px !important; }
body.vpc-prospectus .leaderboard-hero::before { display: none !important; }
body.vpc-prospectus .leaderboard-hero h1 {
    display: inline-block;
    font: 400 clamp(44px, 5vw, 74px)/0.95 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .005em;
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    -webkit-text-fill-color: currentColor !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    padding: .1em .22em .04em;
    transform: rotate(-1.5deg);
    box-shadow: 10px 10px 0 var(--pros-red);
    filter: none !important;
    text-shadow: none !important;
    animation: none !important;
}
body.vpc-prospectus .leaderboard-hero p { font: 400 24px/1.2 var(--pros-hand) !important; color: var(--pros-blue) !important; margin-top: 26px !important; transform: rotate(-1deg); }
body.vpc-prospectus .leaderboard-container {
    background: var(--pros-paper) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 10px 10px 0 var(--pros-ink) !important;
    overflow: visible !important;
}
body.vpc-prospectus .leaderboard-header {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 0 !important;
    font: 400 17px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .05em;
}
body.vpc-prospectus .leaderboard-header > div { color: var(--pros-y) !important; }
body.vpc-prospectus .leaderboard-row {
    border-bottom: 2.5px dashed rgba(13, 13, 13, .45) !important;
    background: transparent !important;
    color: var(--pros-ink) !important;
    transition: background .12s !important;
}
body.vpc-prospectus .leaderboard-row:last-child { border-bottom: 0 !important; }
body.vpc-prospectus .leaderboard-row:hover { background: var(--pros-y) !important; transform: none !important; }
body.vpc-prospectus .rank-badge {
    border-radius: 0 !important;
    border: 3px solid var(--pros-ink) !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 400 18px var(--pros-big) !important;
    color: var(--pros-ink) !important;
    transform: rotate(-6deg);
}
body.vpc-prospectus .rank-badge.gold { background: var(--pros-y) !important; transform: rotate(-8deg) scale(1.08); }
body.vpc-prospectus .rank-badge.gold,
body.vpc-prospectus .rank-badge.silver,
body.vpc-prospectus .rank-badge.bronze { font-size: 22px !important; }
body.vpc-prospectus .rank-badge.silver { background: #fff !important; }
body.vpc-prospectus .rank-badge.bronze { background: #ffb36b !important; }
body.vpc-prospectus .rank-badge.other { background: var(--pros-ink) !important; color: var(--pros-y) !important; box-shadow: none !important; }
body.vpc-prospectus .rank-badge[data-tooltip]::after {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 0 !important;
    border-radius: 0 !important;
    font: 800 12px var(--pros-body) !important;
    box-shadow: 3px 3px 0 var(--pros-red) !important;
    transform: rotate(6deg);
}
body.vpc-prospectus .leaderboard-row .user-avatar { border: 2.5px solid var(--pros-ink) !important; background: #fff !important; }
body.vpc-prospectus .leaderboard-row div.user-avatar { background: var(--pros-pink) !important; color: var(--pros-ink) !important; font: 400 20px var(--pros-big) !important; }
body.vpc-prospectus .user-name { font: 400 22px var(--pros-hand) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .user-badges { font: 600 12px var(--pros-body) !important; color: #444 !important; }
body.vpc-prospectus .user-badges strong { color: var(--pros-red) !important; }
body.vpc-prospectus .stat-cell { font: 400 24px var(--pros-big) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .stat-cell[data-label="Points"] { color: var(--pros-red) !important; font-size: 28px !important; }
body.vpc-prospectus .stat-label { font: 800 10px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .05em; color: #555 !important; }
@media (max-width: 768px) {
    body.vpc-prospectus .leaderboard-page { padding: 20px 14px; }
    body.vpc-prospectus .leaderboard-hero { margin: 16px 0 34px !important; }
    body.vpc-prospectus .leaderboard-hero h1 { font-size: 44px !important; box-shadow: 6px 6px 0 var(--pros-red); }
    body.vpc-prospectus .leaderboard-hero p { font-size: 19px !important; }
    body.vpc-prospectus .leaderboard-container { box-shadow: 6px 6px 0 var(--pros-ink) !important; }
    body.vpc-prospectus .stat-cell { font-size: 20px !important; border-top: 1.5px dashed rgba(13, 13, 13, .25) !important; }
    body.vpc-prospectus .stat-cell[data-label="Points"] { font-size: 22px !important; }
    body.vpc-prospectus .stat-cell::before { font: 800 11px var(--pros-body) !important; color: #444 !important; }
}

/* ================================================================== profil */
body.vpc-prospectus .profil-tabs-bar {
    border: 0 !important;
    gap: 10px !important;
    padding: 14px 24px 12px !important;
    flex-wrap: wrap;
    overflow: visible !important;
}
body.vpc-prospectus .profil-tab {
    background: var(--pros-paper) !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 800 13px var(--pros-body) !important;
    text-transform: uppercase;
    padding: 9px 13px !important;
    white-space: nowrap;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-prospectus .profil-tab:hover { transform: translate(-1px, -1px); box-shadow: 4px 4px 0 var(--pros-ink) !important; }
body.vpc-prospectus .profil-tab.active { background: var(--pros-ink) !important; color: var(--pros-y) !important; transform: rotate(-1.5deg); }
body.vpc-prospectus .profil-tab-admin { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .profil-tab::after { display: none !important; }
body.vpc-prospectus .tab-count {
    background: var(--pros-red) !important;
    color: #fff !important;
    border-radius: 0 !important;
    font: 400 13px var(--pros-big) !important;
    letter-spacing: .03em;
}
body.vpc-prospectus .profil-tab.active .tab-count { background: var(--pros-y) !important; color: var(--pros-ink) !important; }
body.vpc-page-profil.vpc-prospectus .profil-container { margin-top: 14px; }
body.vpc-page-profil.vpc-prospectus .profil-card { margin-bottom: 30px !important; }
body.vpc-page-profil.vpc-prospectus .profil-section > .profil-card:nth-child(even) { transform: rotate(.25deg); }
body.vpc-prospectus .profil-section-title { font: 400 32px/1 var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-deals-header .btn-primary { background: var(--pros-red) !important; color: #fff !important; box-shadow: 4px 4px 0 var(--pros-ink) !important; }

/* Avatar */
body.vpc-prospectus .avatar-current { border: 4px solid var(--pros-ink) !important; box-shadow: 5px 5px 0 var(--pros-red) !important; background: #fff !important; }
body.vpc-prospectus .avatar-cat-tab {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 800 12px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .avatar-cat-tab.active { background: var(--pros-ink) !important; color: var(--pros-y) !important; }
body.vpc-prospectus .avatar-option { background: #fff !important; border: 2.5px solid var(--pros-ink) !important; transition: transform .12s; }
body.vpc-prospectus .avatar-option:hover { transform: rotate(-6deg) scale(1.06); border-color: var(--pros-ink) !important; }
body.vpc-prospectus .avatar-option.selected { border-color: var(--pros-red) !important; box-shadow: 0 0 0 3px var(--pros-red) !important; }

/* Informations */
body.vpc-prospectus .profil-info-item { border-bottom: 2px dashed rgba(13, 13, 13, .3); padding-bottom: 10px; }
body.vpc-prospectus .profil-info-label { font: 800 11px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .05em; color: #555 !important; }
body.vpc-prospectus .profil-info-value { font: 800 17px var(--pros-body) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-info-value a,
body.vpc-prospectus a.profil-info-value { color: var(--pros-blue) !important; font: 400 26px var(--pros-big) !important; }

/* Listes (commentaires, réponses, alertes, mes deals) */
body.vpc-prospectus .profil-empty { font: 400 20px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .profil-empty a { color: var(--pros-red) !important; }
body.vpc-prospectus .profil-list { gap: 14px !important; }
body.vpc-prospectus .profil-list-item {
    background: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .profil-list-item:hover { border-color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-list-deal { font: 800 15px var(--pros-body) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-list-deal:hover { color: var(--pros-red) !important; }
body.vpc-prospectus .profil-list-date { font: 500 12px var(--pros-mono) !important; color: #555 !important; }
body.vpc-prospectus .profil-list-body { color: #222 !important; font: 500 14px/1.55 var(--pros-body) !important; }
body.vpc-prospectus .profil-list-footer { border-top: 2px dashed rgba(13, 13, 13, .3) !important; }
body.vpc-prospectus .profil-list-meta { font: 700 13px var(--pros-body) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .profil-list-link { font: 400 17px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .reply-context { background: var(--pros-y) !important; border: 2px dashed var(--pros-ink) !important; border-left-width: 2px !important; border-radius: 0 !important; }
body.vpc-prospectus .reply-label { font: 800 11px var(--pros-body) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .reply-parent { color: #333 !important; }
body.vpc-prospectus .reply-author { font: 400 17px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .alert-tag {
    background: var(--pros-y) !important;
    color: var(--pros-ink) !important;
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 800 12px var(--pros-body) !important;
}
body.vpc-prospectus .status-badge {
    border: 2px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 400 13px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--pros-ink) !important;
    background: #fff !important;
    transform: rotate(2deg);
}
body.vpc-prospectus .status-badge.status-publie { background: var(--pros-green) !important; color: #fff !important; }
body.vpc-prospectus .status-badge.status-en_attente,
body.vpc-prospectus .status-badge.status-attente { background: var(--pros-y) !important; }
body.vpc-prospectus .status-badge.status-refuse,
body.vpc-prospectus .status-badge.status-expire { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .btn-danger {
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 400 15px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
}
body.vpc-prospectus .mydeals-search {
    background: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .mydeals-search input {
    background: transparent !important;
    color: var(--pros-ink) !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    font: 700 14px var(--pros-body) !important;
}
body.vpc-prospectus .mydeals-clear { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; }
body.vpc-prospectus .mydeals-tabs { gap: 8px !important; background: none !important; border: 0 !important; padding: 0 !important; }
body.vpc-prospectus .mydeals-tab {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 800 12px var(--pros-body) !important;
    text-transform: uppercase;
}
body.vpc-prospectus .mydeals-tab.active { background: var(--pros-ink) !important; color: var(--pros-y) !important; }
body.vpc-prospectus .mydeals-tab.active .tab-count { background: var(--pros-y) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .mydeals-loader { font: 400 18px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-prospectus .mydeals-complete-row { background: var(--pros-y) !important; border: 2px dashed var(--pros-ink) !important; border-radius: 0 !important; color: var(--pros-ink) !important; }
/* Réglages admin (interrupteurs) */
body.vpc-prospectus .admin-setting-card { background: #fff !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; box-shadow: 4px 4px 0 var(--pros-ink) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .setting-switch .ss-track { background: #fff !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .setting-switch .ss-track::after { background: var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .setting-switch input:checked + .ss-track { background: var(--pros-green) !important; }
body.vpc-prospectus .setting-switch input:checked + .ss-track::after { background: #fff !important; }
body.vpc-prospectus .ss-label,
body.vpc-prospectus .st-name { font-weight: 800 !important; color: var(--pros-ink) !important; }
/* Favoris dans le profil : même tampon que sur favoris.php */
body.vpc-prospectus .profil-card--favoris .deal-card.deal-expired { opacity: 1; }
body.vpc-prospectus .profil-card--favoris .deal-expired-badge {
    top: 18px; left: 16px; z-index: 7;
    background: var(--pros-paper);
    color: var(--pros-red);
    border: 3px solid var(--pros-red);
    outline: 1.5px solid var(--pros-red); outline-offset: -7px;
    border-radius: 0;
    box-shadow: none;
    padding: 6px 9px 4px;
    font: 400 16px/1 var(--pros-big);
    letter-spacing: .06em;
    transform: rotate(-12deg);
}
@media (max-width: 720px) {
    body.vpc-page-profil.vpc-prospectus .category-hero,
    body.vpc-page-vendeur.vpc-prospectus .category-hero { width: auto; padding: 20px 16px 4px !important; }
    body.vpc-prospectus .profil-tabs-bar { flex-wrap: nowrap; overflow-x: auto !important; scrollbar-width: none; padding: 12px 16px 14px !important; margin: 0 !important; }
    body.vpc-prospectus .profil-tab.active { transform: none; }
    body.vpc-page-profil.vpc-prospectus .profil-card { padding: 18px 14px !important; box-shadow: 6px 6px 0 var(--pros-ink) !important; }
    body.vpc-page-profil.vpc-prospectus .profil-section > .profil-card:nth-child(even) { transform: none; }
    body.vpc-prospectus .profil-section-title { font-size: 26px !important; }
}

/* =============================================== profil : badges, récompenses */
body.vpc-prospectus .badges-hero h1,
body.vpc-prospectus .rewards-hero h1 {
    font: 400 clamp(40px, 4.4vw, 64px)/0.95 var(--pros-big) !important;
    text-transform: uppercase;
    color: var(--pros-ink) !important;
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
    text-shadow: none !important;
    filter: none !important;
    animation: none !important;
}
body.vpc-prospectus .badges-hero::before,
body.vpc-prospectus .rewards-hero::before { display: none !important; }
body.vpc-prospectus .badges-subtitle,
body.vpc-prospectus .rewards-hero p,
body.vpc-prospectus .merchants-intro { color: var(--pros-ink) !important; font-weight: 600; }
body.vpc-prospectus .badges-page .section-title,
body.vpc-prospectus .rewards-page .section-title {
    font: 400 34px/1 var(--pros-big) !important;
    text-transform: uppercase;
    color: var(--pros-ink) !important;
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
    border: 0 !important;
}
/* Encarts */
body.vpc-prospectus .stat-box,
body.vpc-prospectus .badge-card,
body.vpc-prospectus .pts-baremer,
body.vpc-prospectus .reward-card,
body.vpc-prospectus .points-display,
body.vpc-prospectus .pending-item,
body.vpc-prospectus .redemption-item,
body.vpc-prospectus .admin-rewards-panel,
body.vpc-prospectus .reward-loading-box,
body.vpc-prospectus .modal {
    background: var(--pros-paper) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 5px 5px 0 var(--pros-ink) !important;
    color: var(--pros-ink) !important;
    backdrop-filter: none !important;
}
body.vpc-prospectus .stat-box:nth-child(odd) { transform: rotate(-1deg); }
body.vpc-prospectus .stat-box:nth-child(even) { transform: rotate(.8deg); }
body.vpc-prospectus .stat-number { font: 400 46px/1 var(--pros-big) !important; color: var(--pros-red) !important; background: none !important; -webkit-text-fill-color: currentColor !important; text-shadow: none !important; }
body.vpc-prospectus .stat-box .stat-label { font: 800 11px var(--pros-body) !important; text-transform: uppercase; letter-spacing: .05em; color: var(--pros-ink) !important; }
body.vpc-prospectus .badge-card { transition: transform .12s, box-shadow .12s !important; }
body.vpc-prospectus .badge-card:hover { transform: rotate(-1deg) translate(-2px, -2px) !important; box-shadow: 7px 7px 0 var(--pros-ink) !important; }
body.vpc-prospectus .badge-card.locked,
body.vpc-prospectus .badge-card:not(.earned):not(.unlocked) { box-shadow: 3px 3px 0 rgba(13, 13, 13, .45) !important; }
body.vpc-prospectus .badge-name { font: 400 20px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .badge-date,
body.vpc-prospectus .badge-progress,
body.vpc-prospectus .badge-progress small { font: 500 12px var(--pros-mono) !important; color: #444 !important; }
body.vpc-prospectus .progress-bar { background: #fff !important; border: 2px solid var(--pros-ink) !important; border-radius: 0 !important; height: 12px !important; }
body.vpc-prospectus .progress-fill { background: var(--pros-red) !important; border-radius: 0 !important; box-shadow: none !important; }
body.vpc-prospectus .pts-baremer-title { font: 400 24px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .pts-baremer-sub,
body.vpc-prospectus .pts-baremer-sub strong { color: var(--pros-ink) !important; }
body.vpc-prospectus .pts-baremer-sub strong { color: var(--pros-red) !important; }
body.vpc-prospectus .pts-tier { background: #fff !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; color: var(--pros-ink) !important; box-shadow: none !important; }
body.vpc-prospectus .pts-tier-current { background: var(--pros-y) !important; box-shadow: 4px 4px 0 var(--pros-ink) !important; transform: rotate(-1.5deg); }
body.vpc-prospectus .pts-tier-value { font: 400 26px var(--pros-big) !important; color: var(--pros-ink) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.vpc-prospectus .pts-tier-current .pts-tier-value { color: var(--pros-red) !important; }
body.vpc-prospectus .pts-tier-badge,
body.vpc-prospectus .pts-tier-you { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; }
body.vpc-prospectus .pts-tier-range { color: #444 !important; font-family: var(--pros-mono) !important; }
/* Boutique */
body.vpc-prospectus .points-display { font: 400 34px var(--pros-big) !important; color: var(--pros-ink) !important; background: var(--pros-y) !important; transform: rotate(-1.5deg); box-shadow: 7px 7px 0 var(--pros-ink) !important; }
body.vpc-prospectus .points-display * { color: inherit !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.vpc-prospectus .btn-badges,
body.vpc-prospectus .badges-section a.btn,
body.vpc-prospectus .redeem-btn,
body.vpc-prospectus .modal-btn,
body.vpc-prospectus .giftcode-copy {
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-red) !important;
    font: 400 17px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    text-shadow: none !important;
}
body.vpc-prospectus .badges-section a.btn { padding: 14px 26px !important; font-size: 20px !important; }
body.vpc-prospectus .badges-section p strong { color: var(--pros-red) !important; }
body.vpc-prospectus .btn-badges { background: #fff !important; color: var(--pros-ink) !important; box-shadow: 4px 4px 0 var(--pros-ink) !important; }
body.vpc-prospectus .redeem-btn:disabled { background: #fff !important; color: #777 !important; box-shadow: none !important; border-style: dashed !important; }
body.vpc-prospectus .reward-card { transition: transform .12s, box-shadow .12s !important; }
body.vpc-prospectus .reward-card:hover { transform: rotate(-.8deg) translate(-2px, -2px) !important; box-shadow: 8px 8px 0 var(--pros-ink) !important; }
body.vpc-prospectus .reward-image { background: #fff !important; border-bottom: 2.5px dashed var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .reward-name { font: 400 22px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .reward-description { color: #333 !important; }
body.vpc-prospectus .reward-points,
body.vpc-prospectus .rc-cost-value { font: 400 26px var(--pros-big) !important; color: var(--pros-red) !important; background: none !important; -webkit-text-fill-color: currentColor !important; }
body.vpc-prospectus .rc-cost-label,
body.vpc-prospectus .reward-qty { font: 800 11px var(--pros-body) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .reward-footer { border-top: 2px solid var(--pros-ink) !important; }
body.vpc-prospectus .merchants-search {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink) !important;
    font: 700 14px var(--pros-body) !important;
}
body.vpc-prospectus .merchants-search-clear { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; }
body.vpc-prospectus .merchants-count-badge { background: var(--pros-ink) !important; color: var(--pros-y) !important; border-radius: 0 !important; }
body.vpc-prospectus .merchant-tile { background: #fff !important; border: 2px solid var(--pros-ink) !important; border-radius: 0 !important; box-shadow: 2px 2px 0 var(--pros-ink) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .merchant-name { color: var(--pros-ink) !important; font-weight: 800 !important; }
body.vpc-prospectus .redemption-status,
body.vpc-prospectus .status-pending,
body.vpc-prospectus .status-claimed { border: 2px solid var(--pros-ink) !important; border-radius: 0 !important; font: 800 11px var(--pros-body) !important; text-transform: uppercase; }
body.vpc-prospectus .status-pending { background: var(--pros-y) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .status-claimed { background: var(--pros-green) !important; color: #fff !important; }
body.vpc-prospectus .redemption-giftcode code,
body.vpc-prospectus .modal-code,
body.vpc-prospectus .redemption-code { background: var(--pros-y) !important; color: var(--pros-ink) !important; border: 2px dashed var(--pros-ink) !important; border-radius: 0 !important; font-family: var(--pros-mono) !important; }
body.vpc-prospectus .modal h2 { font: 400 30px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-prospectus .admin-reward-form input,
body.vpc-prospectus .admin-reward-form textarea,
body.vpc-prospectus .pending-action input { background: #fff !important; color: var(--pros-ink) !important; border: 2.5px solid var(--pros-ink) !important; border-radius: 0 !important; }

/* ======================================================= compléter un deal */
body.vpc-prospectus .rapporteur-banner {
    background: var(--pros-y) !important;
    color: var(--pros-ink) !important;
    border: 2.5px dashed var(--pros-ink) !important;
    border-radius: 0 !important;
    font: 600 14px/1.45 var(--pros-body) !important;
}
body.vpc-prospectus .rapporteur-banner strong { color: var(--pros-ink) !important; font-weight: 900; }
body.vpc-prospectus .rapporteur-banner span[style] { color: #555 !important; font-family: var(--pros-mono); }
/* Bandeau « pré-rempli par le scraping » (couleur posée en style inline) */
body.vpc-prospectus .rapporteur-banner[style] { background: #d6f5e3 !important; border-color: var(--pros-green) !important; }
body.vpc-prospectus .deal-success-actions { display: flex; gap: 14px; flex-wrap: wrap; justify-content: center; }
body.vpc-prospectus .deal-success-actions a { padding: 12px 20px !important; text-decoration: none !important; }

/* ======================================================= transfert de deals */
body.vpc-prospectus .td-section {
    background: var(--pros-paper) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 9px 9px 0 var(--pros-ink) !important;
    color: var(--pros-ink);
    padding: 24px 26px !important;
    margin-bottom: 34px !important;
}
body.vpc-prospectus .td-section:nth-child(even) { transform: rotate(.3deg); }
body.vpc-prospectus .td-section h2 { font: 400 32px/1 var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; margin-bottom: 8px !important; }
body.vpc-prospectus .td-section .td-sub { font: 500 14px/1.55 var(--pros-body) !important; color: #333 !important; }
body.vpc-prospectus .td-search {
    background: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink);
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .td-search:focus-within { box-shadow: 4px 4px 0 var(--pros-blue); }
body.vpc-prospectus .td-search input { color: var(--pros-ink) !important; font: 700 14px var(--pros-body) !important; }
body.vpc-prospectus .td-count { font: 500 13px var(--pros-mono) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .td-list { background: #fff; border: 3px solid var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .td-row { border-bottom: 2px dashed rgba(13, 13, 13, .3) !important; color: var(--pros-ink); cursor: pointer; }
body.vpc-prospectus .td-row.td-item:hover { background: var(--pros-y); }
body.vpc-prospectus .td-row.td-head { background: var(--pros-ink) !important; color: var(--pros-y) !important; font: 400 14px var(--pros-big) !important; letter-spacing: .05em; border-bottom: 0 !important; cursor: default; }
body.vpc-prospectus .td-row img { border: 2px solid var(--pros-ink); border-radius: 0 !important; background: #fff !important; }
body.vpc-prospectus .td-row .td-title { font: 800 14px var(--pros-body) !important; }
body.vpc-prospectus .td-row .td-meta { font: 600 13px var(--pros-body) !important; color: #444 !important; }
body.vpc-prospectus .td-row input[type="checkbox"],
body.vpc-prospectus .td-opt input[type="checkbox"] { accent-color: var(--pros-ink); width: 17px; height: 17px; }
body.vpc-prospectus .td-row.td-head input[type="checkbox"] { accent-color: var(--pros-y); }
body.vpc-prospectus .td-badge {
    border: 2px solid var(--pros-ink);
    border-radius: 0 !important;
    font: 400 12px var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    background: #fff !important;
    color: var(--pros-ink) !important;
}
body.vpc-prospectus .td-badge.publie { background: var(--pros-green) !important; color: #fff !important; }
body.vpc-prospectus .td-badge.en_attente { background: var(--pros-y) !important; }
body.vpc-prospectus .td-badge.refuse { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .td-badge.modere { background: #9be7ff !important; }
body.vpc-prospectus .td-btn {
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink);
    font: 400 17px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-prospectus .td-btn.primary { background: var(--pros-ink) !important; color: var(--pros-y) !important; box-shadow: 4px 4px 0 var(--pros-red); }
body.vpc-prospectus .td-btn.ghost { background: #fff !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .td-btn:not(:disabled):hover { transform: translate(-2px, -2px); }
body.vpc-prospectus .td-btn:disabled { opacity: 1; background: #fff !important; color: #888 !important; border-style: dashed !important; box-shadow: none; }
body.vpc-prospectus .td-drop { background: var(--pros-y) !important; border: 3px dashed var(--pros-ink) !important; border-radius: 0 !important; }
body.vpc-prospectus .td-drop input[type="file"] { flex: 1 1 280px; min-width: 0; color: var(--pros-ink) !important; font: 600 13px var(--pros-body); }
body.vpc-prospectus .td-drop input[type="file"]::file-selector-button {
    background: #fff; color: var(--pros-ink);
    border: 2.5px solid var(--pros-ink); border-radius: 0;
    box-shadow: 2px 2px 0 var(--pros-ink);
    font: 800 12px var(--pros-body); text-transform: uppercase;
    padding: 7px 10px; margin-right: 10px; cursor: pointer;
}
body.vpc-prospectus .td-opt { font: 700 14px var(--pros-body) !important; color: var(--pros-ink) !important; }
body.vpc-prospectus .td-summary { font: 400 20px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink); }
body.vpc-prospectus .td-result table { background: #fff; border: 3px solid var(--pros-ink); }
body.vpc-prospectus .td-result th { background: var(--pros-ink); color: var(--pros-y) !important; font: 400 14px var(--pros-big) !important; letter-spacing: .05em; text-transform: uppercase; }
body.vpc-prospectus .td-result td { border-bottom: 2px dashed rgba(13, 13, 13, .3) !important; color: var(--pros-ink); }
body.vpc-prospectus .td-r-imported,
body.vpc-prospectus .td-r-ready { color: var(--pros-green) !important; font-weight: 900 !important; }
body.vpc-prospectus .td-r-skipped,
body.vpc-prospectus .td-r-blocked { color: #b45f00 !important; font-weight: 900 !important; }
body.vpc-prospectus .td-r-failed { color: var(--pros-red) !important; font-weight: 900 !important; }
@media (max-width: 720px) {
    body.vpc-prospectus .td-wrap { padding: 20px 14px 100px !important; }
    body.vpc-prospectus .td-section { padding: 18px 14px !important; box-shadow: 6px 6px 0 var(--pros-ink) !important; }
    body.vpc-prospectus .td-section:nth-child(even) { transform: none; }
    body.vpc-prospectus .td-section h2 { font-size: 26px !important; }
}

/* ================================================================== vendeur */
body.vpc-page-vendeur.vpc-prospectus .deals-count-info { font: 600 16px/1.45 var(--pros-body) !important; color: var(--pros-ink) !important; max-width: 760px; }
body.vpc-page-vendeur.vpc-prospectus .category-hero h1 + .deals-count-info { margin-top: 18px !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-count-info:last-child { font: 400 22px var(--pros-hand) !important; color: var(--pros-blue) !important; transform: rotate(-1.5deg); margin-top: 12px; }
body.vpc-page-vendeur.vpc-prospectus .deals-count-info strong { color: var(--pros-red) !important; }
/* Pas de vue liste ici : les coupons gardent leur format. */
body.vpc-page-vendeur.vpc-prospectus .view-toggle { display: none !important; }
body.vpc-page-vendeur.vpc-prospectus .controls-bar { margin-top: 6px; }
body.vpc-page-vendeur.vpc-prospectus .deals-container { max-width: 1400px; margin: 0 auto; padding: 26px 24px 60px; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid,
body.vpc-page-vendeur.vpc-prospectus .deals-grid.list-view { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important; }
/* Coupon vertical : styles.css range la carte en grille pensée pour le
   balisage de l'accueil ; celui de cette page (pied .deal-card-footer) ne
   s'y place pas, on le remet en colonne. */
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card > * { grid-column: auto !important; grid-row: auto !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-image {
    position: relative !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: auto !important;
    height: 210px !important;
    border-radius: 0 !important;
    margin: 12px 12px 0 !important;
    padding: 10px !important;
    line-height: normal !important;
    font-size: 14px !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-image img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0;
    object-fit: contain !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-image .deal-reduction { display: grid !important; position: absolute !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-badge {
    position: absolute !important;
    top: 10px !important; left: 10px !important; right: auto !important; bottom: auto !important;
    z-index: 5;
    border: 2px solid var(--pros-ink);
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 400 14px/1 var(--pros-big) !important;
    letter-spacing: .05em;
    padding: 5px 8px 4px !important;
    transform: rotate(-6deg);
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
}
body.vpc-page-vendeur.vpc-prospectus .deal-badge.hot { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-badge.promo { background: var(--pros-y) !important; color: var(--pros-ink) !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-body {
    flex: 1;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start;
    gap: 8px !important;
    padding: 14px 18px 10px !important;
}
body.vpc-page-vendeur.vpc-prospectus .deal-merchant { display: flex; flex-wrap: wrap; gap: 4px 8px; font: 800 12px var(--pros-body) !important; text-transform: uppercase; color: #444 !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-merchant-name { color: var(--pros-ink) !important; font: inherit !important; background: none !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-seller-tiers { color: #444 !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-image { order: 1 !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-body { order: 2 !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-footer { order: 3 !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-title {
    display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    height: auto !important; max-height: none !important; margin: 0 !important; padding: 0 !important;
}
body.vpc-page-vendeur.vpc-prospectus .deal-title a { color: var(--pros-ink) !important; text-decoration: none !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-title a:hover { text-decoration: underline !important; text-decoration-color: var(--pros-red) !important; text-decoration-thickness: 3px !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-description {
    display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    margin: 0 !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-pricing {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: baseline !important;
    gap: 6px 12px !important;
    height: auto !important;
    padding: 4px 0 0 !important;
    margin-top: auto !important;
}
body.vpc-page-vendeur.vpc-prospectus .deal-reduction-inline { display: none !important; }
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-footer {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px;
    margin: 0 12px 12px !important;
    padding: 10px 6px !important;
    border-top: 2px solid var(--pros-ink) !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card .temperature-display {
    display: flex !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    background: var(--pros-ink) !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 3px 8px !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    box-shadow: none !important;
}
body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card .temperature-display .temp-value { color: var(--pros-y) !important; font: 400 17px var(--pros-big) !important; background: none !important; -webkit-text-fill-color: currentColor !important; text-shadow: none !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-meta { display: flex !important; gap: 10px; font: 700 12px var(--pros-body) !important; color: var(--pros-ink) !important; margin-right: auto; }
body.vpc-page-vendeur.vpc-prospectus .deal-meta-item { color: var(--pros-ink) !important; font: inherit !important; }
body.vpc-page-vendeur.vpc-prospectus .deal-go-btn {
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 3px 3px 0 var(--pros-ink) !important;
    font: 400 15px/1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 8px 12px !important;
    transform: rotate(2deg);
}
body.vpc-page-vendeur.vpc-prospectus .deal-go-btn:hover { transform: rotate(0) translate(-1px, -1px); box-shadow: 4px 4px 0 var(--pros-ink) !important; }
body.vpc-page-vendeur.vpc-prospectus .empty-state { padding: 34px 24px !important; text-align: center; }
body.vpc-page-vendeur.vpc-prospectus .empty-state h3 { font: 400 32px var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; }
body.vpc-page-vendeur.vpc-prospectus .empty-state p { font: 400 20px var(--pros-hand) !important; color: var(--pros-blue) !important; }
body.vpc-page-vendeur.vpc-prospectus .empty-state a { color: var(--pros-red) !important; }
@media (max-width: 720px) {
    body.vpc-page-vendeur.vpc-prospectus .controls-bar { padding: 0 16px; }
    body.vpc-page-vendeur.vpc-prospectus .deals-container { padding: 22px 16px 40px; }
    body.vpc-page-vendeur.vpc-prospectus .deals-grid,
    body.vpc-page-vendeur.vpc-prospectus .deals-grid.list-view { grid-template-columns: 1fr !important; }
    body.vpc-page-vendeur.vpc-prospectus .deals-grid .deal-card-image { height: 190px !important; }
}

/* ============================================ contact et pages d'information */
body.vpc-prospectus .contact-page { max-width: 680px; padding: 34px 18px 60px; }
body.vpc-page-legal.vpc-prospectus .legal-page {
    max-width: 860px;
    margin: 40px auto 70px;
    padding: 30px 44px 44px;
    background: var(--pros-paper);
    border: 3.5px solid var(--pros-ink);
    box-shadow: 10px 10px 0 var(--pros-ink);
    position: relative;
}
/* Scotch en haut de la feuille */
body.vpc-page-legal.vpc-prospectus .legal-page::before,
body.vpc-prospectus .contact-section::before {
    content: ''; position: absolute; z-index: 2; top: -16px; left: 50%;
    width: 140px; height: 32px; margin-left: -70px;
    background: rgba(255, 255, 255, .6); border: 1px solid rgba(0, 0, 0, .08);
    transform: rotate(-4deg); pointer-events: none;
}
body.vpc-prospectus .about-hero,
body.vpc-prospectus .contact-hero { text-align: left !important; margin-bottom: 30px !important; }
body.vpc-prospectus .about-hero-icon,
body.vpc-prospectus .contact-hero-icon { display: block !important; width: max-content; filter: none !important; font-size: 44px !important; transform: rotate(-10deg); }
body.vpc-page-legal.vpc-prospectus .legal-page h1,
body.vpc-prospectus .contact-hero h1 {
    display: inline-block;
    font: 400 clamp(40px, 5vw, 66px)/0.98 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .005em;
    background: var(--pros-ink) !important;
    color: var(--pros-y) !important;
    -webkit-text-fill-color: currentColor !important;
    -webkit-background-clip: border-box !important;
    background-clip: border-box !important;
    padding: .1em .2em .04em;
    margin: 10px 0 14px !important;
    transform: rotate(-1.2deg);
    box-shadow: 8px 8px 0 var(--pros-red);
    max-width: 100%;
    overflow-wrap: anywhere;
}
body.vpc-page-legal.vpc-prospectus .legal-page .about-tagline,
body.vpc-prospectus .contact-hero p { font: 400 22px/1.25 var(--pros-hand) !important; color: var(--pros-blue) !important; max-width: none !important; margin: 10px 0 0 !important; transform: rotate(-.8deg); }
body.vpc-page-legal.vpc-prospectus .legal-page .legal-updated { font: 500 13px var(--pros-mono) !important; color: #555 !important; }
body.vpc-page-legal.vpc-prospectus .legal-page h2 {
    font: 400 28px/1.05 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .01em;
    color: var(--pros-ink) !important;
    margin: 36px 0 12px !important;
    padding-bottom: 8px !important;
    border-bottom: 3px solid var(--pros-ink) !important;
}
body.vpc-page-legal.vpc-prospectus .legal-page p,
body.vpc-page-legal.vpc-prospectus .legal-page li { font: 500 15.5px/1.65 var(--pros-body) !important; color: #1d1d1d !important; }
body.vpc-page-legal.vpc-prospectus .legal-page li::marker { color: var(--pros-red); }
body.vpc-page-legal.vpc-prospectus .legal-page strong { color: var(--pros-ink) !important; font-weight: 800; }
body.vpc-page-legal.vpc-prospectus .legal-page a:not(.back-link):not(.about-btn) { color: var(--pros-blue) !important; font-weight: 700; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.vpc-prospectus .legal-note {
    background: var(--pros-y) !important;
    border: 2.5px dashed var(--pros-ink) !important;
    border-radius: 0 !important;
    color: var(--pros-ink) !important;
    font: 600 14.5px/1.55 var(--pros-body) !important;
}
body.vpc-prospectus .legal-table { background: #fff; border: 3px solid var(--pros-ink); border-collapse: collapse; }
body.vpc-prospectus .legal-table th,
body.vpc-prospectus .legal-table td { border: 2px solid var(--pros-ink) !important; color: var(--pros-ink) !important; font: 500 14px/1.45 var(--pros-body); }
body.vpc-prospectus .legal-table th { background: var(--pros-ink) !important; color: var(--pros-y) !important; font: 400 15px var(--pros-big) !important; text-transform: uppercase; letter-spacing: .04em; }
/* Tableau large : défile dans la feuille plutôt que de déborder sur mobile. */
@media (max-width: 720px) { body.vpc-prospectus .legal-table { display: block; overflow-x: auto; } }
body.vpc-prospectus .legal-btn,
body.vpc-prospectus .about-btn {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 var(--pros-ink);
    font: 400 18px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    text-decoration: none !important;
    padding: 12px 20px !important;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-prospectus .legal-btn.primary,
body.vpc-prospectus .about-btn.primary { background: var(--pros-red) !important; color: #fff !important; transform: rotate(-1.5deg); }
body.vpc-prospectus .legal-btn:hover,
body.vpc-prospectus .about-btn:hover { transform: translate(-2px, -2px); box-shadow: 6px 6px 0 var(--pros-ink); }
body.vpc-prospectus .legal-pref-status { font: 400 20px var(--pros-hand) !important; color: var(--pros-green) !important; }
body.vpc-prospectus .about-steps { gap: 18px !important; margin: 20px 0 !important; }
body.vpc-prospectus .about-step {
    position: relative;
    background: #fff !important;
    border: 3px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 5px 5px 0 var(--pros-ink);
    padding: 26px 16px 16px !important;
}
body.vpc-prospectus .about-step:nth-child(odd) { transform: rotate(-1deg); }
body.vpc-prospectus .about-step:nth-child(even) { transform: rotate(1deg); }
body.vpc-prospectus .about-step .num {
    position: absolute; top: -20px; left: 14px;
    display: grid; place-items: center;
    width: 42px; height: 42px; border-radius: 50%;
    background: var(--pros-red); color: #fff !important;
    border: 3px solid var(--pros-ink);
    font: 400 22px/1 var(--pros-big) !important;
    transform: rotate(-8deg);
}
body.vpc-prospectus .about-step h3 { font: 400 22px/1 var(--pros-big) !important; text-transform: uppercase; color: var(--pros-ink) !important; margin: 0 0 6px !important; }
body.vpc-page-legal.vpc-prospectus .about-step p { font: 500 13.5px/1.5 var(--pros-body) !important; }

/* Formulaire de contact */
body.vpc-prospectus .contact-section {
    background: var(--pros-paper) !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 10px 10px 0 var(--pros-ink) !important;
    overflow: visible !important;
    padding: 28px 26px !important;
    transform: rotate(.4deg);
}
body.vpc-prospectus .contact-section h2 { font: 400 28px/1 var(--pros-big) !important; text-transform: uppercase; margin: 2px 0 20px !important; }
body.vpc-prospectus .contact-form { gap: 16px !important; }
body.vpc-prospectus .contact-form .form-group label { font: 800 12px var(--pros-body) !important; letter-spacing: .04em; color: var(--pros-ink) !important; }
body.vpc-prospectus .contact-form .form-group input,
body.vpc-prospectus .contact-form .form-group textarea {
    background: #fff !important;
    color: var(--pros-ink) !important;
    border: 2.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 600 15px var(--pros-body) !important;
}
body.vpc-prospectus .contact-form .form-group input:focus,
body.vpc-prospectus .contact-form .form-group textarea:focus { box-shadow: 4px 4px 0 var(--pros-blue) !important; border-color: var(--pros-ink) !important; }
body.vpc-prospectus .contact-form .form-group input::placeholder,
body.vpc-prospectus .contact-form .form-group textarea::placeholder { color: #888 !important; }
body.vpc-prospectus .form-alert { border: 3px solid var(--pros-ink) !important; border-radius: 0 !important; font: 800 14px/1.45 var(--pros-body) !important; box-shadow: 4px 4px 0 var(--pros-ink); }
body.vpc-prospectus .form-alert.success { background: var(--pros-green) !important; color: #fff !important; }
body.vpc-prospectus .form-alert.error { background: var(--pros-red) !important; color: #fff !important; }
body.vpc-prospectus .submit-btn {
    background: var(--pros-red) !important;
    color: #fff !important;
    border: 3.5px solid var(--pros-ink) !important;
    border-radius: 0 !important;
    box-shadow: 6px 6px 0 var(--pros-ink) !important;
    font: 400 21px/1.1 var(--pros-big) !important;
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: 15px 20px !important;
    margin-top: 8px !important;
}
body.vpc-prospectus .submit-btn:hover { transform: translate(-2px, -2px) !important; box-shadow: 8px 8px 0 var(--pros-ink) !important; }
body.vpc-prospectus .submit-btn:active { transform: translate(3px, 3px) !important; box-shadow: 3px 3px 0 var(--pros-ink) !important; }
/* Remplissage de l'appui long : encre qui monte dans l'étiquette */
body.vpc-prospectus .hold-fill { background: rgba(13, 13, 13, .38) !important; }
@media (max-width: 720px) {
    body.vpc-page-legal.vpc-prospectus .legal-page { margin: 26px 14px 50px; padding: 24px 18px 30px; box-shadow: 6px 6px 0 var(--pros-ink); }
    body.vpc-page-legal.vpc-prospectus .legal-page h2 { font-size: 24px !important; }
    body.vpc-prospectus .contact-page { padding: 24px 14px 40px; }
    body.vpc-prospectus .contact-hero p { font-size: 18px !important; }
    body.vpc-prospectus .contact-section { padding: 22px 16px !important; box-shadow: 6px 6px 0 var(--pros-ink) !important; transform: none; }
    body.vpc-page-legal.vpc-prospectus .legal-page h1,
    body.vpc-prospectus .contact-hero h1 { box-shadow: 5px 5px 0 var(--pros-red); }
}

/* ======================================================= publicité (sponsor) */
/* Héros sur le jaune (comme contact), sections en feuilles scotchées,
   atouts en coupons. On coupe les lueurs, dégradés et animations du néon. */
body.vpc-page-sponsor.vpc-prospectus .sponsor-page { max-width: 1000px; padding: 34px 24px 70px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-hero { text-align: left; margin-bottom: 46px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-hero::before { display: none; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-hero-icon {
    display: block; width: max-content;
    font-size: 48px; margin: 18px 0 0;
    animation: none; filter: none;
    transform: rotate(-10deg);
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-hero h1 {
    display: inline-block;
    font: 400 clamp(40px, 5.4vw, 72px)/0.98 var(--pros-big);
    text-transform: uppercase;
    letter-spacing: .005em;
    background: var(--pros-ink);
    color: var(--pros-y);
    -webkit-text-fill-color: currentColor;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    padding: .1em .2em .04em;
    margin: 10px 0 18px;
    transform: rotate(-1.2deg);
    box-shadow: 8px 8px 0 var(--pros-red);
    max-width: 100%;
    overflow-wrap: anywhere;
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-hero p {
    font: 400 23px/1.3 var(--pros-hand);
    color: var(--pros-blue);
    max-width: 760px;
    margin: 0;
    transform: rotate(-.8deg);
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-section {
    background: var(--pros-paper);
    backdrop-filter: none;
    border: 3.5px solid var(--pros-ink);
    border-radius: 0;
    box-shadow: 10px 10px 0 var(--pros-ink);
    padding: 36px 40px 34px;
    margin-bottom: 46px;
    overflow: visible;
    transition: none;
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-section:nth-of-type(even) { transform: rotate(.35deg); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-section:nth-of-type(odd) { transform: rotate(-.3deg); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-section:hover { border-color: var(--pros-ink); box-shadow: 10px 10px 0 var(--pros-ink); }
/* Scotch en haut de la feuille (remplace le filet dégradé) */
body.vpc-page-sponsor.vpc-prospectus .sponsor-section::before {
    top: -16px; left: 50%; right: auto; z-index: 2;
    width: 140px; height: 32px; margin-left: -70px;
    background: rgba(255, 255, 255, .6); border: 1px solid rgba(0, 0, 0, .08);
    transform: rotate(-4deg); pointer-events: none;
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-section h2 {
    font: 400 30px/1.05 var(--pros-big);
    text-transform: uppercase;
    letter-spacing: .01em;
    color: var(--pros-ink);
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--pros-ink);
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-section p { font: 500 16px/1.65 var(--pros-body); color: #1d1d1d; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-section strong { color: var(--pros-ink); font-weight: 800; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-section a { color: var(--pros-blue); font-weight: 700; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-section a:hover { text-decoration-color: var(--pros-red); }
/* Atouts : coupons blancs, légèrement de travers */
body.vpc-page-sponsor.vpc-prospectus .sponsor-features { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; margin-top: 30px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature {
    background: #fff;
    border: 3px solid var(--pros-ink);
    border-radius: 0;
    box-shadow: 5px 5px 0 var(--pros-ink);
    padding: 24px 18px 20px;
    overflow: visible;
    transition: transform .12s, box-shadow .12s;
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature::before { display: none; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature:nth-child(odd) { transform: rotate(-1deg); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature:nth-child(even) { transform: rotate(1deg); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature:hover { transform: translate(-2px, -2px); border-color: var(--pros-ink); box-shadow: 7px 7px 0 var(--pros-red); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature-icon { filter: none; font-size: 40px; margin-bottom: 10px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature h3 { font: 400 23px/1 var(--pros-big); text-transform: uppercase; color: var(--pros-ink); margin-bottom: 8px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-feature p { font: 500 14px/1.5 var(--pros-body); color: #333; }
/* Bouton final : étiquette rouge */
body.vpc-page-sponsor.vpc-prospectus .sponsor-cta { margin-top: 20px; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-cta-btn {
    background: var(--pros-red);
    color: #fff;
    border: 3.5px solid var(--pros-ink);
    border-radius: 0;
    box-shadow: 6px 6px 0 var(--pros-ink);
    font: 400 22px/1.1 var(--pros-big);
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: 15px 30px;
    overflow: visible;
    transform: rotate(-1.5deg);
    transition: transform .12s, box-shadow .12s;
}
body.vpc-page-sponsor.vpc-prospectus .sponsor-cta-btn::before { display: none; }
body.vpc-page-sponsor.vpc-prospectus .sponsor-cta-btn:hover { background: var(--pros-red); transform: rotate(-1.5deg) translate(-2px, -2px); box-shadow: 8px 8px 0 var(--pros-ink); }
body.vpc-page-sponsor.vpc-prospectus .sponsor-cta-btn:active { transform: rotate(-1.5deg) translate(3px, 3px); box-shadow: 3px 3px 0 var(--pros-ink); }
@media (max-width: 720px) {
    body.vpc-page-sponsor.vpc-prospectus .sponsor-page { padding: 24px 14px 44px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-hero { margin-bottom: 34px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-hero h1 { box-shadow: 5px 5px 0 var(--pros-red); }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-hero p { font-size: 19px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-section { padding: 26px 18px 22px; box-shadow: 6px 6px 0 var(--pros-ink); margin-bottom: 36px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-section:nth-of-type(n) { transform: none; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-section h2 { font-size: 24px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-features { grid-template-columns: 1fr; gap: 20px; }
    body.vpc-page-sponsor.vpc-prospectus .sponsor-cta-btn { font-size: 19px; padding: 13px 22px; }
}
