/* ScanNuts Manager - feuille du silo COMPARATEUR (v102.354).
   Extraite de scannuts.css : toutes les regles .sn-cmp, leurs @keyframes
   et les media queries qui ne contiennent QUE des regles comparateur.
   Chargee uniquement sur /comparateur/ (landing, hubs, matchs), et declaree
   dependante du handle scannuts-style pour que l'ordre de cascade d'origine
   soit conserve : ces regles etaient en FIN de fichier. */


/* =====================================================================
   COMPARATEUR (v102.263) - le RING "VS" produit contre produit.
   Charte INWT (var --sn-color-*), mobile-first, responsive total.
   v102.263 : header sur les cards, animation de victoire (transform/opacity,
   composee GPU - lecon v102.153), panneau "pourquoi il gagne" (coches vertes),
   face-a-face en barres de duel proportionnelles, CTA epures (Poppins light).
   Regles defensives responsive (lecons v102.111-120) : overflow clip,
   word-wrap, min-width:0 sur les enfants flex, images dimensionnees.
   Tout est ici (feuille enregistree) et JAMAIS inline (lecon v102.258).
   ===================================================================== */
.sn-cmp{
    font-family:'Poppins',sans-serif;color:#2a2a2a;
    max-width:1080px;margin:0 auto;padding:8px 16px 40px;
    width:100%;box-sizing:border-box;overflow-x:clip;
}
.sn-cmp *{box-sizing:border-box}
.sn-cmp p{overflow-wrap:break-word;word-wrap:break-word;hyphens:auto}

/* Hero */
.sn-cmp-hero{text-align:center;padding:14px 0 20px}
.sn-cmp-eyebrow{
    display:inline-block;background:#fff5eb;color:var(--sn-color-end);border:1px solid #ffd8b5;
    font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
    padding:5px 14px;border-radius:100px;margin-bottom:12px;
}
.sn-cmp-h1{
    font-size:1.9rem;line-height:1.2;font-weight:800;margin:0 0 8px;
    color:#1f1f1f;overflow-wrap:break-word;word-wrap:break-word;
}
.sn-cmp-h1 .sn-cmp-vs-word{
    display:inline-block;color:#fff;font-style:italic;font-weight:800;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    padding:.02em .34em;border-radius:8px;margin:0 .12em;
    box-shadow:0 4px 10px rgba(238,90,36,.25);
}
.sn-cmp-typo{font-size:.82rem;color:#8a7a6c;font-weight:500;margin:0}
/* H1 de la landing : seconde partie en degrade charte (facon fiches marques) */
.sn-cmp-h1-hl{
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--sn-color-end);
}
/* Sous-titre de la landing encapsule discretement */
.sn-cmp-typo-pill{
    display:inline-block;max-width:100%;box-sizing:border-box;
    background:#faf6f1;border:1px solid #efe4d8;border-radius:100px;padding:7px 18px;color:#7a6a5c;
}

/* Le ring : 2 cards + medaillon VS */
.sn-cmp-ring{display:flex;align-items:stretch;justify-content:center;gap:16px;position:relative;margin:14px 0 26px}
.sn-cmp-card{
    flex:1 1 0;min-width:0;background:#fff;border:1px solid #efe4d8;border-radius:18px;
    box-shadow:0 10px 30px rgba(60,40,20,.06);display:flex;flex-direction:column;
    position:relative;transition:transform .2s,box-shadow .2s,border-color .2s;
}
.sn-cmp-card.is-winner{box-shadow:0 16px 38px rgba(60,40,20,.1)}

