.de-app,
.de-collecte,
.defi-enfance-admin {
  --pink:#F00080 !important;
  --orange:#E06030 !important;
  --black:#101010 !important;
  --text:#1b1b1b !important;
  --muted:#616b78 !important;
  --surface:#ffffff !important;
  --surface-soft:#fcf7f9 !important;
  --surface-accent:linear-gradient(90deg, rgba(240,0,128,.12), rgba(224,96,48,.10)) !important;
  --border:rgba(16,16,16,.12) !important;
  --shadow:0 14px 35px rgba(16,16,16,.12) !important;
  --shadow-soft:0 10px 26px rgba(16,16,16,.08) !important;
  --radius:16px !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Arial,sans-serif !important;
  color:var(--text) !important;
}

.de-app *,
.de-collecte *,
.defi-enfance-admin * { box-sizing:border-box !important; }

.de-app { max-width:1180px !important; margin:0 auto !important; position:relative !important; z-index:2 !important; }

.de-shell,
.de-card,
.de-hero,
.de-banner,
.de-stat,
.de-admin-card,
.de-admin-panel,
.de-hub-rank,
.de-modal__dialog {
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:var(--radius) !important;
  box-shadow:var(--shadow) !important;
}

.de-shell { overflow:visible !important; background:#fff !important; }
.de-shell__top {
  padding:18px 18px 14px !important;
  background:var(--surface-accent) !important;
  border-bottom:1px solid var(--border) !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}
.de-shell__title {
  margin:0 !important;
  font-weight:900 !important;
  letter-spacing:.2px !important;
  font-size:18px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
.de-shell__sub {
  margin:8px 0 0 !important;
  color:#4b5563 !important;
  font-size:14px !important;
  line-height:1.6 !important;
  max-width:760px !important;
}
.de-badge {
  display:inline-flex !important;
  align-items:center !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  background:var(--pink) !important;
  color:#fff !important;
  font-weight:800 !important;
  font-size:12px !important;
  letter-spacing:.3px !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
.de-shell__hint {
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  font-size:12.5px !important;
  color:var(--black) !important;
  box-shadow:0 10px 22px rgba(16,16,16,.08) !important;
  white-space:nowrap !important;
}
.de-shell__hint i {
  width:10px !important;
  height:10px !important;
  border-radius:50% !important;
  background:var(--orange) !important;
  box-shadow:0 0 0 5px rgba(224,96,48,.14) !important;
  display:inline-block !important;
}

.de-hub-toolbar { padding:14px !important; background:#fff !important; border-bottom:1px solid var(--border) !important; }
.de-hub-nav { display:flex !important; gap:10px !important; flex-wrap:wrap !important; margin-bottom:12px !important; }
.de-nav-btn,
.de-chip-btn,
.de-btn,
.de-copy-btn {
  appearance:none !important;
  border:1px solid var(--border) !important;
  background:#fff !important;
  color:var(--black) !important;
  padding:12px 16px !important;
  border-radius:999px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  text-decoration:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease !important;
  box-shadow:0 10px 22px rgba(16,16,16,.08) !important;
}
.de-nav-btn:hover,
.de-chip-btn:hover,
.de-btn:hover,
.de-copy-btn:hover { transform:translateY(-1px) !important; box-shadow:0 16px 32px rgba(16,16,16,.12) !important; }
.de-nav-btn.is-active,
.de-chip-btn--primary,
.de-btn {
  background:linear-gradient(90deg, var(--pink), var(--orange)) !important;
  color:#fff !important;
  border-color:rgba(240,0,128,.24) !important;
}
.de-btn--ghost {
  background:#fff !important;
  color:var(--black) !important;
}

.de-hub-searchline {
  display:grid !important;
  grid-template-columns:repeat(12,1fr) !important;
  gap:12px !important;
  align-items:end !important;
}
.de-field { grid-column:span 3 !important; display:block !important; }
.de-field--grow { grid-column:span 4 !important; }
.de-field span {
  display:block !important;
  margin:0 0 7px !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.2px !important;
  color:#4b5563 !important;
  text-transform:uppercase !important;
}
.de-field input,
.de-field select,
.de-form input,
.de-form select,
.de-form textarea,
.de-share textarea {
  width:100% !important;
  border:1px solid var(--border) !important;
  border-radius:14px !important;
  padding:13px 14px !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(16,16,16,.04) !important;
  color:var(--black) !important;
}
.de-field input:focus,
.de-field select:focus,
.de-form input:focus,
.de-form select:focus,
.de-form textarea:focus,
.de-share textarea:focus {
  outline:none !important;
  border-color:rgba(240,0,128,.35) !important;
  box-shadow:0 0 0 4px rgba(240,0,128,.10) !important;
}
.de-hub-actions { grid-column:span 2 !important; display:flex !important; gap:10px !important; flex-wrap:wrap !important; }

.de-hub-results { padding:14px !important; }
.de-hub-state,
.de-hub-section,
.de-row-list { display:grid !important; gap:14px !important; }
.de-hub-rankings-two { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }

.de-hub-summary {
  padding:14px !important;
  box-shadow:var(--shadow-soft) !important;
  position:relative !important;
  overflow:hidden !important;
}
.de-hub-summary::before,
.de-stat::before,
.de-card::before,
.de-hub-rank::before {
  content:"" !important;
  position:absolute !important;
  inset:0 auto auto 0 !important;
  width:100% !important;
  height:8px !important;
  background:linear-gradient(90deg, var(--pink), var(--orange)) !important;
}
.de-hub-summary__head {
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  margin-bottom:14px !important;
}
.de-hub-summary__head h3 { margin:0 0 6px !important; font-size:21px !important; line-height:1.15 !important; }
.de-hub-summary__head p { margin:0 !important; color:var(--muted) !important; }
.de-hub-summary__stats,
.de-stats-grid,
.de-admin-grid { display:grid !important; grid-template-columns:repeat(12,1fr) !important; gap:12px !important; }
.de-hub-summary .de-stat,
.de-stats-grid .de-stat,
.de-admin-grid .de-admin-card { grid-column:span 4 !important; }

.de-stat {
  padding:18px !important;
  box-shadow:var(--shadow-soft) !important;
  position:relative !important;
  overflow:hidden !important;
  min-height:124px !important;
}
.de-stat__label {
  display:block !important;
  font-size:12px !important;
  opacity:.72 !important;
  margin-bottom:12px !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
  letter-spacing:.2px !important;
}
.de-stat__value {
  font-size:26px !important;
  line-height:1.18 !important;
  font-weight:900 !important;
  word-break:break-word !important;
}

.de-section-head { display:flex !important; align-items:center !important; gap:10px !important; padding:2px !important; }
.de-section-head h3 { margin:0 !important; font-size:18px !important; }

.de-hub-rank {
  position:relative !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  gap:18px !important;
  padding:18px 18px 16px !important;
  box-shadow:var(--shadow-soft) !important;
  cursor:pointer !important;
  overflow:hidden !important;
}
.de-hub-rank:hover { transform:translateY(-2px) !important; box-shadow:var(--shadow) !important; }
.de-hub-rank.is-first { background:linear-gradient(90deg, rgba(240,0,128,.08), rgba(224,96,48,.08)) !important; }
.de-hub-rank__left {
  display:flex !important;
  align-items:flex-start !important;
  gap:14px !important;
  min-width:0 !important;
  flex:1 1 auto !important;
}
.de-hub-rank__number {
  width:48px !important;
  height:48px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-weight:900 !important;
  box-shadow:0 8px 18px rgba(16,16,16,.07) !important;
  flex:0 0 auto !important;
}
.de-avatar {
  width:72px !important;
  height:72px !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:34px !important;
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 10px 22px rgba(16,16,16,.07) !important;
  flex:0 0 auto !important;
}
.de-avatar--small { width:58px !important; height:58px !important; font-size:28px !important; }
.de-hub-rank__text { min-width:0 !important; flex:1 1 auto !important; }
.de-hub-rank__text--wide { max-width:760px !important; }
.de-hub-rank__text h3 {
  margin:0 !important;
  font-size:22px !important;
  line-height:1.15 !important;
  word-break:break-word !important;
}
.de-hub-rank__text p {
  margin:7px 0 0 !important;
  color:var(--muted) !important;
  line-height:1.5 !important;
  font-size:14.5px !important;
}
.de-hub-rank__excerpt {
  margin-top:10px !important;
  color:#364152 !important;
  line-height:1.6 !important;
  font-size:14px !important;
}
.de-hub-rank__donors,
.de-hub-meta-pills,
.de-hub-kpis,
.de-hub-tags,
.de-pill-list { display:flex !important; gap:8px !important; flex-wrap:wrap !important; }
.de-hub-rank__donors { margin-top:12px !important; }
.de-hub-rank__right {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:10px !important;
  flex:0 0 auto !important;
  max-width:320px !important;
}
.de-mini-stat {
  min-width:156px !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  background:rgba(240,0,128,.08) !important;
  border:1px solid rgba(240,0,128,.18) !important;
}
.de-mini-stat span {
  display:block !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  color:#5b6470 !important;
  margin-bottom:8px !important;
  letter-spacing:.2px !important;
}
.de-mini-stat strong {
  font-size:18px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  word-break:break-word !important;
}
.de-pill {
  display:inline-flex !important;
  align-items:center !important;
  padding:8px 11px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  font-size:12.5px !important;
  font-weight:800 !important;
  box-shadow:0 8px 18px rgba(16,16,16,.05) !important;
}
.de-pill--more { background:rgba(240,0,128,.08) !important; border-color:rgba(240,0,128,.18) !important; }
.de-pill--empty { color:#6b7280 !important; }

.de-inline-link {
  appearance:none !important;
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  color:var(--pink) !important;
  font-weight:900 !important;
  cursor:pointer !important;
}

.de-collecte { max-width:980px !important; margin:0 auto !important; position:relative !important; z-index:3 !important; }
.de-collecte--inline { padding:0 !important; max-width:none !important; }
.de-hero {
  display:flex !important;
  gap:18px !important;
  align-items:center !important;
  padding:22px !important;
  margin-bottom:16px !important;
  background:var(--surface-accent) !important;
}
.de-kicker {
  font-size:12px !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
  opacity:.72 !important;
  margin-bottom:8px !important;
}
.de-hero__content h2 {
  margin:0 0 10px !important;
  font-size:34px !important;
  line-height:1.08 !important;
  word-break:break-word !important;
}
.de-meta-line { display:flex !important; flex-wrap:wrap !important; gap:8px !important; }
.de-meta-line span {
  font-size:14px !important;
  background:#fff !important;
  padding:8px 11px !important;
  border-radius:999px !important;
  border:1px solid var(--border) !important;
  box-shadow:0 8px 16px rgba(16,16,16,.04) !important;
}
.de-meta-line a {
  text-decoration:none !important;
  color:var(--pink) !important;
  font-weight:900 !important;
}
.de-stats-grid { margin-bottom:16px !important; }
.de-card,
.de-banner {
  padding:18px !important;
  margin-bottom:16px !important;
  position:relative !important;
  overflow:hidden !important;
}
.de-card h3,
.de-banner h3 {
  margin:0 0 12px !important;
  font-size:15px !important;
  line-height:1.25 !important;
  text-transform:uppercase !important;
  letter-spacing:.3px !important;
  font-weight:900 !important;
}
.de-card--soft { background:linear-gradient(180deg, rgba(240,0,128,.06), rgba(224,96,48,.04)) !important; }
.de-banner--promise { background:linear-gradient(90deg, rgba(240,0,128,.11), rgba(224,96,48,.09)) !important; }
.de-form { display:grid !important; gap:10px !important; }
.de-form p { margin:0 !important; }
.de-form--secondary {
  margin-top:14px !important;
  padding-top:14px !important;
  border-top:1px dashed rgba(0,0,0,.14) !important;
}
.de-success { margin:12px 0 0 !important; color:#137333 !important; font-weight:900 !important; }
.de-list { display:grid !important; gap:10px !important; }
.de-list__item {
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid var(--border) !important;
  text-decoration:none !important;
  color:inherit !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(16,16,16,.05) !important;
}
.de-share__grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:12px !important; }
.de-share__item strong { display:block !important; margin-bottom:8px !important; }
.de-share textarea { min-height:120px !important; }
.de-grid,
.de-two-cols { display:grid !important; grid-template-columns:1fr !important; gap:12px !important; }

.de-modal[hidden] { display:none !important; }
.de-modal {
  position:fixed !important;
  inset:0 !important;
  z-index:2147483646 !important;
}
.de-modal__backdrop {
  position:fixed !important;
  inset:0 !important;
  background:rgba(16,16,16,.70) !important;
  backdrop-filter:blur(6px) !important;
  z-index:2147483646 !important;
}
.de-modal__dialog {
  position:fixed !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  z-index:2147483647 !important;
  width:min(1080px, calc(100vw - 24px)) !important;
  max-height:calc(100vh - 24px) !important;
  overflow:auto !important;
  padding:14px !important;
  border-radius:22px !important;
  background:#f8f8f8 !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.38) !important;
}
.de-modal__close {
  position:sticky !important;
  top:0 !important;
  float:right !important;
  margin-left:auto !important;
  margin-bottom:10px !important;
  width:46px !important;
  height:46px !important;
  border-radius:999px !important;
  border:1px solid var(--border) !important;
  background:#fff !important;
  cursor:pointer !important;
  font-size:24px !important;
  line-height:1 !important;
  z-index:3 !important;
  box-shadow:0 10px 22px rgba(16,16,16,.10) !important;
}
.de-modal__body { clear:both !important; }
html.de-modal-open,
body.de-modal-open { overflow:hidden !important; }

.de-copy-btn { margin-top:8px !important; }
.defi-enfance-admin .de-admin-grid { margin:18px 0 !important; }
.de-admin-card { padding:18px !important; text-align:center !important; }
.de-admin-card__value { font-size:28px !important; font-weight:900 !important; }
.de-admin-card__label { margin-top:6px !important; opacity:.7 !important; }
.de-admin-panel { padding:18px !important; margin:18px 0 !important; max-width:960px !important; }
.de-shortcode-list { display:grid !important; grid-template-columns:minmax(140px,220px) 1fr !important; gap:12px !important; align-items:center !important; }
.de-hub.is-loading .de-hub-results { opacity:.55 !important; pointer-events:none !important; }

@media (max-width:1100px) {
  .de-hub-rank {
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  .de-hub-rank__right {
    width:100% !important;
    max-width:none !important;
    align-items:flex-start !important;
  }
  .de-hub-kpis { width:100% !important; }
  .de-mini-stat { min-width:0 !important; flex:1 1 180px !important; }
}
@media (max-width:980px) {
  .de-hub-rankings-two { grid-template-columns:1fr !important; }
  .de-field { grid-column:span 6 !important; }
  .de-field--grow { grid-column:span 12 !important; }
  .de-hub-actions { grid-column:span 12 !important; }
  .de-hub-summary .de-stat,
  .de-stats-grid .de-stat,
  .de-admin-grid .de-admin-card { grid-column:span 6 !important; }
  .de-share__grid { grid-template-columns:1fr !important; }
}
@media (max-width:700px) {
  .de-shell__top { padding:16px !important; }
  .de-shell__title { font-size:17px !important; }
  .de-shell__hint { white-space:normal !important; }
  .de-field,
  .de-field--grow,
  .de-hub-actions { grid-column:span 12 !important; }
  .de-hub-nav { display:grid !important; grid-template-columns:1fr !important; gap:8px !important; }
  .de-nav-btn { width:100% !important; }
  .de-hero { padding:18px !important; align-items:flex-start !important; flex-direction:column !important; }
  .de-hero__content h2 { font-size:26px !important; }
  .de-hub-summary .de-stat,
  .de-stats-grid .de-stat,
  .de-admin-grid .de-admin-card { grid-column:span 12 !important; }
  .de-shortcode-list { grid-template-columns:1fr !important; }
  .de-hub-rank__text h3 { font-size:19px !important; }
}


/* V5 fixes */
.de-shell__title,
.de-shell__title *,
.de-hub-summary__head h3,
.de-hub-summary__head h3 *,
.de-section-head h3,
.de-section-head h3 *,
.de-hub-rank__text h3,
.de-hub-rank__text h3 *,
.de-hero__content h2,
.de-hero__content h2 *,
.de-card h3,
.de-card h3 *,
.de-banner h3,
.de-banner h3 *,
.de-modal__body h2,
.de-modal__body h2 *,
.de-modal__body h3,
.de-modal__body h3 * {
  color:var(--black) !important;
  -webkit-text-fill-color:var(--black) !important;
  text-shadow:none !important;
}

.de-hub-rankings-two,
.de-hub-rankings-two > .de-hub-section,
.de-row-list,
.de-hub-rank,
.de-hub-rank__left,
.de-hub-rank__text,
.de-hub-rank__right {
  min-width:0 !important;
}

.de-hub-rank {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
}
.de-hub-rank__left {
  display:grid !important;
  grid-template-columns:auto auto minmax(0,1fr) !important;
  align-items:start !important;
}
.de-hub-rank__text,
.de-hub-rank__text--wide {
  width:100% !important;
  max-width:none !important;
}
.de-hub-rank__text h3,
.de-hub-rank__text p,
.de-hub-rank__excerpt,
.de-hub-rank__donors,
.de-pill,
.de-mini-stat strong,
.de-stat__value,
.de-list__item span {
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.de-hub-rank__right {
  justify-self:end !important;
  align-self:start !important;
}
.de-row-list {
  align-content:start !important;
}

.de-nav-btn:hover,
.de-nav-btn:focus-visible,
.de-chip-btn:hover,
.de-chip-btn:focus-visible,
.de-btn:hover,
.de-btn:focus-visible,
.de-copy-btn:hover,
.de-copy-btn:focus-visible {
  outline:none !important;
}
.de-nav-btn:hover,
.de-nav-btn:focus-visible {
  background:#fff !important;
  background-image:none !important;
  color:var(--black) !important;
  border-color:rgba(16,16,16,.16) !important;
}
.de-nav-btn.is-active,
.de-nav-btn.is-active:hover,
.de-nav-btn.is-active:focus-visible,
.de-chip-btn--primary,
.de-chip-btn--primary:hover,
.de-chip-btn--primary:focus-visible,
.de-btn,
.de-btn:hover,
.de-btn:focus-visible {
  background:linear-gradient(90deg, var(--pink), var(--orange)) !important;
  background-image:linear-gradient(90deg, var(--pink), var(--orange)) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(240,0,128,.24) !important;
}
.de-btn--ghost,
.de-btn--ghost:hover,
.de-btn--ghost:focus-visible {
  background:#fff !important;
  background-image:none !important;
  color:var(--black) !important;
  -webkit-text-fill-color:var(--black) !important;
}

button.de-modal__close,
.de-modal__close {
  position:absolute !important;
  top:14px !important;
  right:14px !important;
  left:auto !important;
  float:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:52px !important;
  height:52px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(16,16,16,.12) !important;
  background:#fff !important;
  background-image:none !important;
  color:var(--black) !important;
  -webkit-text-fill-color:var(--black) !important;
  font-size:32px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 10px 22px rgba(16,16,16,.10) !important;
  z-index:5 !important;
}
button.de-modal__close:hover,
.de-modal__close:hover,
button.de-modal__close:focus-visible,
.de-modal__close:focus-visible {
  background:rgba(240,0,128,.08) !important;
  background-image:none !important;
  color:var(--black) !important;
}
.de-modal__dialog {
  padding-top:76px !important;
}

.de-hub-rank__number,
.de-avatar,
.de-pill,
.de-mini-stat,
.de-stat,
.de-card,
.de-list__item {
  backface-visibility:hidden !important;
}

@media (max-width:1100px) {
  .de-hub-rank {
    grid-template-columns:1fr !important;
  }
  .de-hub-rank__left {
    grid-template-columns:auto auto minmax(0,1fr) !important;
  }
  .de-hub-rank__right {
    justify-self:stretch !important;
    width:100% !important;
    max-width:none !important;
    align-items:flex-start !important;
  }
}
@media (max-width:700px) {
  .de-hub-rank__left {
    grid-template-columns:auto minmax(0,1fr) !important;
  }
  .de-hub-rank__number {
    grid-row:span 2 !important;
  }
  .de-hub-rank__text h3 {
    font-size:20px !important;
  }
}



.de-hub-subnav {
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin:0 0 12px !important;
}
.de-hub-subnav.is-hidden {
  display:none !important;
}
.de-subnav-btn {
  appearance:none !important;
  border:1px solid var(--border) !important;
  background:#fff !important;
  color:var(--black) !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  box-shadow:0 10px 22px rgba(16,16,16,.08) !important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease !important;
}
.de-subnav-btn:hover,
.de-subnav-btn:focus-visible {
  outline:none !important;
  transform:translateY(-1px) !important;
  box-shadow:0 16px 32px rgba(16,16,16,.12) !important;
  background:#fff !important;
  background-image:none !important;
  color:var(--black) !important;
  border-color:rgba(16,16,16,.16) !important;
}
.de-subnav-btn.is-active,
.de-subnav-btn.is-active:hover,
.de-subnav-btn.is-active:focus-visible {
  background:linear-gradient(90deg, var(--pink), var(--orange)) !important;
  background-image:linear-gradient(90deg, var(--pink), var(--orange)) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:rgba(240,0,128,.24) !important;
}
.de-hub-rankings-two {
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
}


.de-log-console{background:#101010!important;color:#e5e7eb!important;border-radius:14px!important;padding:14px!important;max-height:420px!important;overflow:auto!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;font-size:12px!important;line-height:1.55!important;}
.de-log-console__line{padding:6px 0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;white-space:pre-wrap!important;word-break:break-word!important;}
.de-log-console__line:last-child{border-bottom:0!important;}
.de-log-console__meta{color:#fda4af!important;font-weight:700!important;margin-right:6px!important;}


.de-hub-rank--compact { align-items:center !important; padding:14px 16px !important; }
.de-hub-rank--compact .de-hub-rank__left { align-items:center !important; gap:12px !important; }
.de-hub-rank--compact .de-hub-rank__text--compact { display:flex !important; align-items:center !important; gap:10px !important; flex-wrap:wrap !important; }
.de-hub-rank--compact .de-hub-rank__text--compact h3 { font-size:20px !important; margin:0 !important; }
.de-hub-rank--compact .de-hub-rank__text--compact p { margin:0 !important; font-size:14px !important; color:var(--muted) !important; }
.de-hub-rank__right--compact { flex-direction:row !important; align-items:center !important; gap:12px !important; max-width:none !important; }
.de-mini-stat--compact { min-width:190px !important; }
@media (max-width: 980px){ .de-hub-rank--compact { align-items:flex-start !important; } .de-hub-rank__right--compact { width:100% !important; justify-content:space-between !important; } }
@media (max-width: 700px){ .de-hub-rank--compact .de-hub-rank__text--compact { display:block !important; } .de-hub-rank__right--compact { flex-direction:column !important; align-items:flex-start !important; width:auto !important; } .de-mini-stat--compact { min-width:0 !important; width:auto !important; } }


/* V10 mobile/modal fixes */
.de-modal { z-index: 2147483646 !important; }
.de-modal__backdrop { z-index: 2147483646 !important; }
.de-modal__dialog {
  position: relative !important;
  z-index: 2147483647 !important;
  width: min(1000px, calc(100vw - 20px)) !important;
  max-height: calc(100vh - max(18px, env(safe-area-inset-top)) - 18px) !important;
  margin: max(10px, env(safe-area-inset-top)) auto 10px !important;
  overflow: auto !important;
}
button.de-modal__close,
.de-modal__close {
  position: fixed !important;
  top: max(12px, env(safe-area-inset-top)) !important;
  right: max(12px, env(safe-area-inset-right)) !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 34px !important;
  line-height: 1 !important;
  background: linear-gradient(180deg, var(--pink), var(--orange)) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 16px 36px rgba(16,16,16,.24) !important;
  z-index: 2147483647 !important;
}
.de-hub-rank--compact {
  align-items: center !important;
}
.de-hub-rank--compact .de-hub-rank__left {
  align-items: center !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact h3 {
  font-size: 20px !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact p {
  margin: 0 !important;
  font-size: 14px !important;
  color: var(--muted) !important;
}
@media (max-width: 767px) {
  .de-modal__dialog {
    width: calc(100vw - 10px) !important;
    margin: max(6px, env(safe-area-inset-top)) auto 6px !important;
    border-radius: 18px !important;
    max-height: calc(100vh - max(8px, env(safe-area-inset-top)) - 8px) !important;
  }
  .de-hub-rank,
  .de-hub-rank--compact {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .de-hub-rank__right,
  .de-hub-rank__right--compact {
    width: 100% !important;
    max-width: none !important;
    align-items: stretch !important;
  }
}


/* V16 encouragements + alignements + alias events */
.de-hub-rank--compact .de-hub-rank__left{
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) !important;
  align-items:center !important;
  gap:14px !important;
}
.de-hub-rank--compact .de-hub-rank__number{
  width:58px !important;
  min-width:58px !important;
  height:58px !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:4px !important;
  min-width:0 !important;
}
.de-hub-rank--compact .de-hub-rank__name{
  display:block !important;
  min-width:0 !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact h3{
  display:block !important;
  min-width:0 !important;
  white-space:normal !important;
}
.de-hub-rank--compact .de-hub-rank__text--compact p{
  display:block !important;
  min-width:0 !important;
}
.de-list__item{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
}
.de-list__item span:first-child{
  min-width:0 !important;
  white-space:normal !important;
  text-align:left !important;
}
.de-list__item span:last-child{
  justify-self:end !important;
}
.de-cheer-section{
  overflow:hidden !important;
}
.de-carousel{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:10px !important;
  align-items:center !important;
}
.de-carousel__track{
  display:flex !important;
  gap:12px !important;
  overflow:auto !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  padding:4px 2px 8px !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:thin !important;
}
.de-carousel__track::-webkit-scrollbar{
  height:8px !important;
}
.de-carousel__track::-webkit-scrollbar-thumb{
  background:rgba(240,0,128,.28) !important;
  border-radius:999px !important;
}
.de-carousel__nav{
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  border:1px solid rgba(16,16,16,.12) !important;
  background:#fff !important;
  color:#101010 !important;
  font-size:24px !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 10px 24px rgba(16,16,16,.08) !important;
  cursor:pointer !important;
}
.de-carousel__nav:hover,
.de-carousel__nav:focus-visible{
  background:linear-gradient(90deg, rgba(240,0,128,.12), rgba(224,96,48,.12)) !important;
  color:#101010 !important;
  border-color:rgba(240,0,128,.22) !important;
}
.de-cheer-card{
  min-width:min(300px, 78vw) !important;
  max-width:340px !important;
  flex:0 0 auto !important;
  scroll-snap-align:start !important;
  background:linear-gradient(180deg, rgba(240,0,128,.08), rgba(224,96,48,.06)) !important;
  border:1px solid rgba(16,16,16,.10) !important;
  border-radius:16px !important;
  box-shadow:0 12px 26px rgba(16,16,16,.08) !important;
  padding:16px !important;
}
.de-cheer-card__name{
  display:block !important;
  margin:0 0 8px !important;
  font-size:15px !important;
  font-weight:900 !important;
  color:#101010 !important;
}
.de-cheer-card__message{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.7 !important;
  color:#364152 !important;
}
@media (max-width:700px){
  .de-carousel{
    grid-template-columns:1fr !important;
  }
  .de-carousel__nav{
    display:none !important;
  }
  .de-cheer-card{
    min-width:82vw !important;
  }
}

/* V17.13 general ranking + association cards */
.de-hub-filter-group {
  display:grid !important;
  gap:10px !important;
  margin:0 0 16px !important;
}
.de-hub-filter-label {
  display:block !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.2px !important;
  text-transform:uppercase !important;
  color:#4b5563 !important;
}
.de-hub-filter-group--association-cats.is-hidden {
  display:none !important;
}
.de-hub-nav--categories .de-nav-btn {
  font-size:13px !important;
  padding:10px 14px !important;
}
.de-hub-status {
  min-height:20px !important;
  margin-top:10px !important;
  font-size:13px !important;
  font-weight:700 !important;
  color:#4b5563 !important;
}
.de-hub-status.is-active {
  display:block !important;
}
.de-hub-status.is-error {
  color:#b42318 !important;
}
.de-copy-feedback {
  display:inline-block !important;
  min-height:18px !important;
  margin-left:8px !important;
  font-size:12px !important;
  font-weight:700 !important;
  color:#4b5563 !important;
}
.de-copy-btn.is-error {
  background:#fff !important;
  color:#b42318 !important;
  border-color:rgba(180,35,24,.25) !important;
}
.de-pill--subtle {
  background:#fff !important;
  color:var(--black) !important;
  border:1px solid var(--border) !important;
  box-shadow:none !important;
}
.de-hub-rank__meta-tags,
.de-hero__tags {
  display:flex !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-top:8px !important;
}
.de-hero__summary {
  margin:10px 0 0 !important;
  max-width:900px !important;
  color:#4b5563 !important;
  line-height:1.6 !important;
}
.de-hub-summary__stats--four .de-stat {
  grid-column:span 3 !important;
}
.de-hub-rank__desc {
  margin:4px 0 0 !important;
  color:#4b5563 !important;
  line-height:1.55 !important;
}
.de-hub-rank--association {
  grid-template-columns:minmax(0,1fr) auto !important;
}
.de-hub-rank__right--association {
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
}
.de-hub-rank__logo-wrap {
  width:72px !important;
  height:72px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  border:1px solid var(--border) !important;
  background:#fff !important;
  box-shadow:0 10px 22px rgba(16,16,16,.08) !important;
  flex:0 0 72px !important;
}
.de-hub-rank__logo {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
  background:#fff !important;
}
.de-hub-rank__actions {
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
@media (max-width: 980px) {
  .de-hub-summary__stats--four .de-stat { grid-column:span 6 !important; }
}
@media (max-width: 700px) {
  .de-hub-summary__stats--four .de-stat { grid-column:span 12 !important; }
  .de-hub-rank__right--association { align-items:flex-start !important; }
  .de-hub-rank__logo-wrap { width:60px !important; height:60px !important; flex-basis:60px !important; }
}

.de-hub-rank__left--association {
  align-items:flex-start !important;
}
.de-hub-rank__logo-wrap--left {
  margin-top:2px !important;
}
.de-hub-rank--association .de-hub-rank__right--association {
  align-items:flex-end !important;
}
.de-hub-rank--association .de-hub-rank__meta-tags--inline {
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  white-space:nowrap !important;
  scrollbar-width:thin !important;
  max-width:100% !important;
  padding-bottom:2px !important;
}
.de-hub-rank--association .de-hub-rank__meta-tags--inline .de-pill {
  flex:0 0 auto !important;
}
@media (max-width: 700px) {
  .de-hub-rank--association .de-hub-rank__left {
    gap:10px !important;
  }
  .de-hub-rank--association .de-hub-rank__logo-wrap--left {
    width:56px !important;
    height:56px !important;
    flex-basis:56px !important;
  }
  .de-hub-rank--association .de-hub-rank__right--association {
    align-items:flex-start !important;
  }
}


/* 0.17.16 — fix association card layout */
.de-hub-rank--association {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:24px !important;
}
.de-hub-rank--association .de-hub-rank__left--association {
  min-width:0 !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:auto auto minmax(280px,1fr) !important;
  align-items:start !important;
  gap:16px !important;
}
.de-hub-rank--association .de-hub-rank__text--compact {
  min-width:0 !important;
  width:100% !important;
  display:block !important;
}
.de-hub-rank--association .de-hub-rank__name {
  display:block !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}
.de-hub-rank--association .de-hub-rank__desc {
  max-width:720px !important;
}
.de-hub-rank--association .de-hub-rank__right--association {
  align-items:flex-end !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  max-width:700px !important;
}
.de-hub-rank--association .de-hub-rank__actions {
  justify-content:flex-end !important;
}
.de-hub-rank--association .de-mini-stat--compact {
  min-width:180px !important;
}
@media (max-width: 1180px) {
  .de-hub-rank--association {
    grid-template-columns:1fr !important;
  }
  .de-hub-rank--association .de-hub-rank__right--association {
    align-items:flex-start !important;
    max-width:none !important;
  }
  .de-hub-rank--association .de-hub-rank__actions {
    justify-content:flex-start !important;
  }
}
@media (max-width: 700px) {
  .de-hub-rank--association .de-hub-rank__left--association {
    grid-template-columns:auto auto minmax(0,1fr) !important;
    gap:12px !important;
  }
  .de-hub-rank--association .de-hub-rank__right--association {
    width:100% !important;
  }
}


/* 0.17.17 — association card layout fix */
.de-hub-rank--association{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px) !important;
  align-items:center !important;
  gap:24px !important;
}
.de-hub-rank--association .de-hub-rank__left--association{
  display:grid !important;
  grid-template-columns:auto auto minmax(0,1fr) !important;
  align-items:start !important;
  gap:18px !important;
  width:100% !important;
  min-width:0 !important;
}
.de-hub-rank--association .de-hub-rank__number,
.de-hub-rank--association .de-hub-rank__logo-wrap--left{
  align-self:start !important;
}
.de-hub-rank--association .de-hub-rank__text--compact{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
}
.de-hub-rank--association .de-hub-rank__text--compact h3{
  width:100% !important;
  margin:0 !important;
}
.de-hub-rank--association .de-hub-rank__name{
  display:block !important;
  width:100% !important;
  line-height:1.1 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}
.de-hub-rank--association .de-hub-rank__desc{
  width:100% !important;
  max-width:680px !important;
  margin:0 !important;
}
.de-hub-rank--association .de-hub-rank__text--compact > p{
  width:100% !important;
  margin:0 !important;
}
.de-hub-rank--association .de-hub-rank__meta-tags--inline{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  white-space:nowrap !important;
  padding-bottom:3px !important;
}
.de-hub-rank--association .de-hub-rank__meta-tags--inline .de-pill{
  flex:0 0 auto !important;
  max-width:none !important;
}
.de-hub-rank--association .de-hub-rank__right--association{
  display:grid !important;
  grid-template-columns:1fr !important;
  justify-items:end !important;
  align-content:center !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  max-width:420px !important;
}
.de-hub-rank--association .de-mini-stat--compact{
  width:100% !important;
  min-width:0 !important;
  max-width:270px !important;
}
.de-hub-rank--association .de-hub-rank__actions{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  gap:10px !important;
  width:100% !important;
}
.de-hub-rank--association .de-hub-rank__actions .de-chip-btn{
  flex:0 1 auto !important;
  max-width:100% !important;
}
@media (max-width: 1320px){
  .de-hub-rank--association{
    grid-template-columns:minmax(0,1fr) minmax(260px,360px) !important;
  }
}
@media (max-width: 1120px){
  .de-hub-rank--association{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  .de-hub-rank--association .de-hub-rank__right--association{
    justify-items:start !important;
    max-width:none !important;
  }
  .de-hub-rank--association .de-hub-rank__actions{
    justify-content:flex-start !important;
  }
}
@media (max-width: 700px){
  .de-hub-rank--association .de-hub-rank__left--association{
    grid-template-columns:auto minmax(0,1fr) !important;
  }
  .de-hub-rank--association .de-hub-rank__logo-wrap--left{
    grid-column:2 !important;
    justify-self:start !important;
  }
  .de-hub-rank--association .de-hub-rank__text--compact{
    grid-column:1 / -1 !important;
  }
  .de-hub-rank--association .de-mini-stat--compact{
    max-width:100% !important;
  }
}


/* Partenaires hub */
.de-partners-hub{
  display:flex !important;
  flex-direction:column !important;
  gap:22px !important;
}
.de-partners-toolbar{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:16px !important;
}
.de-partners-cats{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}
.de-partners-search{
  min-width:280px !important;
  max-width:420px !important;
}
.de-partners-search input{
  color:#111 !important;
}
.de-partners-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(130px,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.de-partner-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  min-height:260px !important;
  padding:16px 12px !important;
  cursor:pointer !important;
  border:2px solid rgba(0,0,0,.06) !important;
  background:#fff !important;
}
.de-partner-card.is-hidden,
.de-partner-card[hidden],
.de-card.is-hidden,
.de-card[hidden]{
  display:none !important;
}
.de-partner-card__logo,
.de-partner-modal__logo{
  width:96px !important;
  height:96px !important;
  border-radius:22px !important;
  border:2px solid rgba(0,0,0,.08) !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  margin:0 auto 14px !important;
  flex:0 0 auto !important;
}
.de-partner-card__logo img,
.de-partner-modal__logo img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
.de-partner-card__logo span,
.de-partner-modal__logo span{
  font-size:18px !important;
  font-weight:800 !important;
  color:#555 !important;
}
.de-partner-card h3{
  margin:0 0 10px !important;
  font-size:18px !important;
  line-height:1.22 !important;
  color:#111 !important;
  font-family:inherit !important;
  font-weight:800 !important;
  word-break:break-word !important;
  overflow-wrap:anywhere !important;
}
.de-partner-card__category{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 0 12px !important;
  padding:7px 12px !important;
  border-radius:999px !important;
  border:2px solid rgba(240,0,128,.16) !important;
  background:rgba(240,0,128,.06) !important;
  color:#666 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  white-space:normal !important;
}
.de-partner-card__cta{
  margin-top:auto !important;
  color:var(--de-secondary,#E06030) !important;
  font-weight:800 !important;
  font-size:15px !important;
}
.de-partner-modal-card{
  padding:24px !important;
  background:#fff !important;
}
.de-partner-modal__top{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  gap:22px !important;
  align-items:center !important;
  margin-bottom:20px !important;
}
.de-partner-modal__logo{margin:0 !important;}
.de-partner-modal__head h3{
  margin:0 0 10px !important;
  color:#111 !important;
  font-family:inherit !important;
  font-weight:800 !important;
}
.de-partner-modal__head p{
  margin:10px 0 0 !important;
  color:#555 !important;
}
.de-partner-modal__quote{
  margin:0 0 12px !important;
  padding:18px !important;
  border-radius:18px !important;
  background:rgba(240,0,128,.05) !important;
  border-left:4px solid var(--de-primary,#F00080) !important;
  font-size:18px !important;
  line-height:1.55 !important;
  color:#111 !important;
}
.de-partner-modal__author{
  margin:0 !important;
  color:#444 !important;
}
.de-partner-modal__author strong{
  color:#111 !important;
}
@media (max-width: 640px){
  .de-partners-search{min-width:100% !important;max-width:none !important;}
  .de-partner-modal__top{grid-template-columns:1fr !important;text-align:center !important;}
  .de-partner-modal__logo{margin:0 auto !important;}
}



/* V21 partners hub visual fixes */
.de-shell.de-partners-hub{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.de-partners-hub .de-partners-toolbar,
.de-partners-hub .de-partners-grid,
.de-partners-hub [data-partner-empty]{
  margin:0 !important;
}
.de-partners-hub .de-partners-toolbar{
  padding:0 0 10px 0 !important;
  background:transparent !important;
  border:0 !important;
}
.de-partners-hub .de-partners-search{
  max-width:560px !important;
}
.de-partners-hub .de-partners-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.de-partners-hub .de-partner-card{
  min-height:0 !important;
  padding:20px 16px 18px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.10) !important;
  box-shadow:0 10px 24px rgba(16,16,16,.08) !important;
  border-radius:22px !important;
  text-align:center !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  overflow:hidden !important;
}
.de-partners-hub .de-partner-card::before{
  content:'' !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:6px !important;
  background:linear-gradient(90deg,var(--pink),var(--orange)) !important;
}
.de-partners-hub .de-partner-card{
  position:relative !important;
}
.de-partners-hub .de-partner-card__logo{
  width:118px !important;
  height:118px !important;
  margin:8px auto 4px !important;
  border-radius:24px !important;
  background:#fff !important;
}
.de-partners-hub .de-partner-card h3,
.de-partners-hub .de-partner-card h3 *,
.de-partner-modal-card h3,
.de-partner-modal-card h3 *{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.de-partners-hub .de-partner-card h3{
  margin:0 !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  min-height:44px !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
.de-partners-hub .de-partner-card__category{
  margin:0 !important;
  white-space:nowrap !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:#6a6a6a !important;
}
.de-partners-hub .de-partner-card__cta{
  margin-top:2px !important;
  color:var(--orange) !important;
  font-size:15px !important;
  font-weight:900 !important;
}
.de-partners-hub [data-partner-empty]{
  margin-top:6px !important;
  padding:18px 20px !important;
  border-radius:18px !important;
  background:#fff !important;
}
.de-partner-modal-card{
  background:#fff !important;
  border:0 !important;
  box-shadow:none !important;
  padding:18px !important;
}
.de-partner-modal__top{
  grid-template-columns:140px minmax(0,1fr) !important;
  gap:28px !important;
  align-items:center !important;
}
.de-partner-modal__logo{
  width:140px !important;
  height:140px !important;
  border-radius:28px !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(16,16,16,.06) !important;
}
.de-partner-modal__head h3{
  margin:0 0 14px !important;
  font-size:56px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
.de-partner-modal__head p,
.de-partner-modal__head p *{
  color:#555 !important;
  -webkit-text-fill-color:#555 !important;
  font-size:16px !important;
}
.de-partner-modal__quote{
  margin:10px 0 16px !important;
  background:#fbf0f6 !important;
  border:1px solid rgba(240,0,128,.10) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border-left:6px solid var(--pink) !important;
  font-size:22px !important;
  line-height:1.45 !important;
}
.de-partner-modal__author,
.de-partner-modal__author *{
  color:#444 !important;
  -webkit-text-fill-color:#444 !important;
  font-size:16px !important;
}
.de-partner-modal__author strong,
.de-partner-modal__author strong *{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
button.de-modal__close,
.de-modal__close{
  background:#fff !important;
  background-image:none !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border:1px solid rgba(16,16,16,.12) !important;
  box-shadow:0 12px 30px rgba(16,16,16,.16) !important;
}
button.de-modal__close:hover,
.de-modal__close:hover,
button.de-modal__close:focus-visible,
.de-modal__close:focus-visible{
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
@media (max-width:1200px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .de-partner-modal__head h3{font-size:48px !important;}
}
@media (max-width:900px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .de-partner-modal__top{grid-template-columns:1fr !important;text-align:center !important;}
  .de-partner-modal__logo{margin:0 auto !important;}
  .de-partner-modal__head h3{font-size:38px !important;}
}
@media (max-width:640px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important;}
  .de-partners-hub .de-partner-card{padding:16px 10px 14px !important; border-radius:18px !important;}
  .de-partners-hub .de-partner-card__logo{width:94px !important;height:94px !important;}
  .de-partners-hub .de-partner-card h3{font-size:16px !important; min-height:38px !important;}
  .de-partner-modal__head h3{font-size:30px !important;}
  .de-partner-modal__quote{font-size:18px !important;}
}


.de-hero__actions{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:10px !important;
  margin-top:14px !important;
  width:min(100%, 420px) !important;
  max-width:100% !important;
}
.de-hero__actions .de-share-link-wrap,
.de-hero__actions .de-hub-return-wrap{
  display:block !important;
  width:100% !important;
}
.de-hero__actions .de-btn,
.de-hero__actions .de-copy-btn,
.de-hero__actions .de-copy-btn--hero,
.de-hero__actions .de-share-link-wrap .de-copy-btn,
.de-hero__actions .de-hub-return-btn{
  display:flex !important;
  width:100% !important;
  min-width:0 !important;
  justify-content:center !important;
}
.de-hero__actions .de-copy-feedback{
  display:block !important;
  margin-top:6px !important;
  text-align:center !important;
}
@media (max-width: 767px){
  .de-hero__actions{
    width:100% !important;
  }
}
.de-cheer-card__target{
  margin-top:6px !important;
  font-size:13px !important;
  font-weight:800 !important;
  color:var(--pink) !important;
}

/* Classement général simplifié des équipes */
.de-simple-ranking,
.de-simple-ranking *{
  box-sizing:border-box !important;
}
.de-simple-ranking{
  --de-primary:#F00080 !important;
  --de-secondary:#E06030 !important;
  --de-black:#101010 !important;
  --de-muted:#667085 !important;
  width:100% !important;
  max-width:1100px !important;
  margin:0 auto !important;
  padding:28px !important;
  color:var(--de-black) !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.10) !important;
  border-radius:28px !important;
  box-shadow:0 18px 45px rgba(16,16,16,.08) !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Arial,sans-serif !important;
}
.de-simple-ranking__head{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  margin:0 0 22px !important;
}
.de-simple-ranking__head .de-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:48px !important;
  padding:12px 20px !important;
  border-radius:999px !important;
  color:#fff !important;
  background:linear-gradient(90deg,var(--de-primary),var(--de-secondary)) !important;
  border:0 !important;
  box-shadow:0 14px 30px rgba(240,0,128,.18) !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
  line-height:1 !important;
}
.de-simple-ranking__head h3{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--de-black) !important;
  font-size:clamp(28px,4vw,52px) !important;
  line-height:.95 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:-.02em !important;
}
.de-simple-ranking__list{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.de-simple-ranking__row{
  position:relative !important;
  display:grid !important;
  grid-template-columns:74px 58px minmax(0,1fr) max-content 48px !important;
  align-items:center !important;
  gap:16px !important;
  width:100% !important;
  min-height:92px !important;
  padding:16px 18px !important;
  border:1px solid rgba(16,16,16,.10) !important;
  border-radius:22px !important;
  background:#fff !important;
  color:var(--de-black) !important;
  box-shadow:0 10px 24px rgba(16,16,16,.055) !important;
  text-decoration:none !important;
  overflow:hidden !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.de-simple-ranking__row::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  right:0 !important;
  height:6px !important;
  background:linear-gradient(90deg,var(--de-primary),var(--de-secondary)) !important;
}
.de-simple-ranking__row:hover,
.de-simple-ranking__row:focus{
  transform:translateY(-2px) !important;
  border-color:rgba(240,0,128,.28) !important;
  box-shadow:0 18px 38px rgba(16,16,16,.10) !important;
  outline:none !important;
  text-decoration:none !important;
}
.de-simple-ranking__rank{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.12) !important;
  color:var(--de-black) !important;
  font-weight:900 !important;
  font-size:20px !important;
  line-height:1 !important;
  box-shadow:0 8px 18px rgba(16,16,16,.06) !important;
  text-align:center !important;
}
.de-simple-ranking__emoji{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#fff,rgba(240,0,128,.045)) !important;
  border:1px solid rgba(16,16,16,.09) !important;
  font-size:28px !important;
  line-height:1 !important;
  text-align:center !important;
}
.de-simple-ranking__name{
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--de-black) !important;
  font-weight:900 !important;
  font-size:clamp(18px,2.2vw,26px) !important;
  line-height:1.03 !important;
  text-transform:uppercase !important;
  letter-spacing:-.01em !important;
}
.de-simple-ranking__name small{
  display:block !important;
  margin-top:7px !important;
  color:var(--de-muted) !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  white-space:normal !important;
}
.de-simple-ranking__amount{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:128px !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:rgba(240,0,128,.07) !important;
  border:1px solid rgba(240,0,128,.16) !important;
  color:var(--de-black) !important;
  white-space:nowrap !important;
  text-align:center !important;
  font-size:22px !important;
  font-weight:900 !important;
  line-height:1 !important;
}
.de-simple-ranking__trend{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  height:40px !important;
  border-radius:50% !important;
  font-size:20px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  white-space:nowrap !important;
}
.de-simple-ranking__trend--up{
  color:#087443 !important;
  background:rgba(18,183,106,.12) !important;
  border:1px solid rgba(18,183,106,.25) !important;
}
.de-simple-ranking__trend--down{
  color:#B42318 !important;
  background:rgba(240,68,56,.12) !important;
  border:1px solid rgba(240,68,56,.25) !important;
}
.de-simple-ranking__button{
  display:flex !important;
  width:100% !important;
  margin:20px 0 0 !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:58px !important;
  padding:16px 22px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--de-primary),var(--de-secondary)) !important;
  color:#fff !important;
  border:0 !important;
  text-align:center !important;
  text-decoration:none !important;
  font-weight:900 !important;
  font-size:18px !important;
  box-shadow:0 16px 36px rgba(240,0,128,.20) !important;
}
.de-simple-ranking__button:hover,
.de-simple-ranking__button:focus{
  color:#fff !important;
  text-decoration:none !important;
  transform:translateY(-1px) !important;
}
@media (max-width:760px){
  .de-simple-ranking{padding:18px !important;border-radius:22px !important;}
  .de-simple-ranking__head{gap:12px !important;margin-bottom:16px !important;}
  .de-simple-ranking__head .de-badge{min-height:42px !important;padding:10px 16px !important;font-size:13px !important;}
  .de-simple-ranking__row{
    grid-template-columns:54px 44px minmax(0,1fr) !important;
    gap:10px !important;
    min-height:0 !important;
    padding:14px !important;
    border-radius:20px !important;
  }
  .de-simple-ranking__rank{width:46px !important;height:46px !important;font-size:16px !important;}
  .de-simple-ranking__emoji{width:40px !important;height:40px !important;border-radius:14px !important;font-size:23px !important;}
  .de-simple-ranking__name{font-size:18px !important;}
  .de-simple-ranking__amount{
    grid-column:3 !important;
    justify-self:start !important;
    min-width:0 !important;
    padding:10px 12px !important;
    font-size:18px !important;
  }
  .de-simple-ranking__trend{
    grid-column:1 / span 2 !important;
    width:34px !important;
    height:34px !important;
    font-size:17px !important;
    justify-self:start !important;
  }
  .de-simple-ranking__button{min-height:52px !important;font-size:16px !important;}
}


/* Correctifs 0.17.33 - shortcode classement simplifié */
.de-simple-ranking .de-simple-ranking__head{
  display:block !important;
  margin:0 0 24px !important;
  padding:0 !important;
}
.de-simple-ranking .de-simple-ranking__head .de-badge{
  display:none !important;
}
.de-simple-ranking .de-simple-ranking__head h3,
.de-simple-ranking h3.de-simple-ranking__title{
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
  opacity:1 !important;
  text-shadow:none !important;
  filter:none !important;
  background:none !important;
}
.de-simple-ranking .de-simple-ranking__trend--up{
  color:#079455 !important;
  background:rgba(18,183,106,.14) !important;
  border:1px solid rgba(18,183,106,.34) !important;
}
.de-simple-ranking .de-simple-ranking__trend--down{
  color:#D92D20 !important;
  background:rgba(240,68,56,.14) !important;
  border:1px solid rgba(240,68,56,.34) !important;
}
.de-simple-ranking .de-simple-ranking__button,
.de-simple-ranking a.de-simple-ranking__button,
.de-simple-ranking a.de-btn.de-simple-ranking__button{
  background:linear-gradient(90deg,#F00080,#E06030) !important;
  background-color:#F00080 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:0 !important;
  box-shadow:0 16px 36px rgba(240,0,128,.20) !important;
}
.de-simple-ranking .de-simple-ranking__button:hover,
.de-simple-ranking .de-simple-ranking__button:focus,
.de-simple-ranking a.de-simple-ranking__button:hover,
.de-simple-ranking a.de-simple-ranking__button:focus,
.de-simple-ranking a.de-btn.de-simple-ranking__button:hover,
.de-simple-ranking a.de-btn.de-simple-ranking__button:focus{
  background:linear-gradient(90deg,#F00080,#E06030) !important;
  background-color:#F00080 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:0 !important;
  text-decoration:none !important;
}

/* Correctifs 0.17.34 */
.de-simple-ranking .de-simple-ranking__head h2{
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
  font-family:inherit !important;
  font-weight:900 !important;
  margin:0 0 18px !important;
  line-height:1.05 !important;
}
.de-donation-wall{
  --de-primary:#F00080;
  --de-secondary:#E06030;
  --de-black:#101010;
  --de-muted:#5f6673;
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
  color:var(--de-black) !important;
}
.de-donation-wall *{box-sizing:border-box !important;}
.de-donation-wall__head{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:18px !important;
  flex-wrap:wrap !important;
  margin:0 0 22px !important;
}
.de-donation-wall__head h2{
  margin:0 !important;
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
  font-size:clamp(32px,4vw,58px) !important;
  line-height:.95 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:-.02em !important;
}
.de-donation-wall__search{
  min-width:min(100%,360px) !important;
  margin:0 !important;
}
.de-donation-wall__grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.de-donation-wall-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  min-height:230px !important;
  padding:24px 16px 20px !important;
  border-radius:24px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.10) !important;
  box-shadow:0 18px 42px rgba(16,16,16,.08) !important;
  overflow:hidden !important;
  cursor:pointer !important;
  text-align:center !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
.de-donation-wall-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 0 auto 0 !important;
  height:7px !important;
  background:linear-gradient(90deg,var(--de-primary),var(--de-secondary)) !important;
}
.de-donation-wall-card:hover,
.de-donation-wall-card:focus{
  transform:translateY(-3px) !important;
  box-shadow:0 24px 52px rgba(16,16,16,.12) !important;
  outline:none !important;
}
.de-donation-wall-card__avatar{
  width:78px !important;
  height:78px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:22px !important;
  background:linear-gradient(180deg,#fff,rgba(240,0,128,.06)) !important;
  border:1px solid rgba(16,16,16,.09) !important;
  font-size:34px !important;
}
.de-donation-wall-card h3{
  margin:0 !important;
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
  font-size:22px !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}
.de-donation-wall-card strong{
  margin-top:auto !important;
  color:#E06030 !important;
  font-weight:900 !important;
  font-size:16px !important;
}
.de-donation-wall-card.is-hidden{display:none !important;}
.de-donation-wall__empty.is-hidden{display:none !important;}
.de-donation-wall-modal{
  background:#fff !important;
  padding:36px !important;
  border-radius:24px !important;
  color:#101010 !important;
}
.de-donation-wall-modal__avatar{
  width:92px !important;
  height:92px !important;
  border-radius:26px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(180deg,#fff,rgba(240,0,128,.06)) !important;
  border:1px solid rgba(16,16,16,.10) !important;
  font-size:44px !important;
  margin:0 0 22px !important;
}
.de-donation-wall-modal h2{
  margin:0 0 8px !important;
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
  font-size:clamp(34px,5vw,70px) !important;
  line-height:.95 !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
}
.de-donation-wall-modal__city{
  margin:0 0 24px !important;
  color:#5f6673 !important;
  font-weight:800 !important;
  font-size:20px !important;
}
.de-donation-wall-modal blockquote{
  margin:0 !important;
  padding:24px 28px !important;
  border-left:6px solid var(--de-primary) !important;
  border-radius:22px !important;
  background:rgba(240,0,128,.06) !important;
  color:#101010 !important;
  font-size:clamp(20px,2.4vw,30px) !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}
@media (max-width:760px){
  .de-donation-wall__head{align-items:stretch !important;}
  .de-donation-wall__search{width:100% !important;}
  .de-donation-wall__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
  .de-donation-wall-card{min-height:210px !important;padding:22px 12px 18px !important;border-radius:20px !important;}
  .de-donation-wall-card h3{font-size:18px !important;}
  .de-donation-wall-modal{padding:24px !important;}
}

/* Correctifs 0.17.35 - Mur des dons lisible */
.de-donation-wall.de-donation-wall--readable{
  max-width:1240px !important;
  width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:#101010 !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall__head{
  margin:0 0 24px !important;
  align-items:flex-end !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall__head h2,
.de-donation-wall.de-donation-wall--readable h2,
.de-donation-wall.de-donation-wall--readable h3{
  color:#101010 !important;
  -webkit-text-fill-color:#101010 !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall__grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  min-height:0 !important;
  height:auto !important;
  gap:14px !important;
  padding:24px !important;
  border-radius:24px !important;
  background:linear-gradient(180deg,#fff 0%,rgba(240,0,128,.045) 100%) !important;
  border:1px solid rgba(16,16,16,.10) !important;
  box-shadow:0 18px 42px rgba(16,16,16,.08) !important;
  overflow:hidden !important;
  cursor:default !important;
  text-align:left !important;
  transform:none !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card:hover,
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card:focus{
  transform:translateY(-2px) !important;
  box-shadow:0 24px 52px rgba(16,16,16,.11) !important;
  outline:none !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__top{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0 !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__avatar{
  flex:0 0 56px !important;
  width:56px !important;
  height:56px !important;
  border-radius:18px !important;
  font-size:26px !important;
  margin:0 !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__identity{
  min-width:0 !important;
  flex:1 1 auto !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card h3{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.08 !important;
  font-weight:900 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  overflow-wrap:anywhere !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__city{
  display:block !important;
  margin-top:4px !important;
  color:#667085 !important;
  -webkit-text-fill-color:#667085 !important;
  font-size:14px !important;
  font-weight:800 !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__target{
  margin:2px 0 0 !important;
  color:#F00080 !important;
  -webkit-text-fill-color:#F00080 !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  overflow-wrap:anywhere !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card__message{
  margin:0 !important;
  color:#344054 !important;
  -webkit-text-fill-color:#344054 !important;
  font-size:17px !important;
  line-height:1.55 !important;
  font-weight:500 !important;
  overflow-wrap:anywhere !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card strong{
  display:none !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card.is-hidden{
  display:none !important;
}
@media (max-width:1050px){
  .de-donation-wall.de-donation-wall--readable .de-donation-wall__grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:780px){
  .de-donation-wall.de-donation-wall--readable .de-donation-wall__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;}
  .de-donation-wall.de-donation-wall--readable .de-donation-wall-card{padding:20px !important;}
}
@media (max-width:520px){
  .de-donation-wall.de-donation-wall--readable .de-donation-wall__grid{grid-template-columns:1fr !important;}
}

/* V36 - hub partenaires : vignettes plus lisibles et DA Défi Enfance */
.de-partners-hub .de-partners-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
}
.de-partners-hub .de-partner-card{
  position:relative !important;
  min-height:255px !important;
  padding:22px 18px 20px !important;
  border:1px solid rgba(16,16,16,.10) !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fff8fc 100%) !important;
  box-shadow:0 18px 42px rgba(16,16,16,.08) !important;
  overflow:hidden !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
.de-partners-hub .de-partner-card::before{
  content:'' !important;
  position:absolute !important;
  inset:0 0 auto 0 !important;
  height:8px !important;
  background:linear-gradient(90deg,#FA0089 0%,#EE6137 100%) !important;
  border-radius:28px 28px 0 0 !important;
}
.de-partners-hub .de-partner-card::after{
  content:'' !important;
  position:absolute !important;
  width:120px !important;
  height:120px !important;
  right:-54px !important;
  bottom:-54px !important;
  border-radius:50% !important;
  background:rgba(250,0,137,.07) !important;
  pointer-events:none !important;
}
.de-partners-hub .de-partner-card:hover,
.de-partners-hub .de-partner-card:focus-visible{
  transform:translateY(-4px) !important;
  border-color:rgba(250,0,137,.22) !important;
  box-shadow:0 24px 54px rgba(240,0,128,.14) !important;
  outline:none !important;
}
.de-partners-hub .de-partner-card__logo{
  width:112px !important;
  height:112px !important;
  margin:10px auto 8px !important;
  border-radius:28px !important;
  border:2px solid rgba(16,16,16,.08) !important;
  background:#fff !important;
  box-shadow:0 14px 30px rgba(16,16,16,.07) !important;
  padding:10px !important;
}
.de-partners-hub .de-partner-card__logo img{
  object-fit:contain !important;
  width:100% !important;
  height:100% !important;
}
.de-partners-hub .de-partner-card__logo span{
  font-size:40px !important;
  line-height:1 !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
.de-partners-hub .de-partner-card h3,
.de-partners-hub .de-partner-card h3 *{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.de-partners-hub .de-partner-card h3{
  margin:0 !important;
  min-height:44px !important;
  font-size:20px !important;
  line-height:1.12 !important;
  font-weight:950 !important;
  letter-spacing:-.01em !important;
  text-align:center !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
.de-partners-hub .de-partner-card__badges,
.de-partner-modal__badges{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  align-items:center !important;
  gap:8px !important;
  margin-top:2px !important;
}
.de-partners-hub .de-partner-card__category,
.de-partner-modal__badges .de-partner-card__category{
  margin:0 !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.10) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:850 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  box-shadow:0 10px 22px rgba(16,16,16,.05) !important;
  max-width:100% !important;
  white-space:normal !important;
}
.de-partner-support-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#FA0089 0%,#EE6137 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-weight:900 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  box-shadow:0 12px 24px rgba(240,0,128,.18) !important;
  max-width:100% !important;
  text-align:center !important;
}
.de-partners-hub .de-partner-card__cta{
  display:none !important;
}
.de-partner-modal-card.de-partner-modal-card--v36{
  padding:28px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fff7fb 100%) !important;
}
.de-partner-modal-card--v36 .de-partner-modal__head h3,
.de-partner-modal-card--v36 .de-partner-modal__head h3 *{
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.de-partner-modal-card--v36 .de-partner-modal__head h3{
  font-size:54px !important;
  line-height:1 !important;
  margin:0 0 14px !important;
}
.de-partner-modal-card--v36 .de-partner-modal__head p{
  color:#333 !important;
  -webkit-text-fill-color:#333 !important;
  font-weight:650 !important;
  margin:16px 0 0 !important;
}
.de-partner-modal__motivation{
  margin-top:26px !important;
}
.de-partner-modal__motivation h4,
.de-partner-modal__motivation h4 *{
  margin:0 0 10px !important;
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  font-size:20px !important;
  line-height:1.2 !important;
  font-weight:950 !important;
}
.de-partner-modal-card--v36 .de-partner-modal__quote{
  margin:0 0 16px !important;
  padding:22px 24px !important;
  border-radius:22px !important;
  background:#fff0f7 !important;
  border:1px solid rgba(250,0,137,.14) !important;
  border-left:7px solid #FA0089 !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-size:22px !important;
  line-height:1.45 !important;
}
@media (max-width:1100px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:780px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px !important;}
  .de-partner-modal-card--v36 .de-partner-modal__head h3{font-size:36px !important;}
}
@media (max-width:480px){
  .de-partners-hub .de-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important;}
  .de-partners-hub .de-partner-card{padding:18px 10px 16px !important; border-radius:22px !important;}
  .de-partners-hub .de-partner-card__logo{width:92px !important;height:92px !important;border-radius:22px !important;}
  .de-partners-hub .de-partner-card h3{font-size:16px !important;min-height:38px !important;}
  .de-partners-hub .de-partner-card__category,
  .de-partner-support-badge{font-size:11px !important;padding:7px 10px !important;}
}

/* 0.17.37 — Mur des dons : les cartes peuvent être des liens vers la fiche dynamique */
.de-donation-wall-card[href],
a.de-donation-wall-card{
  text-decoration:none !important;
  color:inherit !important;
  cursor:pointer !important;
}
.de-donation-wall-card[href]:hover,
a.de-donation-wall-card:hover,
.de-donation-wall-card[href]:focus,
a.de-donation-wall-card:focus{
  text-decoration:none !important;
  color:inherit !important;
}

/* 0.17.38 — Mur des dons : ouverture directe en fiche dynamique dans la même page */
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card--clickable{
  cursor:pointer !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card--clickable:hover,
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card--clickable:focus{
  transform:translateY(-3px) !important;
  box-shadow:0 26px 56px rgba(16,16,16,.13) !important;
  border-color:rgba(240,0,128,.22) !important;
  outline:none !important;
}
.de-donation-wall.de-donation-wall--readable .de-donation-wall-card--clickable:after{
  content:"Voir la fiche" !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  max-width:100% !important;
  margin-top:auto !important;
  padding:9px 13px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#F00080,#E06030) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* 0.17.39 — Promesses de don par km */
.de-hero__actions .de-btn--hero-promise{
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border:1px solid rgba(16,16,16,.10) !important;
  box-shadow:0 12px 28px rgba(16,16,16,.08) !important;
}
.de-hero__actions .de-btn--hero-promise:hover,
.de-hero__actions .de-btn--hero-promise:focus{
  background:#fff4fa !important;
  color:#F00080 !important;
  -webkit-text-fill-color:#F00080 !important;
  border-color:rgba(240,0,128,.22) !important;
}
.de-promise-modal__dialog{
  max-width:980px !important;
}
.de-promise-box,
.de-promise-box *{
  box-sizing:border-box !important;
}
.de-promise-box{
  background:#fff !important;
  border-radius:30px !important;
  padding:30px !important;
  border-top:8px solid #F00080 !important;
  box-shadow:0 22px 60px rgba(16,16,16,.12) !important;
}
.de-promise-box h2{
  margin:0 0 10px !important;
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  font-size:clamp(30px,4vw,54px) !important;
  line-height:1 !important;
  font-weight:950 !important;
}
.de-promise-box__intro,
.de-promise-note{
  color:#2f3748 !important;
  -webkit-text-fill-color:#2f3748 !important;
  font-size:17px !important;
  line-height:1.45 !important;
}
.de-promise-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  margin:22px 0 !important;
}
.de-promise-grid .de-field{
  display:flex !important;
  flex-direction:column !important;
  gap:7px !important;
}
.de-promise-grid .de-field--full{
  grid-column:1/-1 !important;
}
.de-promise-grid .de-field span{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  font-size:13px !important;
}
.de-promise-grid input,
.de-promise-grid select,
.de-promise-grid textarea{
  width:100% !important;
  border:1px solid rgba(16,16,16,.15) !important;
  border-radius:18px !important;
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  padding:14px 16px !important;
  font-size:16px !important;
  line-height:1.25 !important;
  box-shadow:0 10px 24px rgba(16,16,16,.05) !important;
}
.de-promise-estimate{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  margin:18px 0 !important;
}
.de-promise-estimate span{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:16px 18px !important;
  border-radius:22px !important;
  background:#fff0f7 !important;
  border:1px solid rgba(240,0,128,.16) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:850 !important;
}
.de-promise-estimate strong{
  color:#F00080 !important;
  -webkit-text-fill-color:#F00080 !important;
  font-size:22px !important;
}
.de-promise-submit{
  width:100% !important;
  justify-content:center !important;
  margin-top:10px !important;
}
@media (max-width:720px){
  .de-promise-box{padding:22px !important;border-radius:24px !important;}
  .de-promise-grid,
  .de-promise-estimate{grid-template-columns:1fr !important;}
}


/* 0.17.40 — corrections promesse + chargement progressif coureurs */
.de-promise-submit,
.de-promise-submit:hover,
.de-promise-submit:focus,
.de-promise-submit:active{
  background:linear-gradient(135deg,#F00080 0%,#E06030 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:0 !important;
  box-shadow:0 18px 34px rgba(240,0,128,.22) !important;
  opacity:1 !important;
  filter:none !important;
}
.de-promise-submit:hover,
.de-promise-submit:focus{
  transform:translateY(-1px) !important;
  box-shadow:0 22px 42px rgba(240,0,128,.28) !important;
}
.de-input-suffix{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
}
.de-input-suffix input{
  padding-right:54px !important;
}
.de-input-suffix__unit{
  position:absolute !important;
  right:18px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
  font-size:17px !important;
  line-height:1 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  pointer-events:none !important;
}
.de-hub-load-more-wrap{
  display:flex !important;
  justify-content:center !important;
  margin:22px 0 4px !important;
}
.de-hub-load-more{
  min-width:min(100%,280px) !important;
  justify-content:center !important;
}
.de-row-list [hidden]{
  display:none !important;
}
.de-promise-grid .de-field .de-input-suffix__unit{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
  font-size:17px !important;
  line-height:1 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

/* 0.17.41 — cible de promesse visible même avec les CSS du thème */
.de-promise-form select[data-promise-target-select],
.de-promise-form .de-promise-grid select[data-promise-target-select],
.de-modal .de-promise-form select[data-promise-target-select]{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:2 !important;
  min-height:58px !important;
  height:auto !important;
  appearance:auto !important;
  -webkit-appearance:menulist !important;
  pointer-events:auto !important;
}
.de-promise-form select[data-promise-target-select] option,
.de-promise-form select[data-promise-target-select] optgroup{
  color:#111 !important;
  background:#fff !important;
  -webkit-text-fill-color:#111 !important;
}
.de-hub-load-more[disabled]{
  opacity:.72 !important;
  cursor:wait !important;
}

/* 0.17.42 — promesses de don : aiguillage coureur/équipe, recherche optimisée, orange dédié */
.de-hero__actions .de-btn--hero-promise,
.de-hero__actions .de-btn--hero-promise:hover,
.de-hero__actions .de-btn--hero-promise:focus,
.de-hero__actions .de-btn--hero-promise:active{
  background:linear-gradient(135deg,#ff8a00 0%,#E06030 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:0 !important;
  box-shadow:0 18px 38px rgba(224,96,48,.28) !important;
  opacity:1 !important;
  filter:none !important;
}
.de-hero__actions .de-btn--hero-promise:hover,
.de-hero__actions .de-btn--hero-promise:focus{
  transform:translateY(-1px) !important;
  box-shadow:0 24px 46px rgba(224,96,48,.36) !important;
}
.de-promise-box{border-top-color:#E06030 !important;}
.de-promise-submit,
.de-promise-submit:hover,
.de-promise-submit:focus,
.de-promise-submit:active{
  background:linear-gradient(135deg,#ff8a00 0%,#E06030 100%) !important;
  box-shadow:0 18px 34px rgba(224,96,48,.24) !important;
}
.de-promise-radios{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin:18px 0 16px !important;
}
.de-promise-radios label{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  padding:12px 18px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.12) !important;
  box-shadow:0 10px 24px rgba(16,16,16,.06) !important;
  cursor:pointer !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
}
.de-promise-radios input{width:auto !important;min-height:auto !important;box-shadow:none !important;accent-color:#E06030 !important;}
.de-promise-targeter{
  padding:18px !important;
  border-radius:26px !important;
  background:linear-gradient(180deg,rgba(224,96,48,.08),rgba(255,138,0,.04)) !important;
  border:1px solid rgba(224,96,48,.16) !important;
  margin:20px 0 !important;
}
.de-promise-selected{
  margin:12px 0 !important;
  padding:13px 16px !important;
  border-radius:18px !important;
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
  border:1px solid rgba(224,96,48,.18) !important;
}
.de-promise-target-results{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  max-height:310px !important;
  overflow:auto !important;
  padding-right:4px !important;
}
.de-promise-target-results.is-loading{opacity:.62 !important;}
.de-promise-target-card{
  width:100% !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
  padding:13px !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.10) !important;
  box-shadow:0 10px 22px rgba(16,16,16,.05) !important;
  cursor:pointer !important;
  text-align:left !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
.de-promise-target-card:hover,
.de-promise-target-card:focus,
.de-promise-target-card.is-selected{
  border-color:rgba(224,96,48,.42) !important;
  box-shadow:0 14px 28px rgba(224,96,48,.13) !important;
  transform:translateY(-1px) !important;
}
.de-promise-target-card__emoji{
  width:42px !important;
  height:42px !important;
  border-radius:15px !important;
  display:grid !important;
  place-items:center !important;
  background:#fff4ec !important;
  font-size:22px !important;
  -webkit-text-fill-color:initial !important;
}
.de-promise-target-card__text{min-width:0 !important;display:flex !important;flex-direction:column !important;gap:3px !important;}
.de-promise-target-card__text strong{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:950 !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.de-promise-target-card__text small{
  color:#626b7c !important;
  -webkit-text-fill-color:#626b7c !important;
  font-weight:750 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.de-promise-target-card__km{
  color:#E06030 !important;
  -webkit-text-fill-color:#E06030 !important;
  font-weight:950 !important;
  font-size:13px !important;
  white-space:nowrap !important;
}
.de-promise-target-empty{
  grid-column:1/-1 !important;
  padding:16px !important;
  border-radius:18px !important;
  background:#fff !important;
  color:#626b7c !important;
  -webkit-text-fill-color:#626b7c !important;
  font-weight:850 !important;
}
.de-cheer-card--promise{
  background:linear-gradient(180deg,rgba(224,96,48,.13),rgba(255,138,0,.07)) !important;
  border-color:rgba(224,96,48,.22) !important;
}
.de-cheer-card--promise .de-cheer-card__target,
.de-cheer-card--promise .de-cheer-card__type{
  color:#E06030 !important;
  -webkit-text-fill-color:#E06030 !important;
  font-weight:950 !important;
}
.de-promise-confirmation{
  margin:0 0 18px !important;
  padding:16px 20px !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,rgba(255,138,0,.15),rgba(224,96,48,.10)) !important;
  border:1px solid rgba(224,96,48,.25) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:950 !important;
  box-shadow:0 14px 30px rgba(224,96,48,.12) !important;
}
@media (max-width:760px){
  .de-promise-target-results{grid-template-columns:1fr !important;max-height:360px !important;}
  .de-promise-target-card{grid-template-columns:auto minmax(0,1fr) !important;}
  .de-promise-target-card__km{grid-column:2 !important;}
}

/* 0.17.43 — promesse confirmée dans la modale + lisibilité recherche */
.de-promise-success,
.de-modal .de-promise-success{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:18px !important;
  margin:26px 0 8px !important;
  padding:26px !important;
  border-radius:28px !important;
  background:linear-gradient(135deg,rgba(255,138,0,.18),rgba(224,96,48,.10)) !important;
  border:1px solid rgba(224,96,48,.28) !important;
  box-shadow:0 18px 40px rgba(224,96,48,.14) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
}
.de-promise-success[hidden]{display:none !important;}
.de-promise-success__icon{
  width:62px !important;
  height:62px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:linear-gradient(135deg,#ff8a00 0%,#E06030 100%) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:34px !important;
  font-weight:950 !important;
  box-shadow:0 16px 32px rgba(224,96,48,.24) !important;
}
.de-promise-success strong{
  display:block !important;
  margin:0 0 6px !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-size:clamp(24px,3vw,38px) !important;
  line-height:1.05 !important;
  font-weight:950 !important;
}
.de-promise-success p{
  margin:0 !important;
  color:#2f3748 !important;
  -webkit-text-fill-color:#2f3748 !important;
  font-size:17px !important;
  line-height:1.45 !important;
  font-weight:750 !important;
}
.de-promise-target-card:hover,
.de-promise-target-card:focus,
.de-promise-target-card.is-selected{
  background:linear-gradient(135deg,#ff8a00 0%,#E06030 100%) !important;
  border-color:transparent !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.de-promise-target-card:hover .de-promise-target-card__text strong,
.de-promise-target-card:focus .de-promise-target-card__text strong,
.de-promise-target-card.is-selected .de-promise-target-card__text strong,
.de-promise-target-card:hover .de-promise-target-card__text small,
.de-promise-target-card:focus .de-promise-target-card__text small,
.de-promise-target-card.is-selected .de-promise-target-card__text small,
.de-promise-target-card:hover .de-promise-target-card__km,
.de-promise-target-card:focus .de-promise-target-card__km,
.de-promise-target-card.is-selected .de-promise-target-card__km{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.de-promise-target-card:hover .de-promise-target-card__emoji,
.de-promise-target-card:focus .de-promise-target-card__emoji,
.de-promise-target-card.is-selected .de-promise-target-card__emoji{
  background:rgba(255,255,255,.22) !important;
}
.de-promise-selected.is-error{
  background:#fff0f0 !important;
  border-color:rgba(220,38,38,.25) !important;
  color:#b91c1c !important;
  -webkit-text-fill-color:#b91c1c !important;
}
.de-cheer-card__type{display:none !important;}
@media (max-width:720px){
  .de-promise-success{grid-template-columns:1fr !important;text-align:center !important;justify-items:center !important;padding:22px !important;}
}


/* 0.17.45 — promesses : formulaire complet + confirmation longue + bouton retour */
.de-promise-modal__dialog{
  max-height:calc(100vh - 36px) !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:20px !important;
}
.de-promise-header{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  margin:0 0 14px !important;
}
.de-promise-back,
.de-promise-back:hover,
.de-promise-back:focus,
.de-promise-back:active{
  appearance:none !important;
  border:1px solid rgba(16,16,16,.12) !important;
  background:#fff !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  border-radius:999px !important;
  padding:11px 18px !important;
  font-weight:950 !important;
  font-size:15px !important;
  line-height:1 !important;
  box-shadow:0 10px 24px rgba(16,16,16,.08) !important;
  cursor:pointer !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.de-promise-back:hover,
.de-promise-back:focus{
  border-color:rgba(224,96,48,.38) !important;
  box-shadow:0 14px 30px rgba(224,96,48,.12) !important;
}
.de-promise-donor-section{
  margin:22px 0 !important;
  padding:20px !important;
  border-radius:26px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.08) !important;
  box-shadow:0 12px 28px rgba(16,16,16,.05) !important;
}
.de-promise-donor-section h3{
  margin:0 0 14px !important;
  color:#000 !important;
  -webkit-text-fill-color:#000 !important;
  font-weight:950 !important;
  font-size:24px !important;
  line-height:1.1 !important;
}
.de-promise-choice{
  border:0 !important;
  padding:0 !important;
  margin:16px 0 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
}
.de-promise-choice legend{
  width:100% !important;
  margin:0 0 8px !important;
  padding:0 !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:950 !important;
  font-size:16px !important;
  line-height:1.2 !important;
}
.de-promise-choice legend strong,
.de-promise-grid .de-field span strong{
  color:#E06030 !important;
  -webkit-text-fill-color:#E06030 !important;
}
.de-promise-choice label{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  padding:10px 16px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(16,16,16,.12) !important;
  box-shadow:0 8px 20px rgba(16,16,16,.05) !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:900 !important;
  cursor:pointer !important;
}
.de-promise-choice input[type="radio"]{
  width:auto !important;
  min-height:auto !important;
  box-shadow:none !important;
  accent-color:#E06030 !important;
}
.de-promise-grid--donor{
  margin:16px 0 !important;
}
.de-promise-grid--donor input{
  min-height:54px !important;
}
.de-promise-organization-fields[hidden]{display:none !important;}
.de-promise-checkbox{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  margin:18px 0 4px !important;
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  font-weight:850 !important;
  line-height:1.35 !important;
}
.de-promise-checkbox input{
  flex:0 0 auto !important;
  width:22px !important;
  height:22px !important;
  margin-top:2px !important;
  accent-color:#E06030 !important;
}

.de-promise-legal-accept{
  margin:18px 0 34px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  background:rgba(224,96,48,.08) !important;
  border:1px solid rgba(224,96,48,.18) !important;
  color:#333b4d !important;
  -webkit-text-fill-color:#333b4d !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:800 !important;
}
.de-promise-legal-accept span{
  color:#333b4d !important;
  -webkit-text-fill-color:#333b4d !important;
}
.de-promise-legal-accept input[type="checkbox"]{
  border:2px solid #E06030 !important;
}

.de-promise-legal-note{
  margin:16px 0 34px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  background:rgba(224,96,48,.08) !important;
  border:1px solid rgba(224,96,48,.16) !important;
  color:#333b4d !important;
  -webkit-text-fill-color:#333b4d !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:750 !important;
}
.de-promise-submit{
  margin-top:18px !important;
  margin-bottom:0 !important;
}
.de-promise-success p{
  max-width:980px !important;
}
@media (max-width:720px){
  .de-promise-modal__dialog{max-height:calc(100vh - 18px) !important;padding-bottom:16px !important;}
  .de-promise-donor-section{padding:16px !important;border-radius:22px !important;}
  .de-promise-choice label{width:100% !important;}
  
.de-promise-legal-accept{
  margin:18px 0 34px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  background:rgba(224,96,48,.08) !important;
  border:1px solid rgba(224,96,48,.18) !important;
  color:#333b4d !important;
  -webkit-text-fill-color:#333b4d !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:800 !important;
}
.de-promise-legal-accept span{
  color:#333b4d !important;
  -webkit-text-fill-color:#333b4d !important;
}
.de-promise-legal-accept input[type="checkbox"]{
  border:2px solid #E06030 !important;
}

.de-promise-legal-note{margin-bottom:42px !important;}
}

.de-simple-ranking__name em{
  display:inline-flex !important;
  align-items:center !important;
  width:max-content !important;
  max-width:100% !important;
  margin:7px 0 0 !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  background:rgba(250,0,137,.08) !important;
  border:1px solid rgba(250,0,137,.18) !important;
  color:#FA0089 !important;
  -webkit-text-fill-color:#FA0089 !important;
  font-size:11px !important;
  line-height:1 !important;
  font-style:normal !important;
  font-weight:900 !important;
  text-transform:none !important;
  letter-spacing:.01em !important;
}

/* V48 - Correction affichage coureurs solo dans le classement équipes */
.de-hub-rank--solo-team .de-hub-rank__left--solo-team{
  display:grid !important;
  grid-template-columns:58px 58px minmax(0, 1fr) !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  min-width:0 !important;
}
.de-hub-rank--solo-team .de-hub-rank__text--solo-team{
  display:block !important;
  min-width:0 !important;
  max-width:none !important;
}
.de-hub-rank--solo-team .de-hub-rank__text--solo-team h3,
.de-hub-rank--solo-team .de-hub-rank__text--solo-team .de-hub-rank__name{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  color:#101010 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
  line-height:1.12 !important;
}
.de-hub-rank--solo-team .de-avatar--small{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  flex:0 0 58px !important;
}
@media (max-width: 700px){
  .de-hub-rank--solo-team .de-hub-rank__left--solo-team{
    grid-template-columns:52px 52px minmax(0, 1fr) !important;
    gap:10px !important;
  }
  .de-hub-rank--solo-team .de-hub-rank__number,
  .de-hub-rank--solo-team .de-avatar--small{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    flex-basis:52px !important;
  }
  .de-hub-rank--solo-team .de-hub-rank__text--solo-team h3{
    font-size:18px !important;
  }
}

/* 0.17.57 - Mur des dons plus léger + motivations coureurs */
.de-wall-load-more-wrap{
    display:flex !important;
    justify-content:center !important;
    margin:28px 0 6px !important;
}
.de-wall-load-more{
    min-width:190px !important;
}
.de-runner-motivations{
    width:100% !important;
    border:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:transparent !important;
    padding:0 !important;
    margin:0 auto !important;
}
.de-runner-motivations *{
    box-sizing:border-box !important;
}
.de-runner-motivations__grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:18px !important;
    align-items:stretch !important;
    width:100% !important;
}
.de-runner-motivation-card{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    min-height:260px !important;
    padding:22px !important;
    border-radius:28px !important;
    border:1px solid rgba(240,0,128,.12) !important;
    background:linear-gradient(180deg,#fff 0%,#fff8fb 100%) !important;
    box-shadow:0 18px 46px rgba(20,20,43,.10) !important;
    overflow:hidden !important;
}
.de-runner-motivation-card::before{
    content:"" !important;
    position:absolute !important;
    inset:0 0 auto 0 !important;
    height:5px !important;
    background:linear-gradient(90deg,#FA0089,#E06030) !important;
}
.de-runner-motivation-card__top{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    min-width:0 !important;
}
.de-runner-motivation-card__avatar{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:linear-gradient(135deg,rgba(250,0,137,.14),rgba(224,96,48,.13)) !important;
    font-size:25px !important;
}
.de-runner-motivation-card__identity{
    min-width:0 !important;
    flex:1 1 auto !important;
}
.de-runner-motivation-card__identity h3{
    margin:0 !important;
    color:#111827 !important;
    font-size:22px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    overflow-wrap:anywhere !important;
}
.de-runner-motivation-card__identity span{
    display:block !important;
    margin-top:5px !important;
    color:#6b7280 !important;
    font-size:13px !important;
    font-weight:800 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}
.de-runner-motivation-card__message{
    flex:1 1 auto !important;
    margin:0 !important;
    color:#2d2430 !important;
    font-size:15px !important;
    line-height:1.55 !important;
    font-weight:650 !important;
}
.de-runner-motivation-card__button{
    width:100% !important;
    justify-content:center !important;
    margin-top:auto !important;
    color:#fff !important;
}
.de-runner-motivation-card__button:hover,
.de-runner-motivation-card__button:focus{
    color:#fff !important;
    background:linear-gradient(90deg,#FA0089,#E06030) !important;
}
.de-runner-motivation-card.is-hidden{display:none !important;}
.de-runner-motivations__empty.is-hidden{display:none !important;}
@media (max-width:1100px){
    .de-runner-motivations__grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:820px){
    .de-runner-motivations__grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;}
}
@media (max-width:560px){
    .de-runner-motivations__grid{grid-template-columns:1fr !important;}
    .de-runner-motivation-card{min-height:0 !important;padding:20px !important;}
}


/* Défi Enfance — chargement fiche dynamique hub */
@keyframes deHubModalSpin {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}
.de-hub.de-hub--modal-loading [data-modal-target]:not(.is-loading),
.de-hub.de-hub--modal-loading .de-open-modal:not(.is-loading) {
  pointer-events: none !important;
  filter: saturate(.85) !important;
}
.de-hub [data-modal-target].is-loading,
.de-hub .de-open-modal.is-loading {
  position: relative !important;
  pointer-events: none !important;
  cursor: wait !important;
  opacity: .92 !important;
  overflow: hidden !important;
}
.de-hub [data-modal-target].is-loading::before,
.de-hub .de-open-modal.is-loading::before {
  content: "Ouverture de la fiche…" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 50 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px 58px 18px 18px !important;
  background: rgba(255,255,255,.84) !important;
  color: #111827 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
  text-align: center !important;
  border-radius: inherit !important;
  backdrop-filter: blur(2px) !important;
}
.de-hub [data-modal-target].is-loading::after,
.de-hub .de-open-modal.is-loading::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 22px !important;
  z-index: 60 !important;
  width: 26px !important;
  height: 26px !important;
  margin-top: -13px !important;
  border-radius: 999px !important;
  border: 3px solid rgba(250,0,137,.18) !important;
  border-top-color: #FA0089 !important;
  border-right-color: #F06135 !important;
  animation: deHubModalSpin .72s linear infinite !important;
  box-sizing: border-box !important;
}
@media (max-width: 640px) {
  .de-hub [data-modal-target].is-loading::before,
  .de-hub .de-open-modal.is-loading::before {
    content: "Ouverture…" !important;
    justify-content: flex-start !important;
    padding-left: 18px !important;
    padding-right: 62px !important;
  }
  .de-hub [data-modal-target].is-loading::after,
  .de-hub .de-open-modal.is-loading::after {
    right: 18px !important;
  }
}


/* 0.17.61 - Motivations coureurs : boutons toujours visibles */
.de-runner-motivations .de-runner-motivation-card__button,
.de-runner-motivations .de-runner-motivation-card__button.de-chip-btn,
.de-runner-motivations .de-runner-motivation-card__button.de-chip-btn--primary,
.de-runner-motivations .de-wall-load-more,
.de-runner-motivations .de-wall-load-more.de-chip-btn,
.de-runner-motivations .de-wall-load-more.de-chip-btn--primary {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-height:56px !important;
    padding:16px 24px !important;
    border-radius:999px !important;
    border:0 !important;
    background:#FA0089 !important;
    background-image:linear-gradient(90deg,#FA0089,#E06030) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-weight:950 !important;
    font-size:17px !important;
    line-height:1.1 !important;
    text-decoration:none !important;
    opacity:1 !important;
    visibility:visible !important;
    box-shadow:0 18px 38px rgba(240,0,128,.20) !important;
    cursor:pointer !important;
    pointer-events:auto !important;
}
.de-runner-motivations .de-runner-motivation-card__button:hover,
.de-runner-motivations .de-runner-motivation-card__button:focus-visible,
.de-runner-motivations .de-wall-load-more:hover,
.de-runner-motivations .de-wall-load-more:focus-visible {
    background:#FA0089 !important;
    background-image:linear-gradient(90deg,#FA0089,#E06030) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    opacity:1 !important;
    transform:translateY(-1px) !important;
}
.de-runner-motivations .de-wall-load-more-wrap {
    width:100% !important;
    max-width:320px !important;
    margin:32px auto 8px !important;
}
.de-runner-motivations .de-wall-load-more-wrap .de-wall-load-more {
    width:100% !important;
}
.de-runner-motivation-card__identity h3 {
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
}


/* 0.17.62 — Chargement fiche dynamique : état plus lisible et plus Défi Enfance */
.de-hub.de-hub--modal-loading [data-modal-target]:not(.is-loading),
.de-hub.de-hub--modal-loading .de-open-modal:not(.is-loading) {
  pointer-events: none !important;
  opacity: .44 !important;
  filter: grayscale(.75) saturate(.45) blur(.2px) !important;
  transition: opacity .18s ease, filter .18s ease !important;
}
.de-hub [data-modal-target].is-loading,
.de-hub .de-open-modal.is-loading {
  position: relative !important;
  isolation: isolate !important;
  pointer-events: none !important;
  cursor: wait !important;
  opacity: 1 !important;
  overflow: hidden !important;
  border-color: rgba(250,0,137,.34) !important;
  box-shadow: 0 22px 60px rgba(240,0,128,.18), 0 10px 26px rgba(0,0,0,.08) !important;
  transform: translateY(-1px) !important;
}
.de-hub [data-modal-target].is-loading > *,
.de-hub .de-open-modal.is-loading > * {
  opacity: .18 !important;
  filter: grayscale(.65) blur(.8px) !important;
  transition: opacity .18s ease, filter .18s ease !important;
}
.de-hub [data-modal-target].is-loading::before,
.de-hub .de-open-modal.is-loading::before {
  content: "Ouverture de la fiche" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 80 !important;
  width: auto !important;
  min-width: 270px !important;
  max-width: calc(100% - 42px) !important;
  height: auto !important;
  inset: auto !important;
  transform: translate(-50%, -50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px 28px 18px 66px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg,#FA0089 0%,#F06135 100%) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 16px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: -.01em !important;
  text-align: center !important;
  box-shadow: 0 18px 46px rgba(250,0,137,.28), 0 8px 20px rgba(224,96,48,.18) !important;
  backdrop-filter: none !important;
  border: 1px solid rgba(255,255,255,.38) !important;
  white-space: nowrap !important;
}
.de-hub [data-modal-target].is-loading::after,
.de-hub .de-open-modal.is-loading::after {
  content: "" !important;
  position: absolute !important;
  left: calc(50% - 103px) !important;
  top: 50% !important;
  right: auto !important;
  z-index: 90 !important;
  width: 28px !important;
  height: 28px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 4px solid rgba(255,255,255,.42) !important;
  border-top-color: #fff !important;
  border-right-color: #fff !important;
  animation: deHubModalSpin .72s linear infinite !important;
  box-sizing: border-box !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.16) !important;
}
@media (max-width: 640px) {
  .de-hub [data-modal-target].is-loading::before,
  .de-hub .de-open-modal.is-loading::before {
    content: "Ouverture…" !important;
    min-width: 210px !important;
    max-width: calc(100% - 28px) !important;
    padding: 16px 22px 16px 58px !important;
    font-size: 14px !important;
  }
  .de-hub [data-modal-target].is-loading::after,
  .de-hub .de-open-modal.is-loading::after {
    left: calc(50% - 78px) !important;
    width: 24px !important;
    height: 24px !important;
    border-width: 3px !important;
  }
}

/* 0.17.63 — Chargement fiche dynamique : centrage strict du badge */
.de-hub [data-modal-target].is-loading::before,
.de-hub .de-open-modal.is-loading::before {
  position: absolute !important;
  inset: 50% auto auto 50% !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: min(340px, calc(100% - 32px)) !important;
  min-width: 0 !important;
  max-width: calc(100% - 32px) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 18px 26px 18px 64px !important;
  white-space: nowrap !important;
  text-align: center !important;
  overflow: visible !important;
}
.de-hub [data-modal-target].is-loading::after,
.de-hub .de-open-modal.is-loading::after {
  position: absolute !important;
  inset: 50% auto auto 50% !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-132px, -50%) !important;
  margin: 0 !important;
}
@media (max-width: 640px) {
  .de-hub [data-modal-target].is-loading::before,
  .de-hub .de-open-modal.is-loading::before {
    width: min(250px, calc(100% - 24px)) !important;
    max-width: calc(100% - 24px) !important;
    padding: 15px 18px 15px 52px !important;
  }
  .de-hub [data-modal-target].is-loading::after,
  .de-hub .de-open-modal.is-loading::after {
    transform: translate(-96px, -50%) !important;
  }
}

/* Défi Enfance 0.17.66 - promesses de dons */
.de-promise-donors-card h3,
.de-promise-donors-card .de-pill,
.de-pill--promise-donor {
    color: #111111 !important;
}
.de-pill--promise-donor {
    background: #fff7fb !important;
    border-color: #ffc1dd !important;
    font-weight: 800 !important;
}
