/* Ranknify Leads — styles chartés (fallbacks si la charte n'est pas chargée) */
.rnkl-block{--b:var(--cs-brand,#174F59);--b2:var(--cs-brand-2,#207477);--coral:var(--cs-coral,#B54F34);
  --amber:var(--cs-amber,#D8A447);--border:var(--cs-border,#D8E1DE);--ink:var(--cs-ink,#343A3E);
  margin:1.5rem 0}

/* Double CTA */
.rnkl-cta-duo{display:flex;flex-wrap:wrap;gap:.6rem}
.rnkl-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;
  border-radius:14px;font-weight:800;text-decoration:none;transition:.15s;border:2px solid transparent;flex:1 1 200px;text-align:center}
.rnkl-btn-solid{background:var(--coral);color:#fff}
.rnkl-btn-solid:hover{background:#9c4127;color:#fff;transform:translateY(-1px)}
.rnkl-btn-outline{background:#fff;color:var(--b);border-color:var(--b2)}
.rnkl-btn-outline:hover{background:var(--b2);color:#fff}

/* Fiche notée */
.rnkl-card{position:relative;display:flex;align-items:center;gap:1.25rem;padding:1.25rem;
  border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 4px 16px rgba(23,79,89,.05);flex-wrap:wrap}
.rnkl-badge{position:absolute;top:-12px;left:18px;background:var(--amber);color:#3a2c07;font-weight:800;
  font-size:.8rem;padding:4px 12px;border-radius:999px}
.rnkl-card-logo{flex:0 0 96px;width:96px;height:96px;display:flex;align-items:center;justify-content:center}
.rnkl-card-logo img{max-width:96px;max-height:96px;object-fit:contain}
.rnkl-card-body{flex:1;min-width:200px}
.rnkl-card-name{margin:0 0 .25rem;font-size:1.25rem;color:var(--b)}
.rnkl-card-verdict{margin:.4rem 0 0;color:#4a5a5c;font-size:.98rem;line-height:1.55}
.rnkl-card-actions{display:flex;flex-direction:column;gap:.55rem;min-width:210px}
.rnkl-card-actions .rnkl-cta-duo{flex-direction:column}
/* dans la carte (colonne) : boutons à hauteur auto, pleine largeur (sinon ils s'étirent) */
.rnkl-card-actions .rnkl-btn{flex:0 0 auto;width:100%}
@media(max-width:640px){.rnkl-card{justify-content:center;text-align:center}.rnkl-card-body{text-align:center}.rnkl-card-actions{width:100%}}

/* Jauge */
.rnkl-gauge{display:block}
.rnkl-gauge .rnkl-g-bg{fill:none;stroke:var(--border);stroke-width:10;stroke-linecap:round}
.rnkl-gauge .rnkl-g-num{font-size:2rem;font-weight:800;fill:var(--ink)}
.rnkl-gauge .rnkl-g-sub{font-size:.62rem;font-weight:700;fill:var(--b2);text-transform:uppercase;letter-spacing:.05em}

/* Listing top numéroté */
.rnkl-top-title{color:var(--b)}
.rnkl-top-list{counter-reset:rnkl;display:flex;flex-direction:column;gap:1rem}
.rnkl-top-list .rnkl-card{counter-increment:rnkl}
.rnkl-top-list .rnkl-card::after{content:"#" counter(rnkl);position:absolute;top:-12px;right:18px;
  background:var(--b2);color:#fff;font-weight:800;font-size:.85rem;padding:3px 10px;border-radius:999px}
/* le 1er de la liste = mise en avant or */
.rnkl-top-list > .wp-block-rnkl-platform-card:first-child .rnkl-card{border:2px solid var(--amber);background:#fffdf6}

/* ── Versus ── */
.rnkl-versus{border:1px solid var(--border);border-radius:18px;padding:1.5rem;background:#fff}
.rnkl-vs-title{text-align:center;color:var(--b);margin:0 0 1rem}
.rnkl-vs-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem}
.rnkl-vs-side{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.rnkl-vs-logo{height:80px;display:flex;align-items:center;justify-content:center}
.rnkl-vs-logo img{max-width:150px;max-height:80px;object-fit:contain}
.rnkl-vs-name{margin:0;color:var(--b);font-size:1.2rem}
.rnkl-vs-verdict{color:#4a5a5c;font-size:.92rem;margin:.2rem 0}
.rnkl-vs-cta{width:100%;max-width:260px}
.rnkl-vs-cta .rnkl-cta-duo{flex-direction:column}
.rnkl-vs-cta .rnkl-btn{flex:0 0 auto;width:100%}
.rnkl-vs-mid{font-family:Georgia,serif;font-weight:800;color:var(--coral);font-size:1.4rem;
  width:52px;height:52px;border-radius:50%;border:2px solid var(--coral);display:flex;align-items:center;justify-content:center}
.rnkl-vs-tablewrap{overflow-x:auto;margin-top:1.5rem}
.rnkl-vs-table{width:100%;border-collapse:collapse;min-width:480px}
.rnkl-vs-table th,.rnkl-vs-table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left}
.rnkl-vs-table thead th{background:var(--b);color:#fff}
.rnkl-vs-table tbody th{font-weight:700;color:var(--ink)}
@media(max-width:640px){.rnkl-vs-grid{grid-template-columns:1fr}.rnkl-vs-mid{margin:.5rem auto}}

/* ── Tableau comparatif ── */
.rnkl-ct-title{color:var(--b)}
.rnkl-ct-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:14px}
.rnkl-ct-table{width:100%;border-collapse:collapse;min-width:520px}
.rnkl-ct-table th,.rnkl-ct-table td{padding:13px 16px;border-bottom:1px solid var(--border);text-align:left}
.rnkl-ct-table thead th{background:var(--b);color:#fff;font-weight:700}
.rnkl-ct-table tbody th{font-weight:700;color:var(--ink);background:#fafcfb}
.rnkl-ct-table .rnkl-ct-hl{background:rgba(217,164,65,.12)}
.rnkl-ct-table thead th.rnkl-ct-hl{background:var(--amber);color:#3a2c07}
.rnkl-ct-table tr:last-child th,.rnkl-ct-table tr:last-child td{border-bottom:0}

/* ── Étoiles inline ── */
.rnkl-stars{color:var(--amber,#D8A447);font-size:1.05em;letter-spacing:.05em}
.rnkl-star-val{color:var(--ink,#343A3E);font-weight:800;font-size:.85em;margin-left:.25rem}
/* ── Sommaire ── */
.rnkl-toc{background:var(--sauge,#E8F1ED);border:1px solid var(--border,#D8E1DE);border-radius:14px;padding:1rem 1.3rem;margin:1.5rem 0}
.rnkl-toc-title{font-weight:800;color:var(--b,#174F59);margin-bottom:.5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}
.rnkl-toc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}
.rnkl-toc-list a{color:var(--b2,#207477);text-decoration:none}
.rnkl-toc-list a:hover{text-decoration:underline}
.rnkl-toc-list .lvl3{padding-left:1rem;font-size:.95em}
/* ── Disclosure ── */
.rnkl-disclosure{background:#fff8ef;border:1px solid #f2ddc4;border-radius:10px;padding:.7rem 1rem;font-size:.9rem;color:#6a5a3a;font-style:italic;margin:1.2rem 0}
/* ── Editeur placeholder ── */
.rnkl-editor-ph{background:#f6f7f9;border:1px dashed #c8cdd4;border-radius:10px;padding:1rem 1.2rem}
/* ── Variantes (register_block_style) ── */
.rnkl-card.is-style-borde{border-width:2px}
.rnkl-card.is-style-editorial{border:0;border-bottom:2px solid var(--border,#D8E1DE);border-radius:0;box-shadow:none;padding-left:0;padding-right:0}
.is-style-editorial .rnkl-card-name{font-size:1.4rem}
.rnkl-ct-table.is-style-raye tbody tr:nth-child(even){background:var(--sauge,#f4f5f7)}
.rnkl-ct-table.is-style-minimal{border:0} .rnkl-ct-table.is-style-minimal th,.rnkl-ct-table.is-style-minimal td{border-bottom:1px solid var(--border)}

/* ── Encadrés info/astuce/attention ── */
.rnkl-callout{display:flex;gap:.8rem;align-items:flex-start;padding:1rem 1.2rem;border-radius:12px;margin:1.3rem 0;border:1px solid}
.rnkl-callout-ico{font-size:1.2rem;line-height:1.4}
.rnkl-callout-info{background:#eef5f7;border-color:#cfe1e6;color:#294a52}
.rnkl-callout-astuce{background:#eef7f0;border-color:#cfe8d6;color:#1f5138}
.rnkl-callout-attention{background:#fdf3ea;border-color:#f2ddc4;color:#7a4a12}
/* ── Tableau comparatif : badge + colonne sticky ── */
.rnkl-ct-badge{display:block;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  background:var(--amber,#D8A447);color:#3a2c07;padding:.15rem .5rem;border-radius:6px;margin-bottom:.3rem;width:fit-content}
.rnkl-ct-table th:first-child,.rnkl-ct-table td:first-child{position:sticky;left:0;background:inherit;z-index:1}
.rnkl-ct-table tbody th:first-child{background:#fafcfb}
.rnkl-ct-table thead th:first-child{background:var(--b,#174F59)}

/* ============ Bloc Hero (3 dispositions + fonds) ============ */
.rnkl-hero-inner{max-width:1160px;margin:0 auto;padding:3.5rem 1.25rem}
.rnkl-hero-title{font-family:var(--wp--preset--font-family--serif,Georgia,serif);font-size:clamp(2rem,4vw,3rem);line-height:1.1;margin:0 0 .8rem}
.rnkl-hero-intro{font-size:1.15rem;line-height:1.7;margin:0 0 1.4rem;max-width:34em}
.rnkl-hero-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.rnkl-hero-cta{display:inline-block;background:var(--cs-coral,#B54F34);color:#fff !important;font-weight:700;text-decoration:none;padding:.9rem 1.5rem;border-radius:14px}
.rnkl-hero-cta:hover{background:#9c4127;color:#fff !important}
.rnkl-hero-cta--ghost{background:transparent !important;border:2px solid currentColor;color:inherit !important}
.rnkl-hero-media img{display:block;width:100%;height:auto;border-radius:18px}
/* fonds */
.rnkl-hero--bg-sauge{background:var(--cs-sauge,#E8F1ED)}
.rnkl-hero--bg-ivoire{background:var(--cs-ivoire,#FAF9F2)}
.rnkl-hero--bg-marque{background:linear-gradient(135deg,var(--cs-brand,#174F59),var(--cs-brand-2,#207477))}
.rnkl-hero--bg-sauge .rnkl-hero-title,.rnkl-hero--bg-ivoire .rnkl-hero-title{color:var(--cs-brand,#174F59)}
.rnkl-hero--bg-sauge .rnkl-hero-intro,.rnkl-hero--bg-ivoire .rnkl-hero-intro{color:#3e5559}
.rnkl-hero--bg-marque .rnkl-hero-inner,.rnkl-hero--bg-marque .rnkl-hero-title,.rnkl-hero--bg-marque .rnkl-hero-intro{color:#fff}
/* split */
.rnkl-hero--split .rnkl-hero-inner{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}
@media(min-width:820px){.rnkl-hero--split .rnkl-hero-inner{grid-template-columns:1.05fr .95fr;gap:3rem}}
/* centré */
.rnkl-hero--centre .rnkl-hero-inner{text-align:center;max-width:860px}
.rnkl-hero--centre .rnkl-hero-intro{margin-left:auto;margin-right:auto}
.rnkl-hero--centre .rnkl-hero-actions{justify-content:center}
.rnkl-hero--centre .rnkl-hero-media{margin-top:2rem}
/* image en fond */
.rnkl-hero--image{position:relative;background-size:cover;background-position:center}
.rnkl-hero--image .rnkl-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,30,35,.35),rgba(10,30,35,.62))}
.rnkl-hero--image .rnkl-hero-inner{position:relative;text-align:center;max-width:860px;padding-top:5rem;padding-bottom:5rem}
.rnkl-hero--image .rnkl-hero-title,.rnkl-hero--image .rnkl-hero-intro{color:#fff}
.rnkl-hero--image .rnkl-hero-intro{margin-left:auto;margin-right:auto}
.rnkl-hero--image .rnkl-hero-actions{justify-content:center}

/* ============ Annuaire plateformes filtrable ============ */
.rnkl-annuaire{margin:1.5rem 0}
.rnkl-filtres{background:var(--cs-sauge,#E8F1ED);border-radius:14px;padding:1.1rem 1.3rem;margin-bottom:1.5rem}
.rnkl-filtre-group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0}
.rnkl-filtre-label{font-weight:700;color:var(--cs-brand,#174F59);min-width:140px;font-size:.95rem}
.rnkl-chips{display:flex;flex-wrap:wrap;gap:.4rem}
.rnkl-chip{border:1px solid var(--cs-border,#D8E1DE);background:#fff;color:var(--cs-ink,#343A3E);border-radius:999px;padding:.35rem .9rem;font-size:.9rem;cursor:pointer;transition:.15s;font-weight:600}
.rnkl-chip:hover{border-color:var(--cs-brand-2,#207477)}
.rnkl-chip.is-active{background:var(--cs-brand-2,#207477);color:#fff;border-color:var(--cs-brand-2,#207477)}
.rnkl-filtres-foot{display:flex;align-items:center;gap:1rem;margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--cs-border,#D8E1DE)}
.rnkl-annu-count{font-size:.9rem;color:var(--cs-brand-2,#207477);font-weight:700}
.rnkl-annu-reset,.rnkl-annu-reset-inline{background:none;border:0;color:var(--cs-coral,#B54F34);font-weight:700;cursor:pointer;text-decoration:underline;font-size:.9rem}
.rnkl-annu-empty{text-align:center;padding:1.6rem;color:#667}
@media(max-width:600px){.rnkl-filtre-label{min-width:100%}}