/* Header de la card (marque + nom produit) */
.sn-cmp-card-head{padding:15px 15px 12px;text-align:center;position:relative;z-index:1;border-radius:18px 18px 0 0}
.sn-cmp-card.is-winner .sn-cmp-card-head{
    background:linear-gradient(135deg,rgba(255,159,67,.12),rgba(238,90,36,.08));
    border-bottom:1px solid #ffe0c8;
}
.sn-cmp-card:not(.is-winner) .sn-cmp-card-head{background:#faf7f4;border-bottom:1px solid #f0eae3}
.sn-cmp-card-brand{
    display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
    color:#a2917f;background:#fff;border:1px solid #efe4d8;border-radius:100px;padding:3px 11px;margin-bottom:7px;
}
.sn-cmp-card.is-winner .sn-cmp-card-brand{color:var(--sn-color-end);border-color:#ffd8b5;background:#fff}
.sn-cmp-card-name{font-size:1.02rem;font-weight:700;color:#262626;line-height:1.28;overflow-wrap:break-word;word-wrap:break-word}

/* Couronne du vainqueur (drop-in, transform libre car centrage via left+margin) */
.sn-cmp-card-crown{
    position:absolute;top:-14px;left:50%;margin-left:-.8em;font-size:1.6rem;z-index:3;
    filter:drop-shadow(0 3px 4px rgba(0,0,0,.18));
    animation:sn-cmp-crown .7s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes sn-cmp-crown{0%{opacity:0;transform:translateY(-14px) scale(.5) rotate(-12deg)}70%{transform:translateY(2px) scale(1.12) rotate(4deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}

.sn-cmp-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;position:relative;z-index:1}
.sn-cmp-card-media{
    width:112px;height:112px;border-radius:14px;overflow:hidden;background:#fcfcfc;border:1px solid #f0eae3;
    display:flex;align-items:center;justify-content:center;margin-bottom:14px;
}
.sn-cmp-card-media img{width:100%;height:100%;object-fit:contain;display:block}
.sn-cmp-card-media.ph span{font-weight:800;color:#cdbfae;font-size:1.4rem}
.sn-cmp-card-global{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:16px}
.sn-cmp-card-global img{width:40px;height:40px;display:block}
.sn-cmp-global-num{font-size:1.9rem;font-weight:800;line-height:1;color:#1f1f1f}
.sn-cmp-global-max{font-size:.82rem;color:#9a8a7a;font-weight:600}

/* Sous-criteres (barres) */
.sn-cmp-subs{width:100%;display:flex;flex-direction:column;gap:9px}
.sn-cmp-sub{display:flex;align-items:center;gap:8px}
.sn-cmp-sub-em{font-size:.9rem;width:18px;text-align:center;flex:0 0 auto}
.sn-cmp-sub-bw{flex:1;min-width:0}
.sn-cmp-sub-lab{display:flex;justify-content:space-between;gap:8px;font-size:.64rem;color:#8a7a6c;font-weight:600;margin-bottom:3px}
.sn-cmp-sub-lab .val{font-weight:700;color:#3a3a3a}
.sn-cmp-sub-bar{height:7px;border-radius:8px;background:#f0eae3;overflow:hidden}
.sn-cmp-sub-bar i{display:block;height:100%;border-radius:8px;transition:width .5s ease}
.sn-cmp .lvl-or{background:linear-gradient(90deg,#f3c12b,#d99400)}
.sn-cmp .lvl-ar{background:linear-gradient(90deg,#c3ccd5,#8b96a1)}
.sn-cmp .lvl-br{background:linear-gradient(90deg,#d8a06a,#a9692f)}
.sn-cmp .lvl-ch{background:linear-gradient(90deg,#6a6a6a,#333)}
.sn-cmp-sub.is-na .sn-cmp-sub-bar{background:repeating-linear-gradient(45deg,#f3ede6,#f3ede6 6px,#eae0d5 6px,#eae0d5 12px)}
.sn-cmp-sub.is-na .val{color:#b0a394;font-weight:600}

/* Medaillon VS central */
.sn-cmp-vs{
    flex:0 0 auto;align-self:center;width:60px;height:60px;border-radius:50%;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    color:#fff;font-weight:800;font-size:1.05rem;font-style:italic;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 20px rgba(238,90,36,.32);border:3px solid #fff;z-index:4;
}

/* Ruban vainqueur DYNAMIQUE : pop-in + eclat qui balaye */
.sn-cmp-ribbon{
    position:relative;overflow:hidden;margin:14px auto 2px;display:inline-flex;align-items:center;gap:6px;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    padding:6px 18px;border-radius:100px;box-shadow:0 6px 16px rgba(238,90,36,.3);
    animation:sn-cmp-pop .55s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes sn-cmp-pop{0%{opacity:0;transform:scale(.7)}60%{transform:scale(1.08)}100%{opacity:1;transform:scale(1)}}
.sn-cmp-ribbon::after{
    content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
    transform:skewX(-20deg);animation:sn-cmp-shine 2.6s .5s infinite;
}
@keyframes sn-cmp-shine{0%{transform:translateX(0) skewX(-20deg)}35%{transform:translateX(420%) skewX(-20deg)}100%{transform:translateX(420%) skewX(-20deg)}}

/* Verdict + panneau "pourquoi il gagne" */
.sn-cmp-verdict{
    background:radial-gradient(circle at 30% 0%,#ffe9d3,#fff6ec 70%);
    border:1px solid #ffdcc0;border-radius:16px;padding:22px 22px 20px;text-align:center;margin:0 0 26px;
}
.sn-cmp-verdict.is-draw{background:#f7f5f2;border-color:#e6ded4}
.sn-cmp-verdict-title{font-size:1.2rem;font-weight:800;color:#1f1f1f;margin-bottom:6px}
.sn-cmp-verdict-scores{font-size:.9rem;color:#5a4a3c;font-weight:600;margin-bottom:4px}
.sn-cmp-verdict-note{font-size:.76rem;color:#9a8a7a;font-style:italic}
.sn-cmp-why{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;text-align:left}
.sn-cmp-why-col{background:#fff;border:1px solid #f2e6da;border-radius:12px;padding:13px 15px}
.sn-cmp-why-col.bad{background:#fff8f7;border-color:#f6d7d3}
.sn-cmp-why-h{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#8a7a6c;margin-bottom:9px}
.sn-cmp-why-col.pos .sn-cmp-why-h{color:#2e9e5b}
.sn-cmp-why-col.bad .sn-cmp-why-h{color:#d64a3f}
.sn-cmp-why-list{display:flex;flex-direction:column;gap:7px}
.sn-cmp-why-item{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:#3a3a3a}
.sn-cmp-why-item .ic{flex:0 0 auto;font-size:.9rem}
.sn-cmp-why-item .em{flex:0 0 auto}
.sn-cmp-why-item .d{margin-left:auto;font-weight:800;color:#2e9e5b}
.sn-cmp-why-item.bad .d{color:#d64a3f}
.sn-cmp-why-note{
    display:flex;align-items:center;gap:8px;margin-top:11px;padding:9px 13px;border-radius:11px;
    background:#f1faf3;border:1px solid #cdead6;font-size:.74rem;color:#2e7d4f;font-style:normal;
}
.sn-cmp-why-note .ic{flex:0 0 auto;font-size:.95rem}
.sn-cmp-why-note b{color:#1f6b40;font-weight:800}
.sn-cmp-why-empty{font-size:.78rem;color:#b0a394;font-style:italic}

/* Face a face : entete + intro + ACCORDEON (details/summary natif) par critere */
.sn-cmp-h2{
    display:block;width:fit-content;max-width:100%;margin:0 auto 14px;box-sizing:border-box;
    font-size:.98rem;font-weight:800;color:var(--sn-color-end);text-align:center;
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:8px 22px;
    -webkit-text-fill-color:currentColor;
}
.sn-cmp-faceoff-intro{text-align:center;font-size:.82rem;color:#7a6a5c;max-width:640px;margin:0 auto 18px;line-height:1.5}
.sn-cmp-faceoff{display:flex;flex-direction:column;gap:12px;margin:0 0 28px}
.sn-cmp-duel{background:#fff;border:1px solid #efe4d8;border-radius:14px;overflow:hidden}
.sn-cmp-duel-head{
    display:flex;align-items:center;gap:8px;padding:13px 16px;cursor:pointer;list-style:none;
    -webkit-tap-highlight-color:transparent;
}
.sn-cmp-duel-head::-webkit-details-marker{display:none}
.sn-cmp-duel[open] .sn-cmp-duel-head{border-bottom:1px solid #f2ebe3}
.sn-cmp-duel-em{font-size:1rem;flex:0 0 auto}
.sn-cmp-duel-crit{font-size:.82rem;font-weight:700;color:#2a2a2a}
.sn-cmp-duel-weight{flex:0 0 auto;font-size:.6rem;font-weight:700;color:#a2917f;background:#f4ede6;border-radius:100px;padding:2px 8px}
.sn-cmp-duel-badge{
    margin-left:auto;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;
    padding:4px 11px;border-radius:100px;white-space:nowrap;background:#fff2e7;color:var(--sn-color-end);
}
.sn-cmp-duel-badge.tie{background:#eef1f4;color:#7a8794}
.sn-cmp-duel-badge.na{background:#f3ede6;color:#b0a394}
.sn-cmp-duel-chev{
    flex:0 0 auto;width:9px;height:9px;border-right:2px solid #b7a897;border-bottom:2px solid #b7a897;
    transform:rotate(45deg);transition:transform .2s;margin-left:2px;margin-top:-3px;
}
.sn-cmp-duel[open] .sn-cmp-duel-chev{transform:rotate(-135deg);margin-top:2px}
.sn-cmp-duel-body{padding:14px 16px 16px}
/* barre de duel proportionnelle A|B */
.sn-cmp-duel-bar{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.sn-cmp-duel-val{font-size:1rem;font-weight:800;color:#2a2a2a;flex:0 0 auto;width:34px}
.sn-cmp-duel-val.right{text-align:right}
.sn-cmp-duel-val.dim{color:#b7a897;font-weight:700}
.sn-cmp-duel-track{flex:1;min-width:0;display:flex;height:14px;border-radius:8px;overflow:hidden;background:#f0eae3}
.sn-cmp-duel-seg{height:100%;transition:width .6s ease}
.sn-cmp-duel-seg.a{border-radius:8px 0 0 8px}
.sn-cmp-duel-seg.b{border-radius:0 8px 8px 0}
.sn-cmp-duel-seg.win{background:linear-gradient(90deg,var(--sn-color-start),var(--sn-color-end))}
.sn-cmp-duel-seg.lose{background:#d8ccc0}
.sn-cmp-duel-seg.tie{background:linear-gradient(90deg,#b9c2cc,#9aa5b0)}
.sn-cmp-duel-mid{width:2px;background:#fff;flex:0 0 auto}
.sn-cmp-duel-rows{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.sn-cmp-duel-prod{
    display:flex;align-items:center;justify-content:space-between;gap:8px;
    background:#faf7f4;border:1px solid #f0eae3;border-radius:9px;padding:8px 11px;
}
.sn-cmp-duel-prod.is-lead{background:#fff5eb;border-color:#ffd8b5}
.sn-cmp-duel-prod .mk{font-size:.72rem;font-weight:700;color:#5a4a3c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sn-cmp-duel-prod .sc{font-size:.8rem;font-weight:800;color:#2a2a2a;flex:0 0 auto}
.sn-cmp-duel-prod.is-lead .sc{color:var(--sn-color-end)}
/* Phrase d'analyse du critere, encapsulee (detail important) */
.sn-cmp-duel-analysis{
    display:flex;align-items:flex-start;gap:9px;margin:0 0 4px;padding:11px 14px;border-radius:12px;
    background:#fffaf0;border:1px solid #ffe2c0;
}
.sn-cmp-duel-analysis .ic{flex:0 0 auto;font-size:1rem;line-height:1.3}
.sn-cmp-duel-analysis .tx{font-size:.8rem;color:#5a4a3c;line-height:1.9;font-weight:500}
.sn-cmp-mk{
    display:inline-block;font-size:.72rem;font-weight:800;border-radius:100px;padding:2px 10px;
    margin:0 2px;white-space:nowrap;
}
.sn-cmp-mk.is-win{color:#1f6b40;background:#e8f6ed;border:1px solid #bfe6cd}
.sn-cmp-mk.is-lose{color:#7a6a5c;background:#f4f2f0;border:1px solid #e4ddd6}
.sn-cmp-duel-analysis .sep{display:inline-block;margin:0 7px;color:#cbbdae;font-weight:700}

/* ---- Tableau DIFFERENTIEL des sous-criteres (ce qui separe les 2 produits) ----
   Esprit "synthese fiche produit" : libelle en petite box (emoji + intitule),
   analyses en texte reduit, lignes separees par des pointilles. Le conteneur
   porte .sn-v2-acc-details pour heriter de l'habillage des fiches (emoji). */
.sn-cmp-diff{margin-top:14px;padding-top:12px;border-top:1px dashed #efe4d8}
.sn-cmp-diff-title{
    display:inline-flex;align-items:center;gap:7px;margin:0 0 11px;
    font-size:.64rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:6px 14px;
}
.sn-cmp-diff-title b{color:#8a7a6c;font-weight:700}
.sn-cmp-diff-none{font-size:.76rem;color:#8a7a6c;font-style:italic;margin:0}
/* v102.309 : gain de points mis en evidence (gras vert doux) */
.sn-cmp-gain{font-weight:800;color:#1f8a4c;background:#e8f7ee;padding:1px 7px;border-radius:6px;white-space:nowrap}
/* v102.313 : '+N' points de l'en-tete de pilier en vert doux */
.sn-cmp-duel-pts{color:#1f8a4c;font-weight:800}
.sn-cmp-diff-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:.72rem;background:#fff;border:1px solid #f1e6d9;border-radius:12px;overflow:hidden}
/* on neutralise l'habillage table herite des fiches, on repart propre */
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table td,
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table th{
    padding:9px 10px;vertical-align:middle;text-align:left;border:none;
    border-bottom:1px dotted #e8ded3;background:transparent;
}
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table tbody tr:last-child td{border-bottom:none}
/* v102.312 : pas de pointilles sous la colonne Sous-critere (les encadres suffisent) */
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table th.lbl{border-bottom:none !important;border-top:none !important}
/* v102.317 : la bordure de LIGNE heritee des fiches (.sn-v2-acc-details tr) dessinait un pointille pleine largeur (colonne libelle comprise). On la neutralise ; les colonnes d'analyse gardent leur separateur via td.col. */
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table tr{border-bottom:none !important}
.sn-cmp-diff-table thead th{
    border-bottom:1px solid #f0eae3 !important;
    font-size:.58rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#a2917f;
}
.sn-cmp-diff-table .lbl{width:30%}
/* libelle du sous-critere : petite box (emoji + intitule), texte reduit */
.sn-cmp-diff-lbl{
    /* v102.308 : calque EXACT sur la cellule critere des fiches
       (.sn-v2-acc-details td:first-child) : encadre peche, centre, emoji empile
       au-dessus de l'intitule. Le <br> du shortcode fait le retour, l'emoji
       (image) passe en bloc au-dessus. Fini l'aspect bouton. */
    display:block;text-align:center;box-sizing:border-box;
    background:#fff5eb;border:1px solid #ffe0b2;border-radius:6px;padding:8px 6px;
    font-size:.72rem;font-weight:300;color:#e67e22;line-height:1.35;
}
.sn-cmp-diff-lbl img{max-width:22px;height:auto;display:block;margin:0 auto 4px}
.sn-cmp-diff-table th.lbl{background:transparent}
/* analyses : texte reduit, italique discret */
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table td.col{
    font-size:.72rem;line-height:1.5;color:#5a4a3c;font-style:italic;font-weight:400;
}
/* colonne avantagee : vert tres epure ; colonne en retrait : gris/blanc */
.sn-cmp-diff-table .col.is-lead{background:#f6fbf7 !important;color:#3d5a48}
.sn-cmp-diff-table .col.is-behind{background:#fbfafa !important;color:#8a8a8a}
.sn-cmp-diff-table thead .col.is-lead{color:#2e9e5b}
.sn-cmp-diff-table .lead{
    display:inline-block;font-size:.52rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;
    background:linear-gradient(135deg,#5ac58c,#2e9e5b);border-radius:100px;padding:2px 7px;margin-left:6px;
}
.sn-cmp-diff-table .na{color:#b7a897;font-style:normal}
/* ligne dynamique au survol */
.sn-cmp-diff-table tbody tr{transition:background .15s}
.sn-cmp-diff-table tbody tr:hover td{background:#fffaf4}
.sn-cmp-diff-table tbody tr:hover td.col.is-lead{background:#eef8f1 !important}
/* repli des sous-criteres identiques */
.sn-cmp-diff-same{margin-top:10px;border:1px dashed #e8ded3;border-radius:11px;overflow:hidden;background:#fcfaf8}
.sn-cmp-diff-same summary{
    display:flex;align-items:center;gap:8px;padding:9px 13px;cursor:pointer;list-style:none;
    font-size:.68rem;font-weight:700;color:#8a7a6c;
}
.sn-cmp-diff-same summary::-webkit-details-marker{display:none}
.sn-cmp-diff-same summary .sn-cmp-duel-chev{margin-left:auto}
.sn-cmp-diff-same[open] summary{border-bottom:1px solid #f0eae3}
.sn-cmp-diff-table.is-same{font-size:.7rem}
.sn-cmp-diff-table.is-same .lbl{width:38%}

/* ---- HUB de typologie (page indexable qui consolide les comparatifs) ---- */
.sn-cmp-hub-intro{display:flex;gap:11px;align-items:flex-start;text-align:left;max-width:760px;margin:0 auto 22px;background:#fffaf2;border:1px solid #f3e2cf;border-radius:14px;padding:14px 18px;font-size:.9rem;line-height:1.6;color:#5a4a3c}
.sn-cmp-hub-intro .em{font-size:1.15rem;flex:0 0 auto;line-height:1.4}
.sn-cmp-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:26px}
.sn-cmp-hub-card{
    position:relative;overflow:hidden;
    display:flex;flex-direction:column;gap:9px;text-decoration:none;
    background:#fffdfb;border:1px solid #efe4d8;border-radius:14px;padding:13px 14px;transition:all .2s;
}
.sn-cmp-hub-card:hover{border-color:var(--sn-color-end);box-shadow:0 14px 30px rgba(238,90,36,.14);transform:translateY(-3px)}
/* fond "avant match" : halo charte + reflet qui balaye */
.sn-cmp-hub-shine{
    position:absolute;inset:0;pointer-events:none;z-index:0;
    background:
        radial-gradient(120% 60% at 50% -10%,rgba(255,159,67,.14),transparent 62%),
        linear-gradient(115deg,transparent 34%,rgba(255,255,255,.5) 47%,transparent 60%);
    background-size:100% 100%,260% 100%;background-position:0 0,-70% 0;
    animation:sn-cmp-tcg-shine 4.6s linear infinite;
}
.sn-cmp-hub-card>*:not(.sn-cmp-hub-shine){position:relative;z-index:1}
.sn-cmp-hub-btn{
    align-self:center;font-size:.74rem;font-weight:700;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:7px 18px;transition:all .18s;
}
.sn-cmp-hub-card:hover .sn-cmp-hub-btn{background:var(--sn-color-end);color:#fff;border-color:var(--sn-color-end)}
.sn-cmp-hub-duo{display:flex;align-items:center;gap:10px}
.sn-cmp-hub-duo .p{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sn-cmp-hub-duo .mk{display:flex;align-items:center;gap:5px;font-size:.6rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#a2917f}
.sn-cmp-hub-duo .mk img{max-width:15px;height:auto;vertical-align:middle}
.sn-cmp-hub-duo .pd{font-size:.78rem;font-weight:700;color:#2a2a2a;line-height:1.28;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sn-cmp-hub-duo .vs{
    flex:0 0 auto;width:30px;height:30px;border-radius:50%;font-size:.62rem;font-weight:800;font-style:italic;color:#fff;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    display:flex;align-items:center;justify-content:center;box-shadow:0 5px 12px rgba(238,90,36,.24);
}
.sn-cmp-hub-go{font-size:.73rem;font-weight:700;color:var(--sn-color-end);text-align:right}
.sn-cmp-hub-foot{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.sn-cmp-more-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}

/* Intro de section (teasing) */
.sn-cmp-section-intro{
    font-size:.82rem;line-height:1.6;color:#7a6a5c;max-width:640px;margin:0 auto 16px;text-align:center;
}
.sn-cmp-section-intro strong{color:#4a4a4a;font-weight:700}

/* ---- Section marques (hub) ---- */
.sn-cmp-brands{margin-top:30px;text-align:center}
.sn-cmp-brands-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sn-cmp-brand-card{
    display:flex;align-items:center;gap:13px;text-decoration:none;text-align:left;
    background:#fffdfb;border:1px solid #efe4d8;border-radius:16px;padding:14px 16px;transition:all .2s;
}
.sn-cmp-brand-card:hover{border-color:var(--sn-color-end);box-shadow:0 12px 26px rgba(238,90,36,.13);transform:translateY(-2px)}
.sn-cmp-brand-thumb{
    flex:0 0 auto;width:54px;height:54px;border-radius:13px;overflow:hidden;
    background:linear-gradient(160deg,#fbf5ee,#f2e8dc);border:1px solid #f0eae3;
    display:flex;align-items:center;justify-content:center;
}
.sn-cmp-brand-thumb img{width:100%;height:100%;object-fit:contain}
.sn-cmp-brand-thumb .ph{font-size:1.05rem;font-weight:800;color:#cdbfae;text-transform:uppercase}
.sn-cmp-brand-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.sn-cmp-brand-name{display:flex;align-items:center;gap:6px;font-size:.92rem;font-weight:800;color:#262626;overflow:hidden;white-space:nowrap}
.sn-cmp-brand-name .fl{flex:0 0 auto;font-size:.85rem}
.sn-cmp-brand-name .fl img{max-width:18px;height:auto;vertical-align:middle}
.sn-cmp-brand-go{font-size:.74rem;font-weight:700;color:var(--sn-color-end)}

/* ---- TOP 3 des matchs les plus consultes : podium ---- */
.sn-cmp-more-grid.is-podium{align-items:end}
.sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-1{order:2;padding-top:22px;border-color:#ffd8b5;background:linear-gradient(180deg,#fff8ef,#fffdfb);box-shadow:0 14px 30px rgba(238,90,36,.14)}
.sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-2{order:1;margin-bottom:14px}
.sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-3{order:3;margin-bottom:24px}
.sn-cmp-more-rank .md{font-size:.95rem;margin-right:4px}
.sn-cmp-more-card.rank-1 .sn-cmp-more-rank{background:linear-gradient(135deg,#f6d777,#d4a017);box-shadow:0 5px 12px rgba(212,160,23,.3)}
.sn-cmp-more-card.rank-2 .sn-cmp-more-rank{background:linear-gradient(135deg,#e6ecf1,#9aa5b0);color:#3a3a3a;box-shadow:0 5px 12px rgba(154,165,176,.28)}
.sn-cmp-more-card.rank-3 .sn-cmp-more-rank{background:linear-gradient(135deg,#e2ab7c,#a9692f);box-shadow:0 5px 12px rgba(169,105,47,.28)}

/* ---- TOP 3 : styles communs ---- */
.sn-cmp-more-rank{
    display:inline-block;font-size:.62rem;font-weight:800;color:#fff;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    border-radius:100px;padding:2px 10px;box-shadow:0 4px 10px rgba(238,90,36,.24);
}
.sn-cmp-more-hits{font-size:.66rem;font-weight:600;color:#a2917f}
.sn-cmp-more-link{
    display:inline-flex;align-items:center;gap:7px;text-decoration:none;
    font-size:.84rem;font-weight:700;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:11px 22px;transition:all .2s;
}
.sn-cmp-more-link:hover{background:var(--sn-color-end);color:#fff;border-color:var(--sn-color-end)}

/* Bouton de partage : plus grand, en fin de page */
.sn-cmp-share-bar{display:flex;flex-direction:column;align-items:center;gap:0}
.sn-cmp-share.is-lg{font-size:.92rem;padding:15px 30px;gap:10px}
.sn-cmp-share.is-lg .sn-cmp-share-ico{font-size:1.15rem}
.sn-cmp-share-note{
    display:flex;align-items:flex-start;gap:14px;margin:18px auto 0;max-width:620px;
    padding:16px 18px;border-radius:16px;text-align:left;
    background:linear-gradient(135deg,#fff6ec,#fff1e3);border:1px solid #ffd8b5;
}
.sn-cmp-share-note .ic{
    flex:0 0 auto;width:42px;height:42px;border-radius:12px;font-size:1.2rem;
    background:#fff;border:1px solid #ffd8b5;display:flex;align-items:center;justify-content:center;
}
.sn-cmp-share-note .bd{display:flex;flex-direction:column;gap:4px;min-width:0}
.sn-cmp-share-note b{font-size:.88rem;color:#2a2a2a}
.sn-cmp-share-note .bd>span{font-size:.8rem;line-height:1.55;color:#6a5a4c}
/* Detail par sous-critere (grilles de la fiche produit, A | B) */
.sn-cmp-duel-detail{margin-top:14px;padding-top:12px;border-top:1px dashed #efe4d8}
.sn-cmp-duel-detail-intro{font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#a2917f;margin-bottom:10px}
.sn-cmp-duel-detail-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sn-cmp-duel-detail-col{border:1px solid #f0eae3;border-radius:12px;padding:10px;background:#fffdfb;min-width:0}
.sn-cmp-duel-detail-col.is-lead{border-color:#ffd8b5;background:#fff9f2}
.sn-cmp-duel-detail-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #f0eae3}
.sn-cmp-duel-detail-h .mk{font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#5a4a3c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sn-cmp-duel-detail-h .lead{flex:0 0 auto;font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));padding:2px 8px;border-radius:100px}
.sn-cmp-duel-detail-grid{font-size:.82rem}
/* La grille de sous-criteres reutilise le markup ET le style de la fiche
   (.sn-v2-acc-details : libelle orange encadre + emoji + analyse italique).
   Ici elle est dans une colonne etroite (2 produits cote a cote) : on empile
   libelle et analyse (comme la vue mobile de la fiche) pour rester lisible. */
.sn-cmp-duel-detail-grid{font-size:.76rem}
.sn-cmp-duel-detail-grid.sn-v2-acc-details td{display:block;width:100%;padding:6px 4px;font-size:.74rem;line-height:1.45}
.sn-cmp-duel-detail-grid.sn-v2-acc-details td:first-child{font-size:.72rem}
.sn-cmp-duel-detail-grid.sn-v2-acc-details img{max-width:16px;height:auto}
.sn-cmp-duel-detail-grid.sn-v2-acc-details td:first-child{width:100%;min-width:0;max-width:100%;margin-bottom:6px}
.sn-cmp-duel-detail-grid.sn-v2-acc-details td:nth-child(2){padding-left:0}
.sn-cmp-duel-detail-grid img{max-width:100%;height:auto}

/* CTA : deux colonnes (une par produit), fin de synthese, bien visibles */
.sn-cmp-cta{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:4px}
.sn-cmp-cta-btn{
    display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;text-decoration:none;
    font-family:'Poppins',sans-serif;padding:16px 18px;border-radius:16px;
    background:#fff5eb;border:1px solid #ffd8b5;transition:all .2s;
}
.sn-cmp-cta-btn:hover{background:#fff;border-color:var(--sn-color-end);box-shadow:0 10px 24px rgba(238,90,36,.14);transform:translateY(-2px)}
.sn-cmp-cta-brand{font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#a2917f}
.sn-cmp-cta-name{font-size:.9rem;font-weight:700;color:#262626;line-height:1.25}
.sn-cmp-cta-go{margin-top:6px;font-size:.76rem;font-weight:700;color:var(--sn-color-end)}

/* ---- Aller plus loin (bas du match) : autres duels + retour classement ---- */
.sn-cmp-more{margin-top:34px;text-align:center}
.sn-cmp-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.sn-cmp-more-card{
    display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;
    background:#fffdfb;border:1px solid #efe4d8;border-radius:14px;padding:15px 12px;transition:all .2s;
}
.sn-cmp-more-card:hover{border-color:var(--sn-color-end);box-shadow:0 10px 24px rgba(238,90,36,.12);transform:translateY(-2px)}
.sn-cmp-more-duo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.sn-cmp-more-duo .p{font-size:.82rem;font-weight:700;color:#3a3a3a}
.sn-cmp-more-duo .vs{
    font-size:.62rem;font-weight:800;font-style:italic;color:#fff;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
}
.sn-cmp-more-go{font-size:.72rem;font-weight:700;color:var(--sn-color-end)}
.sn-cmp-more-rank{
    display:inline-flex;align-items:center;gap:7px;text-decoration:none;
    font-size:.84rem;font-weight:700;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:11px 22px;transition:all .2s;
}
.sn-cmp-more-rank:hover{background:var(--sn-color-end);color:#fff;border-color:var(--sn-color-end)}

/* ---- Editorial SEO de la landing (regles du jeu) ---- */
.sn-cmp-edito{max-width:760px;margin:38px auto 0;text-align:left}
.sn-cmp-edito .sn-cmp-h2{margin-left:auto;margin-right:auto}
.sn-cmp-edito p{font-size:.9rem;line-height:1.68;color:#4a4a4a;margin:0 0 15px}
.sn-cmp-edito strong{color:#2a2a2a;font-weight:700}
.sn-cmp-edito a{color:var(--sn-color-end);text-decoration:none;border-bottom:1px solid #ffd8b5;transition:all .18s}
.sn-cmp-edito a:hover{color:#d35400;border-bottom-color:var(--sn-color-end)}
/* La "notice" : boite parchemin qui regroupe le mode d'emploi complet */
.sn-cmp-scroll{
    position:relative;margin:6px 0 22px;padding:18px 22px 22px;border-radius:18px;
    background:linear-gradient(180deg,#fffaf4,#fffdfb);
    border:1px solid #f0e2d2;box-shadow:0 14px 34px rgba(120,80,40,.07);
}
.sn-cmp-scroll::before,.sn-cmp-scroll::after{
    content:'';position:absolute;left:14px;right:14px;height:5px;border-radius:4px;
    background:linear-gradient(90deg,var(--sn-color-start),var(--sn-color-end));opacity:.16;
}
.sn-cmp-scroll::before{top:6px}
.sn-cmp-scroll::after{bottom:6px}
.sn-cmp-scroll-head{
    display:inline-flex;align-items:center;gap:7px;margin:0 0 6px;
    font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--sn-color-end);
    background:#fff;border:1px solid #ffd8b5;border-radius:100px;padding:5px 14px;
}
.sn-cmp-scroll-head .ic{font-size:.85rem}
.sn-cmp-scroll .sn-cmp-edito-h3:first-of-type{margin-top:16px}
/* Liens editoriaux en petits boutons ephemeres */
.sn-cmp-linkbtns{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.sn-cmp-linkbtn{
    display:inline-flex;align-items:center;gap:6px;text-decoration:none !important;
    font-size:.74rem;font-weight:700;color:var(--sn-color-end) !important;
    background:#fff5eb;border:1px solid #ffd8b5 !important;border-radius:100px;padding:6px 14px;transition:all .18s;
}
.sn-cmp-linkbtn:hover{background:var(--sn-color-end);color:#fff !important;border-color:var(--sn-color-end) !important}
.sn-cmp-linkbtn.is-solid{
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));color:#fff !important;
    border-color:transparent !important;box-shadow:0 8px 18px rgba(238,90,36,.24);
}
.sn-cmp-linkbtn.is-solid:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(238,90,36,.32)}
/* Bulle "application smartphone" */
.sn-cmp-appbox{
    display:flex;align-items:flex-start;gap:14px;margin:18px 0 0;padding:16px 18px;border-radius:16px;
    background:linear-gradient(135deg,#fff6ec,#fff1e3);border:1px solid #ffd8b5;
}
.sn-cmp-appbox-ic{
    flex:0 0 auto;width:42px;height:42px;border-radius:12px;font-size:1.2rem;
    background:#fff;border:1px solid #ffd8b5;display:flex;align-items:center;justify-content:center;
}
.sn-cmp-appbox-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.sn-cmp-appbox-body b{font-size:.88rem;color:#2a2a2a}
.sn-cmp-appbox-body>span{font-size:.8rem;line-height:1.55;color:#6a5a4c}
/* sous-titres de section, en pastille discrete */
.sn-cmp-edito-h3{
    display:block;width:fit-content;max-width:100%;box-sizing:border-box;
    font-size:.9rem;font-weight:800;color:#5a4a3c;
    background:#faf6f1;border:1px solid #efe4d8;border-radius:100px;padding:7px 18px;
    margin:30px 0 14px;
}
/* 3 apports utilisateur */
.sn-cmp-edito-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 16px}
.sn-cmp-edito-card{
    display:flex;flex-direction:column;gap:6px;
    background:#fffdfb;border:1px solid #f0eae3;border-radius:13px;padding:14px 15px;
}
.sn-cmp-edito-card .ic{font-size:1.15rem}
.sn-cmp-edito-card b{font-size:.84rem;color:#2a2a2a}
.sn-cmp-edito-card span:last-child{font-size:.78rem;line-height:1.55;color:#6a5a4c}
/* TIMELINE des regles du match */
.sn-cmp-timeline{list-style:none;margin:0 0 18px;padding:0;position:relative}
.sn-cmp-timeline::before{
    content:'';position:absolute;left:17px;top:12px;bottom:12px;width:2px;
    background:linear-gradient(180deg,var(--sn-color-start),var(--sn-color-end));opacity:.35;
}
.sn-cmp-tl-step{display:flex;align-items:flex-start;gap:14px;position:relative;padding:0 0 16px}
.sn-cmp-tl-step:last-child{padding-bottom:0}
.sn-cmp-tl-num{
    flex:0 0 auto;width:36px;height:36px;border-radius:50%;position:relative;z-index:1;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    color:#fff;font-size:.92rem;font-weight:800;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 6px 14px rgba(238,90,36,.26);border:3px solid #fff;
}
.sn-cmp-tl-body{display:flex;flex-direction:column;gap:4px;padding-top:5px;min-width:0}
.sn-cmp-tl-body b{font-size:.88rem;color:#2a2a2a}
.sn-cmp-tl-body span{font-size:.82rem;line-height:1.6;color:#5a4a3c}
.sn-cmp-tl-body b.a{color:#e5484d}
.sn-cmp-tl-body b.b{color:#3b82c4}
/* les 4 piliers ponderes */
.sn-cmp-edito-pillars{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 16px;padding:0;list-style:none}
.sn-cmp-edito-pillar{
    display:flex;flex-direction:column;gap:7px;
    background:#fffdfb;border:1px solid #f0eae3;border-radius:13px;padding:14px 15px;
}
.sn-cmp-edito-pillar .hd{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sn-cmp-edito-pillar .em{flex:0 0 auto;font-size:1.05rem}
.sn-cmp-edito-pillar b{font-size:.86rem;color:#2a2a2a}
.sn-cmp-edito-pillar .w{
    margin-left:auto;font-size:.68rem;font-weight:800;color:#fff;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    border-radius:100px;padding:3px 10px;flex:0 0 auto;
}
.sn-cmp-edito-pillar .ev{font-size:.78rem;line-height:1.55;color:#6a5a4c}
/* verdict */
.sn-cmp-edito-cta{
    font-size:.9rem !important;font-weight:600;color:#2a2a2a !important;
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:13px;padding:14px 17px;
}
.sn-cmp-edito-note{font-size:.8rem !important;color:#8a7a6c !important;font-style:italic}
/* FAQ (accordeon natif) */
.sn-cmp-faq{display:flex;flex-direction:column;gap:10px}
.sn-cmp-faq-item{background:#fff;border:1px solid #efe4d8;border-radius:13px;overflow:hidden}
.sn-cmp-faq-q{
    display:flex;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;list-style:none;
    -webkit-tap-highlight-color:transparent;
}
.sn-cmp-faq-q::-webkit-details-marker{display:none}
.sn-cmp-faq-q .tx{flex:1;min-width:0;font-size:.85rem;font-weight:700;color:#2a2a2a;line-height:1.4}
.sn-cmp-faq-item[open] .sn-cmp-faq-q{border-bottom:1px solid #f2ebe3}
.sn-cmp-faq-a{padding:13px 16px 15px;font-size:.83rem;line-height:1.65;color:#5a4a3c}

/* Aide dev (diagnostic admin) */
.sn-cmp-debug{
    border:1px solid #e7cdb4;background:#fffaf3;border-radius:10px;
    padding:14px 16px;font-family:monospace;font-size:13px;line-height:1.6;
    overflow-wrap:break-word;word-wrap:break-word;
}

/* Barre de partage (drapeau damier) - v102.264 */
.sn-cmp-share-bar{text-align:center;margin:38px 0 24px}
.sn-cmp-share{
    display:inline-flex;align-items:center;gap:9px;cursor:pointer;
    font-family:'Poppins',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.01em;
    color:#3a3a3a;background:#fff;border:1px solid #e7dccf;border-radius:100px;
    padding:9px 20px;transition:all .2s;
}
.sn-cmp-share:hover{border-color:var(--sn-color-end);color:var(--sn-color-end);box-shadow:0 6px 16px rgba(238,90,36,.12)}
.sn-cmp-share.is-copied{border-color:#2e9e5b;color:#2e9e5b;background:#f2fbf5}
.sn-cmp-share-ico{font-size:1.05rem;line-height:1}
.sn-cmp-share-url{margin-top:8px;font-size:.72rem;color:#b0a394;word-break:break-all;max-width:640px;margin-left:auto;margin-right:auto}

/* Landing : selecteur de match - v102.264 */
.sn-cmp-lp-empty{text-align:center;color:#8a7a6c;font-size:.9rem;padding:30px 0}
.sn-cmp-selector{
    background:#fff;border:1px solid #efe4d8;border-radius:18px;
    box-shadow:0 10px 30px rgba(60,40,20,.06);padding:24px 24px 22px;
    max-width:760px;margin:0 auto;
}
.sn-cmp-sel-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.sn-cmp-sel-field label{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:600;color:#5a4a3c}
.sn-cmp-step{
    display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;
    font-size:.62rem;font-weight:700;letter-spacing:.02em;
    background:#fff;border:1px solid #e7dccf;border-radius:100px;padding:3px 9px;color:#8a7a6c;
}
.sn-cmp-step--a{color:#e5484d;border-color:#f3c2c4;background:#fff5f5}
.sn-cmp-step--b{color:#3b82c4;border-color:#c2d6f0;background:#f5f9ff}
.sn-cmp-selector select{
    width:100%;font-family:'Poppins',sans-serif;font-size:.9rem;color:#2a2a2a;
    padding:11px 13px;border:1px solid #e2d6c8;border-radius:11px;background:#fff;
    -webkit-appearance:none;appearance:none;cursor:pointer;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%23a2917f' d='M1 1l5 5 5-5'/></svg>");
    background-repeat:no-repeat;background-position:right 13px center;padding-right:34px;
}
.sn-cmp-selector select:focus{outline:none;border-color:var(--sn-color-end);box-shadow:0 0 0 3px rgba(238,90,36,.1)}
.sn-cmp-selector select:disabled{background-color:#f7f4f1;color:#b0a394;cursor:not-allowed}
.sn-cmp-sel-typo{margin-bottom:18px}
.sn-cmp-sel-duo{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:14px;margin-bottom:20px}
.sn-cmp-sel-vs{
    flex:0 0 auto;align-self:center;width:42px;height:42px;border-radius:50%;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    color:#fff;font-weight:800;font-style:italic;font-size:.85rem;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 6px 14px rgba(238,90,36,.28);margin-bottom:3px;
}
/* Bouton de lancement : translucide au repos, VERT + effet de propulsion quand pret */
.sn-cmp-go{
    display:flex;align-items:center;justify-content:center;gap:9px;width:100%;cursor:pointer;
    font-family:'Poppins',sans-serif;font-size:.95rem;font-weight:700;letter-spacing:.02em;color:#fff;
    background:linear-gradient(135deg,#e9ddd2,#d9cdc1);
    border:none;border-radius:30px;padding:15px 24px;
    transition:transform .15s,box-shadow .2s,opacity .2s,background .3s;
}
.sn-cmp-go:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.sn-cmp-go:not(:disabled){
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    box-shadow:0 10px 22px rgba(238,90,36,.22);
    animation:sn-cmp-go-thrust 1.8s ease-in-out infinite;
}
.sn-cmp-go:not(:disabled):hover{transform:translateY(-3px) scale(1.01);box-shadow:0 16px 30px rgba(238,90,36,.3)}
.sn-cmp-go-ico{display:inline-block;font-size:1.05rem}
.sn-cmp-go:not(:disabled) .sn-cmp-go-ico{animation:sn-cmp-go-kick .9s ease-in-out infinite}
@keyframes sn-cmp-go-thrust{0%,100%{transform:translateY(0);box-shadow:0 10px 22px rgba(238,90,36,.22)}50%{transform:translateY(-2px);box-shadow:0 16px 28px rgba(238,90,36,.32)}}
@keyframes sn-cmp-go-kick{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-8deg)}}
.sn-cmp-sel-hint{text-align:center;font-size:.76rem;color:#9a8a7a;margin:12px 0 0}
.sn-cmp-sel-hint.is-ready{
    display:flex;align-items:center;justify-content:center;gap:8px;width:fit-content;
    margin:14px auto 0;padding:10px 20px;border-radius:100px;font-size:.84rem;font-weight:600;
    color:#177a43;background:linear-gradient(135deg,#eafaf0,#d3f4e0);border:1px solid #b6e6c8;
    box-shadow:0 10px 22px rgba(31,168,90,.2),0 2px 0 rgba(31,168,90,.15);
    animation:sn-cmp-ready-float 2.2s ease-in-out infinite;
}
.sn-cmp-sel-hint.is-ready .ic{font-size:1.15rem;flex:0 0 auto}
.sn-cmp-sel-hint.is-ready .tx{text-align:center;line-height:1.3}
.sn-cmp-sel-hint.is-ready b{color:#1fa85a;font-weight:800}
@keyframes sn-cmp-ready-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* ---- Cartes de duel facon carte a collectionner (TCG), chartees INWT ---- */
/* Apparaissent des que 2 produits sont choisis, pour donner le ton "vrai match". */
.sn-cmp-arena{
    display:flex;align-items:stretch;justify-content:center;gap:18px;
    margin:28px auto 0;max-width:760px;
}
.sn-cmp-arena:empty{display:none}
.sn-cmp-arena-vs{
    flex:0 0 auto;align-self:center;width:56px;height:56px;border-radius:50%;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    color:#fff;font-weight:800;font-style:italic;font-size:1rem;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 20px rgba(238,90,36,.32);border:3px solid #fff;z-index:2;position:relative;
    animation:sn-cmp-vs-beat 1.7s ease-in-out infinite;
}
.sn-cmp-arena-vs::after{
    content:'';position:absolute;width:56px;height:56px;border-radius:50%;
    border:2px solid var(--sn-color-end);opacity:0;animation:sn-cmp-vs-ring 1.7s ease-out infinite;
}
@keyframes sn-cmp-vs-beat{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}
@keyframes sn-cmp-vs-ring{0%{opacity:.5;transform:scale(1)}100%{opacity:0;transform:scale(1.6)}}
/* La carte "combattant" : simple, avec un fond brillant/dynamique, SANS reveler
   le resultat (score et sous-scores FLOUTES, pas de noisette) - le detail est
   reserve a l'ecran de match. */
.sn-cmp-tcg{
    position:relative;flex:1 1 0;min-width:0;max-width:270px;overflow:hidden;
    border-radius:16px;padding:15px 14px 13px;background:#fffdfb;border:1px solid #efe4d8;
    box-shadow:0 14px 34px rgba(40,25,10,.12);
}
/* fond brillant/dynamique : halo charte + reflet qui balaye lentement */
.sn-cmp-tcg-shine{
    position:absolute;inset:0;pointer-events:none;z-index:0;
    background:
        radial-gradient(130% 70% at 50% -15%,rgba(255,159,67,.16),transparent 62%),
        linear-gradient(115deg,transparent 32%,rgba(255,255,255,.55) 46%,transparent 60%);
    background-size:100% 100%,260% 100%;background-position:0 0,-70% 0;
    animation:sn-cmp-tcg-shine 3.8s linear infinite;
}
@keyframes sn-cmp-tcg-shine{to{background-position:0 0,170% 0}}
.sn-cmp-tcg-head,.sn-cmp-tcg-name,.sn-cmp-tcg-art,.sn-cmp-tcg-skills,.sn-cmp-tcg-foot{position:relative;z-index:1}
/* scores masques avant le match : flous, non selectionnables */
.sn-cmp-lock{filter:blur(6px);-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.8}
.sn-cmp-tcg-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.sn-cmp-tcg-badge{
    font-size:.56rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    color:var(--sn-color-end);background:#fff5eb;border:1px solid #ffd8b5;
    padding:3px 9px;border-radius:100px;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.sn-cmp-tcg-hp{display:flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1}
.sn-cmp-tcg-hp i{font-style:normal;font-size:.54rem;font-weight:700;letter-spacing:.06em;color:var(--sn-color-end);text-transform:uppercase}
.sn-cmp-tcg-frac{display:inline-flex;flex-direction:column;align-items:center;line-height:1}
.sn-cmp-tcg-frac b{font-size:1.35rem;font-weight:800;color:var(--sn-color-end);padding:0 3px}
.sn-cmp-tcg-frac span{font-size:.6rem;font-weight:700;color:#a2917f;border-top:2px solid var(--sn-color-end);padding-top:2px;margin-top:2px}
.sn-cmp-tcg-name{line-height:1.2;margin-bottom:10px;min-height:2.1em}
.sn-cmp-tcg-name .br{display:inline-block;font-size:.56rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));padding:3px 11px;border-radius:100px;margin-bottom:7px;box-shadow:0 3px 8px rgba(238,90,36,.22)}
.sn-cmp-tcg-name .pr{display:block;font-size:.9rem;font-weight:700;color:#262626;overflow-wrap:break-word;word-wrap:break-word}
.sn-cmp-tcg-art{
    position:relative;border-radius:10px;overflow:hidden;margin-bottom:11px;
    aspect-ratio:4/3;background:linear-gradient(160deg,#fbf5ee,#f2e8dc);
    border:2px solid rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center;
}
.sn-cmp-tcg-photo{width:100%;height:100%;object-fit:contain;display:block}
.sn-cmp-tcg-ph{font-weight:800;color:#cdbfae;font-size:1.6rem}
.sn-cmp-tcg-skills{display:flex;flex-direction:column;gap:0;margin-bottom:10px}
.sn-cmp-tcg-sk{display:flex;align-items:center;gap:8px;padding:6px 2px;border-top:1px solid #f0eae3}
.sn-cmp-tcg-sk:first-child{border-top:none}
.sn-cmp-tcg-sk .em{font-size:.92rem;flex:0 0 auto;width:18px;text-align:center}
.sn-cmp-tcg-sk .lb{flex:1;min-width:0;font-size:.74rem;font-weight:600;color:#5a4a3c}
.sn-cmp-tcg-sk .vl{flex:0 0 auto;font-size:.95rem;font-weight:800;color:#2a2a2a}
.sn-cmp-tcg-foot{
    display:flex;align-items:center;justify-content:center;gap:8px;
    border-top:1px solid #f0eae3;padding-top:10px;
}
.sn-cmp-tcg-fiche{
    display:inline-flex;align-items:center;gap:5px;text-decoration:none;
    font-size:.68rem;font-weight:700;letter-spacing:.02em;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:5px 13px;transition:all .18s;
}
.sn-cmp-tcg-fiche:hover{background:var(--sn-color-end);color:#fff;border-color:var(--sn-color-end)}
.sn-cmp-tcg-fiche.is-off{color:#b0a394;background:#f6f2ee;border-color:#eee;pointer-events:none}
/* apparition "cartes distribuees" (transform/opacity = GPU) */
.sn-cmp-arena.is-in .sn-cmp-tcg{animation:sn-cmp-deal .5s cubic-bezier(.34,1.4,.64,1) both}
.sn-cmp-arena.is-in .sn-cmp-tcg:last-child{animation-delay:.09s}
@keyframes sn-cmp-deal{0%{opacity:0;transform:translateY(16px) scale(.94)}100%{opacity:1;transform:translateY(0) scale(1)}}

/* Pages du comparateur (body.sn-cmp-page) : on neutralise la sidebar Divi, on
   passe le contenu en pleine largeur et on masque le titre de page herite du
   template (le comparateur a son propre hero). Cible les elements STRUCTURELS
   Divi (hors .sn-cmp), d'ou le scope par la classe body. - v102.267 */
.sn-cmp-page #sidebar{display:none !important}
.sn-cmp-page #left-area{width:100% !important;padding-right:0 !important;float:none !important}
.sn-cmp-page .et_pb_widget_area,
.sn-cmp-page .et_right_sidebar #sidebar,
.sn-cmp-page .et_left_sidebar #sidebar{display:none !important}
.sn-cmp-page .entry-title,
.sn-cmp-page h1.entry-title,
.sn-cmp-page .et_pb_title_container h1,
.sn-cmp-page .et_post_meta_wrapper h1.entry-title,
.sn-cmp-page #left-area h1.entry-title,
.sn-cmp-page .et_pb_post_title .et_pb_title_container h1.entry-title,
.sn-cmp-page .et_pb_title_container .entry-title{display:none !important}
@media (max-width:400px){
    .sn-cmp-h1{font-size:1.25rem}
    .sn-cmp-duel-crit{font-size:.76rem}
}
@media (prefers-reduced-motion:reduce){
    .sn-cmp-card.is-winner::after,.sn-cmp-card-crown,.sn-cmp-ribbon,.sn-cmp-ribbon::after{animation:none}
    .sn-cmp-card-crown{opacity:1}
    .sn-cmp-card.is-winner::after{opacity:.35}
    .sn-cmp-arena.is-in .sn-cmp-tcg,.sn-cmp-arena.is-in .sn-cmp-arena-vs{animation:none}
    .sn-cmp-tcg-shine,.sn-cmp-arena-vs,.sn-cmp-arena-vs::after,.sn-cmp-go:not(:disabled),.sn-cmp-go:not(:disabled) .sn-cmp-go-ico,.sn-cmp-sel-hint.is-ready{animation:none}
}

/* ============================================================
   v102.289 (audit Erwan 2.3) : navigation crawlable des typologies
   (landing comparateur). Liens HTML reels vers les 63 hubs, doublant
   le <select> ergonomique. Style aligne sur la charte (Poppins, degrade
   var(--sn-color-start/end)).
   ============================================================ */
.sn-cmp-typo{margin:40px 0 8px;font-family:'Poppins',sans-serif}
.sn-cmp-typo-head{text-align:center;margin-bottom:16px}
.sn-cmp-typo-badge{
    display:inline-flex;align-items:center;gap:9px;margin:0;
    font-size:15px;font-weight:800;letter-spacing:.02em;color:var(--sn-color-end);
    background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:10px 22px;
}
.sn-cmp-typo-badge .em{font-size:18px}
.sn-cmp-typo-sub{margin:10px 0 0;font-size:13px;color:#8a7a6c}
.sn-cmp-typo-tools{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:18px}
.sn-cmp-typo-az{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;max-width:640px}
.sn-cmp-typo-l{
    min-width:26px;height:26px;padding:0 7px;border-radius:8px;border:1px solid #f0e2d4;
    background:#fff;color:#8a7a6c;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;
    transition:all .15s ease;
}
.sn-cmp-typo-l:hover{border-color:var(--sn-color-start);color:var(--sn-color-end)}
.sn-cmp-typo-l.is-on{background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));border-color:transparent;color:#fff}
.sn-cmp-typo-search{
    width:100%;max-width:340px;padding:10px 16px;border:1px solid #f0d9c4;border-radius:100px;
    font-family:inherit;font-size:14px;color:#5a3d28;background:#fff;outline:none;
    transition:border-color .18s ease,box-shadow .18s ease;
}
.sn-cmp-typo-search:focus{border-color:var(--sn-color-start);box-shadow:0 4px 14px rgba(238,90,36,.12)}
.sn-cmp-typo-grid{
    list-style:none !important;margin:0;padding:0;display:grid;
    grid-template-columns:repeat(4,1fr);gap:12px;
}
.sn-cmp-typo-grid>li{list-style:none !important;margin:0;padding:0}
.sn-cmp-typo-grid>li{list-style:none !important}
.sn-cmp-typo-grid>li::marker{content:none !important}
.sn-cmp-typo-card::marker{content:none !important}
.sn-cmp-typo-card.sn-hide{display:none !important}
.sn-cmp-typo-card a{
    display:flex !important;flex-direction:column;align-items:center;gap:10px;height:100%;box-sizing:border-box;
    padding:16px 12px;border-radius:14px;background:#fff;border:1px solid #f0e2d4;
    color:#5a3d28 !important;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:600;line-height:1.25;text-align:center;text-decoration:none !important;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.sn-cmp-typo-card a:hover,.sn-cmp-typo-card a:focus-visible{
    border-color:var(--sn-color-start);color:var(--sn-color-end);
    box-shadow:0 8px 20px rgba(238,90,36,.13);transform:translateY(-3px);
}
.sn-cmp-typo-card .sn-cmp-typo-thumb{
    flex:0 0 auto;width:72px !important;height:72px !important;max-width:72px;border-radius:12px;background:#faf4ee;
    display:flex !important;align-items:center;justify-content:center;overflow:hidden;
}
.sn-cmp-typo-card .sn-cmp-typo-thumb img{width:100% !important;height:100% !important;max-width:none !important;object-fit:contain !important;margin:0 !important;border-radius:0 !important}
.sn-cmp-typo-card .sn-cmp-typo-thumb .sn-cmp-typo-ph{font-size:30px}
.sn-cmp-typo-card .sn-cmp-typo-nm{display:block;color:inherit !important;text-decoration:none !important}
.sn-cmp-typo-empty{text-align:center;color:#8a7a6c;font-style:italic;font-size:14px;margin:14px 0}
.sn-cmp-typo-pager,.sn-cmp-hub-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px}
.sn-cmp-typo-pager button,.sn-cmp-hub-pager button{
    width:38px;height:38px;border-radius:50%;border:1px solid #f0d9c4;background:#fff;color:var(--sn-color-end);
    font-size:16px;line-height:1;cursor:pointer;transition:all .15s ease;
}
.sn-cmp-typo-pager button:hover:not(:disabled),.sn-cmp-hub-pager button:hover:not(:disabled){background:var(--sn-color-end);color:#fff;border-color:transparent}
.sn-cmp-typo-pager button:disabled,.sn-cmp-hub-pager button:disabled{opacity:.35;cursor:default}
.sn-cmp-typo-pageinfo,.sn-cmp-hub-pageinfo{font-size:13px;font-weight:700;color:#8a7a6c;min-width:56px;text-align:center}
@media (max-width:900px){.sn-cmp-typo-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:600px){
    .sn-cmp-typo-grid{grid-template-columns:repeat(2,1fr);gap:10px}
    .sn-cmp-typo-badge{font-size:14px;padding:9px 18px}
    .sn-cmp-typo-card .sn-cmp-typo-thumb{width:60px !important;height:60px !important;max-width:60px}
}
.sn-cmp-diff.sn-v2-acc-details .sn-cmp-diff-table tbody tr:last-child th { border-bottom: none; }
.sn-cmp-diff-table tbody tr:hover th { background: #fffaf4; }

/* ============================================================
   v102.301 (audit Erwan 8) : sections editoriales administrables
   du hub de typologie (chapo, definition, methodologie, vigilance,
   FAQ). Chaque section se replie si son champ est vide.
   ============================================================ */
.sn-cmp-hub-chapo {
    font-size: 1rem;
    line-height: 1.7;
    color: #4a4a4a;
    max-width: 760px;
    margin: 0 auto 26px;
    text-align: center;
    font-weight: 500;
}
/* v102.323 : parchemin GLOBAL englobant tout l'editorial (facon landing) */
.sn-cmp-hub-parch{max-width:840px;margin:0 auto 26px;background:linear-gradient(180deg,#fffdf9,#fff7ec);border:1px solid #f0e2d0;border-radius:20px;padding:28px 30px;box-shadow:0 6px 22px rgba(210,180,140,.09)}
/* sous-sections allegees : plus de box individuelle, juste de l'espacement */
.sn-cmp-hub-edito{max-width:none;margin:0 0 24px;background:none;border:none;border-radius:0;padding:0;box-shadow:none}
.sn-cmp-hub-edito:last-child{margin-bottom:0}
.sn-cmp-hub-edito .sn-cmp-h2 { margin: 0 0 12px; }
.sn-cmp-hub-edito-body{font-size:.9rem;line-height:1.68;color:#4a4a4a;font-family:'Poppins',sans-serif}
/* v102.321 : titres de section du hub alignes sur le pill de l'editorial landing (.sn-cmp-edito-h3) */
.sn-cmp-hub-edito .sn-cmp-h2{text-align:left;margin:0 0 14px;font-size:.9rem;color:#5a4a3c;background:#faf6f1;border-color:#efe4d8;padding:7px 18px;-webkit-text-fill-color:currentColor}
/* header (chapo) : box avec ampoule, facon landing */
.sn-cmp-hub-header{display:flex;gap:12px;align-items:flex-start;max-width:760px;margin:0 auto 24px;background:linear-gradient(180deg,#fffdf9,#fff6ec);border:1px solid #f0e2d0;border-radius:16px;padding:18px 22px}
.sn-cmp-hub-header .em{font-size:1.4rem;flex:0 0 auto;line-height:1.3}
.sn-cmp-hub-header-tx{font-family:'Poppins',sans-serif;font-size:.9rem;line-height:1.68;color:#4a4a4a}
.sn-cmp-hub-header-tx strong{color:#2a2a2a;font-weight:700}
.sn-cmp-hub-edito-body p { margin: 0 0 15px; }
/* v102.319 : lettrine graphique sur le 1er paragraphe des sections en prose */
.sn-cmp-hub-edito:not(.sn-cmp-hub-timeline):not(.sn-cmp-hub-vigilance):not(.sn-cmp-hub-faq):not(.sn-cmp-hub-lexique) .sn-cmp-hub-edito-body>p:first-of-type::first-letter{
    float:left;font-family:'Poppins','Georgia',serif;font-size:3em;font-weight:900;line-height:.82;
    margin:5px 11px 0 0;letter-spacing:-.02em;
    background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}
.sn-cmp-hub-edito-body p:last-child { margin-bottom: 0; }
.sn-cmp-hub-edito-body ul { margin: 0 0 12px 1.2em; list-style: disc; }
.sn-cmp-hub-edito-body a { color: var(--sn-color-end); text-decoration: underline; }
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body ul{list-style:none !important;margin:6px 0 0;padding:0;display:grid;gap:12px}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li::marker{content:none}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li{position:relative;list-style:none;padding:16px 18px 16px 68px;background:linear-gradient(180deg,#fffaf0,#fff4e2);border:1px solid #ffe4c2;border-radius:14px;font-size:.9rem;line-height:1.6;color:#5a4a3c}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li::before{content:"\26A0\FE0F";position:absolute;left:16px;top:15px;width:38px;height:38px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li:nth-child(4n+1)::before{content:"\1F36C"}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li:nth-child(4n+2)::before{content:"\1F50D"}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li:nth-child(4n+3)::before{content:"\1F3F7\FE0F"}
.sn-cmp-hub-vigilance .sn-cmp-hub-edito-body li:nth-child(4n+4)::before{content:"\1F30D"}
/* FAQ : cartes facon landing */
.sn-cmp-hub-faq-item{background:#fff;border:1px solid #f0e2d4;border-radius:14px;padding:16px 18px;margin-bottom:12px}
.sn-cmp-hub-faq-item:last-child{margin-bottom:0}
.sn-cmp-hub-faq-q { font-size: 1rem; font-weight: 700; color: #2d1f16; margin: 0 0 6px; }
.sn-cmp-hub-faq-a { font-size: .95rem; line-height: 1.65; color: #5a4a3c; }
.sn-cmp-hub-faq-a p { margin: 0 0 8px; }
.sn-cmp-hub-faq-a p:last-child { margin-bottom: 0; }
/* v102.319 : methodo en TIMELINE (la methodo sort en <ul> de 4 piliers) */
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body ul{list-style:none !important;counter-reset:sn-tl;margin:8px 0 0;padding:0;position:relative}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li::after{content:"";position:absolute;left:17px;top:18px;bottom:-18px;width:2px;background:linear-gradient(180deg,var(--sn-color-start),var(--sn-color-end));opacity:.35;z-index:0}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:last-child::after{display:none}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li{counter-increment:sn-tl;position:relative;list-style:none;padding:2px 0 18px 52px;font-size:.9rem;line-height:1.6;color:#5a4a3c}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:last-child{padding-bottom:0}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li::marker{content:none}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li::before{content:counter(sn-tl);position:absolute;left:0;top:0;box-sizing:border-box;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--sn-color-start),var(--sn-color-end));color:#fff;font-size:.92rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(238,90,36,.26);border:3px solid #fff;z-index:1}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li strong:first-child{display:block;width:fit-content;background:#faf6f1;border:1px solid #efe4d8;border-radius:100px;padding:3px 13px;color:#5a4a3c;font-size:.8rem;font-weight:800;margin-bottom:8px}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:nth-child(1) strong:first-child::before{content:"\1F6E1\FE0F  "}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:nth-child(2) strong:first-child::before{content:"\1F331  "}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:nth-child(3) strong:first-child::before{content:"\2696\FE0F  "}
.sn-cmp-hub-timeline .sn-cmp-hub-edito-body li:nth-child(4) strong:first-child::before{content:"\1F34E  "}
.sn-cmp-hub-methodo-link{margin:16px 0 0}
.sn-cmp-hub-methodo-link a{display:inline-flex;align-items:center;gap:7px;background:#fff5eb;border:1px solid #ffd8b5;border-radius:100px;padding:8px 16px;color:var(--sn-color-end);font-size:.82rem;font-weight:700;text-decoration:none;transition:all .15s ease}
.sn-cmp-hub-methodo-link a:hover{background:var(--sn-color-end);color:#fff;border-color:transparent}
/* v102.326 : section Lexique du hub (maillage interne, petits boutons ephemeres) */
.sn-cmp-hub-lex-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}
.sn-cmp-hub-lex-tag,.sn-cmp-hub-lex-tag:hover{text-decoration:none !important}
.sn-cmp-hub-lex-tag{display:inline-flex;align-items:center;gap:6px;background:#faf6f1;border:1px solid #efe4d8;border-radius:100px;padding:7px 14px;color:#5a4a3c;font-size:.82rem;font-weight:700;transition:all .15s ease}
.sn-cmp-hub-lex-tag:hover{border-color:var(--sn-color-start);color:var(--sn-color-end);box-shadow:0 4px 12px rgba(238,90,36,.12);transform:translateY(-1px)}
.sn-cmp-hub-lex-tag .em{font-size:.9rem}
.sn-cmp-hub-lex-all{background:#fff5eb;border-color:#ffd8b5;color:var(--sn-color-end)}
.sn-cmp-hub-lex-all:hover{background:var(--sn-color-end);color:#fff;border-color:transparent}
/* v102.319 : la pagination des matchs ne colle plus a la FAQ */
.sn-cmp-hub-pager{margin-bottom:36px}
/* v102.322 : box unique englobant tous les matchs */
.sn-cmp-hub-matchbox{max-width:none;margin:0;background:none;border:none;border-radius:0;padding:0;box-shadow:none}
.sn-cmp-hub-matchbox .sn-cmp-hub-grid{margin-bottom:0}
.sn-cmp-hub-matchbox .sn-cmp-hub-card{background:#fff}
.sn-cmp-hub-matchbox .sn-cmp-hub-pager{margin:18px 0 0}

/* ============================================================
   v102.374 : responsive MOBILE des pages de match. Deux causes
   distinctes corrigees ici, aucun changement de rendu desktop.
   (1) Enfants flex en white-space:nowrap SANS min-width:0 : le
   minimum automatique flex (min-width:auto) empeche l'element de
   retrecir sous son contenu ; sa largeur mini gonfle les pistes
   de grille (minimum auto des pistes 1fr) et le bloc deborde a
   droite, coupe net par l'overflow-x:clip defensif de .sn-cmp
   (d'ou une troncature sans barre de defilement). C'est la regle
   min-width:0 de l'en-tete de cette feuille, manquee a 3 endroits.
   (2) Grilles 2 et 3 colonnes conservees sur petit ecran (podium
   des matchs consultes, atouts / a ameliorer, scores produits,
   detail par produit).
   ============================================================ */
/* Correctifs hors media query : ils rendent effectif l'ellipsis
   deja prevu par ces regles et ne changent le rendu QUE la ou le
   texte debordait deja (un element ne retrecit que sous contrainte). */
.sn-cmp-duel-prod .mk{min-width:0}
.sn-cmp-duel-detail-h .mk{min-width:0}
.sn-cmp-duel-analysis .tx{min-width:0}

@media (max-width:700px){
    /* podium des 3 matchs consultes : empile, ordre logique 1-2-3
       (la mise en scene or-au-centre n'a de sens que sur une ligne) */
    .sn-cmp-more-grid{grid-template-columns:1fr}
    .sn-cmp-more-grid.is-podium{align-items:stretch}
    .sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-1{order:1;padding-top:15px}
    .sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-2{order:2;margin-bottom:0}
    .sn-cmp-more-grid.is-podium .sn-cmp-more-card.rank-3{order:3;margin-bottom:0}
}
@media (max-width:600px){
    /* entete de critere : le badge du meneur peut passer a la ligne
       et se replier au lieu de sortir du cadre */
    .sn-cmp-duel-head{flex-wrap:wrap;row-gap:6px}
    .sn-cmp-duel-crit{min-width:0}
    .sn-cmp-duel-badge{min-width:0;white-space:normal;text-align:right;line-height:1.4}
    /* boites de score produits, colonnes de detail par produit et
       bilan atouts / a ameliorer : une colonne */
    .sn-cmp-duel-rows{grid-template-columns:1fr}
    .sn-cmp-duel-detail-cols{grid-template-columns:1fr}
    .sn-cmp-why{grid-template-columns:1fr}
    /* pills de marque dans la phrase d'analyse : repli autorise et
       interligne resserre, pour une distribution des mots naturelle */
    .sn-cmp-mk{white-space:normal}
    .sn-cmp-duel-analysis .tx{line-height:1.75}
    /* badge Avantage du tableau differentiel : sous le nom de la
       colonne, il debordait de la cellule (table-layout:fixed) */
    .sn-cmp-diff-table .lead{display:block;width:max-content;max-width:100%;margin:4px 0 0}
}
