/**
 * Theme Name:     GeneratePress Child
 * Author:         Tom Usborne
 * Template:       generatepress
 * Text Domain:	   generatepress-child
 * Description:    GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
 */
/* ========== NOTIFICATIONS MYCRED ========== */
#mycred-notification-wrap .notice-item-782 {
  padding: 20px;
  line-height: 1.6;
  font-size: 14px;
  border: 2px solid #4CAF50;
  border-radius: 8px;
  background-color: #f9f9f9;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  margin: 20px auto;
}
#mycred-notification-wrap .notice-item-782 p { margin: 0 0 10px 0; color: #333; }
#mycred-notification-wrap .notice-item-782 h1 { font-size: 18px; font-weight: bold; color: #4CAF50; }
#mycred-notification-wrap .notice-item-782 a { color: #4CAF50; font-weight: bold; text-decoration: none; }
#mycred-notification-wrap .notice-item-782 a:hover { text-decoration: underline; }

/* ========== SOLDE MYCRED (effet lumineux discret) ========== */
.mycred-my-balance-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(135deg, #1d508e, #2a6bc2, #1d508e);
  background-size: 300% 300%;
  animation: gradientShift 6s ease infinite, fadeInBalance 0.4s ease;
  padding: 8px 16px;
  border-radius: 10px;
  box-shadow: 0 3px 10px rgba(0,0,0,0.12);
}
.mycred-my-balance-wrapper h1 { font-size: 16px; font-weight: normal; color: #fff; margin: 0; }
.mycred-my-balance-wrapper div { font-size: 16px; font-weight: bold; color: #fff; margin-left: 5px; }
@keyframes gradientShift { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@keyframes fadeInBalance { from{opacity:0;transform:translateY(-4px)} to{opacity:1;transform:translateY(0)} }

/* ========== HISTORIQUE MYCRED (tableau moderne, responsive) ========== */
.mycred-history-container {
  --bg: #ffffff;
  --text: #1f2937;
  --muted: #6b7280;
  --border: #e5e7eb;
  --shadow: 0 10px 24px rgba(0,0,0,.06);
  --radius: 14px;
  color: var(--text);
  max-width: 980px;
  margin: 24px auto;
  padding: 0 12px;
}
.mycred-history-container .mycred-table,
.mycred-history-container table {
  width: 100%;
  border-collapse: collapse;
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow: hidden;
  font-size: 15px;
  margin: 15px 0;
}
.mycred-history-container thead th {
  text-align: left;
  font-weight: 600;
  letter-spacing: .2px;
  padding: 14px 16px;
  background: linear-gradient(180deg, #f9fafb, #f3f4f6);
  border-bottom: 1px solid var(--border);
  white-space: nowrap;
  color: #111827;
}
/* Lignes verticales uniquement dans l'en-tête */
.mycred-history-container thead th.column-time  { border-right: 1px solid var(--border) !important; }
.mycred-history-container thead th.column-creds { border-right: 1px solid var(--border) !important; }

/* Corps du tableau */
.mycred-history-container tbody tr {
  transition: background-color .18s ease, transform .18s ease;
  border-bottom: 1px solid var(--border);
}
.mycred-history-container tbody tr:hover { background: #fafafa; }
.mycred-history-container td {
  padding: 14px 16px;
  vertical-align: middle;
  color: var(--text);
  border-bottom: 1px solid var(--border);
}
.mycred-history-container td.column-entry { color: var(--text); }
.mycred-history-container td.column-time  { color: var(--muted); font-size: 14px; }
/* Aucune ligne verticale dans le corps */
.mycred-history-container td.column-time,
.mycred-history-container td.column-creds { border-right: none !important; }

/* Points (badge) — centrage + décalage vertical */
.mycred-history-container td.column-creds {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
}
/* Décaler légèrement la bulle vers le bas */
.mycred-history-container td.column-creds .points-badge,
.mycred-history-container td.column-creds {
  position: relative;
  top: 8px;
}
.mycred-history-container td.column-creds,
.mycred-history-container td.column-creds .points-badge {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: #f8fafc;
}
.mycred-history-container td.column-creds[data-raw^="-"],
.mycred-history-container td.column-creds.minus {
  background: #fff1f2; border-color: #fee2e2; color: #991b1b;
}
.mycred-history-container td.column-creds[data-raw^="+"],
.mycred-history-container td.column-creds.plus {
  background: #ecfdf5; border-color: #d1fae5; color: #065f46;
}

/* Etat vide */
.mycred-history-container .no-entries,
.mycred-history-container .mycred-empty,
.mycred-history-container tbody:empty::after {
  content: "Nenhuma atividade encontrada.";
  display: block;
  padding: 28px 18px;
  text-align: center;
  color: var(--muted);
}

/* Pagination */
.mycred-history-container .pagination-top { display: none; }
.mycred-history-container .pagination,
.mycred-history-container .mycred-pagination {
  display: flex; gap: 8px; justify-content: center; align-items: center; padding: 16px;
}
.mycred-history-container .pagination a,
.mycred-history-container .mycred-pagination a,
.mycred-history-container .pagination span {
  padding: 8px 12px; border: 1px solid var(--border); border-radius: 10px;
  text-decoration: none; color: var(--text); background: #fff;
  transition: transform .12s ease, background-color .12s ease;
}
.mycred-history-container .pagination a:hover,
.mycred-history-container .mycred-pagination a:hover {
  transform: translateY(-1px); background: #f9fafb;
}

/* Mobile (cartes) */
@media (max-width: 680px) {
  .mycred-history-container thead { display: none; }
  .mycred-history-container table,
  .mycred-history-container tbody,
  .mycred-history-container tr,
  .mycred-history-container td { display: block; width: 100%; }
  .mycred-history-container tbody tr {
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 12px 14px;
    margin: 10px 0;
    background: #fff;
    box-shadow: var(--shadow);
  }
  .mycred-history-container td { padding: 8px 0; border: 0; }
  .mycred-history-container td.column-entry::before {
    content: "Atividade"; display: block; font-size: 12px; color: var(--muted); margin-bottom: 4px;
  }
  .mycred-history-container td.column-creds::before {
    content: "Pontos"; display: block; font-size: 12px; color: var(--muted); margin-bottom: 4px;
  }
  .mycred-history-container td.column-time::before {
    content: "Data"; display: block; font-size: 12px; color: var(--muted); margin-bottom: 4px;
  }
  .mycred-history-container tr td.column-entry { order: 1; }
  .mycred-history-container tr td.column-time  { order: 2; }
  .mycred-history-container tr td.column-creds { order: 3; }
}
/* Option: masquer la colonne Points si le container a .hide-points */
.mycred-history-container.hide-points th.column-creds,
.mycred-history-container.hide-points td.column-creds { display: none; }
/* Rapprocher solde & historique */
.mycred-my-balance-wrapper { margin: 8px auto 18px; }

/* ====== MOBILE: espace entre "Pontos" et "R$ ..." ====== */
@media (max-width: 680px) {
  .mycred-history-container td.column-creds {
    display: flex !important;
    align-items: center;
    gap: 6px; /* espace propre entre label et valeur */
  }
  .mycred-history-container td.column-creds::before {
    display: inline-block !important;
    margin: 0 6px 0 0; /* espace entre "Pontos" et "R$" */
  }
  .mycred-history-container td.column-creds .points-badge { margin-left: 0; }
}

/* ========== PAGE RESGATE (solution propre) ========== */
/* Masquer uniquement le titre de la page (pas le "Saldo") */
.page-id-760 .entry-header .entry-title,
.page-id-760 h1.entry-title[itemprop="headline"] { display: none !important; }
.page-id-760 .entry-content { max-width: 800px; margin: 0 auto; }

/* ========== CASHCRED (MyCred) – Modern UI ========== */
/* Thème local (couleurs, arrondis, ombres) */
#tab1c, #tab2c, #tab3c, .cashcred-tab {
  --cc-primary: #01a081;
  --cc-primary-600: #019476;
  --cc-bg: #ffffff;
  --cc-soft: #f9fafb;
  --cc-text: #1f2937;
  --cc-muted: #6b7280;
  --cc-border: #e5e7eb;
  --cc-shadow: 0 12px 30px rgba(0,0,0,.08);
  --cc-radius: 14px;
}

/* Card container propre */
#tab1c, #tab2c, #tab3c, .cashcred-tab {
  background: var(--cc-bg);
  border: 1px solid var(--cc-border);
  border-radius: var(--cc-radius);
  box-shadow: var(--cc-shadow);
  padding: 18px;
  margin: 18px 0;
}

/* Barre d’onglets (pills) – limité à la page Resgate */
.page-id-760 li.button {
  background: #fff;
  color: var(--cc-text);
  border: 1px solid var(--cc-border);
  border-radius: 999px;
  padding: 8px 14px;
  margin: 0 6px 10px 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  transition: background .2s ease, border-color .2s ease, transform .12s ease;
}
.page-id-760 li.button:hover {
  background: var(--cc-soft);
  transform: translateY(-1px);
}
.page-id-760 li.button.active {
  border-color: var(--cc-primary);
  background: color-mix(in srgb, var(--cc-primary) 10%, #fff);
  color: var(--cc-text);
  position: relative;
}
.page-id-760 li.button.active::after {
  content: "";
  position: absolute;
  left: 14px; right: 14px; bottom: -6px;
  height: 3px;
  background: var(--cc-primary);
  border-radius: 999px;
}

/* Inputs / selects / textarea */
#tab1c input[type="text"], #tab1c input[type="number"], #tab1c input[type="email"], #tab1c input[type="tel"], #tab1c select, #tab1c textarea,
#tab2c input[type="text"], #tab2c input[type="number"], #tab2c input[type="email"], #tab2c input[type="tel"], #tab2c select, #tab2c textarea,
#tab3c input[type="text"], #tab3c input[type="number"], #tab3c input[type="email"], #tab3c input[type="tel"], #tab3c select, #tab3c textarea,
.cashcred-tab input[type="text"], .cashcred-tab input[type="number"], .cashcred-tab input[type="email"], .cashcred-tab input[type="tel"], .cashcred-tab select, .cashcred-tab textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--cc-border);
  border-radius: 10px;
  background: #fff;
  color: var(--cc-text);
  font-size: 15px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
#tab1c label, #tab2c label, #tab3c label, .cashcred-tab label {
  display: block;
  font-size: 14px;
  color: var(--cc-muted);
  margin: 10px 0 6px 2px;
}
#tab1c input:focus, #tab2c input:focus, #tab3c input:focus, .cashcred-tab input:focus,
#tab1c select:focus, #tab2c select:focus, #tab3c select:focus, .cashcred-tab select:focus,
#tab1c textarea:focus, #tab2c textarea:focus, #tab3c textarea:focus, .cashcred-tab textarea:focus {
  outline: none;
  border-color: var(--cc-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--cc-primary) 20%, transparent);
  background: #fff;
}

/* Boutons d’action CashCred */
#cashcred_save_settings input[type="submit"],
#submit_button input[type="submit"] {
  background: var(--cc-primary);
  color: #fff;
  padding: 12px 20px;
  font-size: 15px;
  font-weight: 600;
  border: 1px solid var(--cc-primary);
  border-radius: 12px;
  cursor: pointer;
  transition: transform .1s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
  box-shadow: 0 8px 18px rgba(1,160,129,.24);
}
#cashcred_save_settings input[type="submit"]:hover,
#submit_button input[type="submit"]:hover {
  background: var(--cc-primary-600);
  border-color: var(--cc-primary-600);
  transform: translateY(-1px);
}
#cashcred_save_settings input[type="submit"]:active,
#submit_button input[type="submit"]:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(1,160,129,.22);
}
#cashcred_save_settings input[type="submit"][disabled],
#submit_button input[type="submit"][disabled] {
  opacity: .6;
  cursor: not-allowed;
}

/* Tables CashCred – look carte, entête soft, hover clair */
#tab1c table, #tab2c table, #tab3c table, .cashcred-tab table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  border: 1px solid var(--cc-border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
  margin-top: 14px;
  font-size: 15px;
}
#tab1c thead th, #tab2c thead th, #tab3c thead th, .cashcred-tab thead th {
  text-align: left;
  font-weight: 600;
  color: #111827;
  background: linear-gradient(180deg, #f9fafb, #f3f4f6);
  padding: 12px 14px;
  border-bottom: 1px solid var(--cc-border);
  white-space: nowrap;
}
#tab1c tbody td, #tab2c tbody td, #tab3c tbody td, .cashcred-tab tbody td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--cc-border);
  color: var(--cc-text);
}
#tab1c tbody tr:hover, #tab2c tbody tr:hover, #tab3c tbody tr:hover, .cashcred-tab tbody tr:hover {
  background: #fafafa;
}
#tab1c tbody tr:last-child td, #tab2c tbody tr:last-child td, #tab3c tbody tr:last-child td, .cashcred-tab tbody tr:last-child td {
  border-bottom: none;
}

/* États (succès / alerte) plus subtils */
#tab2c tbody tr { background: #f0fdf4; border-left: 4px solid #22c55e; }  /* success */
#tab3c tbody tr { background: #fff1f2; border-left: 4px solid #ef4444; }  /* danger */
#tab1c tbody tr { background: #fff7ed; border-left: 4px solid #f59e0b; }  /* notice/info */
#tab1c, #tab2c, #tab3c { border-left: none; } /* on laisse les indicateurs aux lignes */

/* Badges (si le CashCred affiche des statuts) */
#tab1c .badge, #tab2c .badge, #tab3c .badge, .cashcred-tab .badge {
  display: inline-block;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 999px;
  border: 1px solid var(--cc-border);
  background: #f8fafc;
  color: var(--cc-text);
}

/* Helpers responsive tables */
#tab1c, #tab2c, #tab3c, .cashcred-tab { overflow-x: auto; }
#tab1c table, #tab2c table, #tab3c table, .cashcred-tab table { min-width: 720px; }

/* Petit layout form: aligne proprement les colonnes si présentes */
#tab1c .form-row, #tab2c .form-row, #tab3c .form-row, .cashcred-tab .form-row {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 12px;
  margin-bottom: 12px;
}
#tab1c .form-row > *:not(:last-child),
#tab2c .form-row > *:not(:last-child),
#tab3c .form-row > *:not(:last-child),
.cashcred-tab .form-row > *:not(:last-child) { margin-bottom: 0; }
@media (max-width: 768px) {
  #tab1c .form-row, #tab2c .form-row, #tab3c .form-row, .cashcred-tab .form-row {
    grid-template-columns: 1fr;
  }
}

/* Rappels de masquage pour 4e colonne (si nécessaire) */
#tab1c table th:nth-child(4),
#tab1c table td:nth-child(4),
#tab2c table th:nth-child(4),
#tab2c table td:nth-child(4),
#tab3c table th:nth-child(4),
#tab3c table td:nth-child(4) { display: none; }

/* ========== MASQUER (nettoyé) ========== */
#tab2c h4, #tab3c h4, #tab4c h3,
a.um-link[href*="/user/1/"] { display: none; }

/* ========== RESPONSIVE GÉNÉRAL (inchangé) ========== */
@media (max-width: 768px) {
  .mobile-only { display: block; }
  .main-navigation { position: sticky; top: 0; z-index: 999; background-color: #fff; }
  .site-logo img, .sticky-navigation-logo img {
    height: 60px; width: auto; max-width: 100%; transition: height 0.3s ease;
  }
  a.gb-button.gb-button-0be448d2 { display: none; }
}
.sticky-navigation-logo img {
  height: 70px; width: auto; max-width: 100%;
  transition: height 0.3s ease; display: block;
}
.menu-toggle { font-size: 25px; padding: 10px 15px; }
body { -webkit-overflow-scrolling: touch; }
body.fslightbox-open { overflow-y: auto; }
html, body { height: auto; min-height: 100vh; overflow-y: scroll; }
@media (min-width: 769px) { .mobile-only { display: none !important; } }

/* === BOUTON FIXE EN BAS SUR MOBILE (inchangé) === */
.cta-fixed-bottom {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999;
  background-color: #ffffff; padding: 12px 0; text-align: center;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}
.cta-google-style {
  display: block; width: 95%; margin: 0 auto; background-color: #1cbc9c; color: #fff;
  font-size: 16px; font-weight: normal; padding: 14px 0; border: none; border-radius: 999px;
  text-decoration: none; transition: background-color 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 12px rgba(28, 188, 156, 0.3);
}
.cta-google-style:hover { background-color: #17a88b; box-shadow: 0 6px 16px rgba(28, 188, 156, 0.4); }
/* Supprimer le fond blanc derrière les tableaux approuvés et annulés */
#tab2c, #tab3c {
  background: transparent !important;
  box-shadow: none !important; /* enlève l’ombre du bloc si besoin */
  border: none !important; /* enlève la bordure autour */
}
/* Masquer le H1 "titre de page" partout sauf Accueil et Solde (MyCred) */
body.page:not(.home) .inside-article .entry-header > h1.entry-title,
body.page:not(.home) header.entry-header h1.entry-title,
body.page:not(.home) h1.entry-title[itemprop="headline"],
body.page:not(.home) .site-main h1.entry-title {
  display: none !important;
}

/* Exceptions */
.home h1.entry-title { display: block !important; }
.mycred-my-balance-wrapper h1 { display: inline-block !important; }


/* ==== Página Indique um Amigo (escopo isolado) ==== */
.pr-affiliate-page{--c1:#0f4469;--c2:#1bb38c;--ink:#0f2130;--muted:#506070;--bg:#f6faf9}
.pr-affiliate-page{max-width:1100px;margin:0 auto;padding:28px 16px}
.pr-affiliate-page h1,.pr-affiliate-page h2,.pr-affiliate-page h3{color:var(--ink);margin:0 0 .5em}
.pr-affiliate-page p{color:var(--muted);margin:0 0 1em;line-height:1.6}

/* HERO */
.pr-hero{display:grid;grid-template-columns:1.2fr .9fr;gap:28px;align-items:center;background:linear-gradient(135deg,var(--c1),#1a5c88);border-radius:22px;padding:28px}
.pr-hero h1{color:#fff;font-size:clamp(26px,3.2vw,38px);letter-spacing:.2px}
.pr-hero .pr-sub{color:#e6f6ff;font-size:clamp(15px,1.8vw,18px)}
.pr-mini{color:#cfefff;font-size:13px;margin-top:.5rem}
.pr-hero-right .pr-hero-card{background:#0b2f49;border-radius:18px;padding:10px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.pr-hero-right img{display:block;width:100%;height:auto;border-radius:12px}
.pr-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}

/* BOTÕES */
.pr-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 18px;font-weight:700;text-decoration:none;border:2px solid transparent;transition:transform .08s ease, box-shadow .2s ease;white-space:nowrap}
.pr-btn:hover{transform:translateY(-1px)}
.pr-btn:active{transform:translateY(0)}
.pr-btn-primary{background:var(--c2);color:#073f2f;box-shadow:0 8px 18px rgba(27,179,140,.25)}
.pr-btn-primary:hover{box-shadow:0 10px 22px rgba(27,179,140,.35)}
.pr-btn-secondary{background:#fff;color:#124b76;border-color:#cfe8ff}
.pr-btn-ghost{background:transparent;border-color:#5aa6d6;color:#e6f6ff}
.pr-btn-lg{padding:14px 22px;font-size:18px}

/* STEPS */
.pr-steps{padding:32px 6px}
.pr-steps h2{font-size:clamp(22px,2.6vw,28px)}
.pr-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pr-step{background:#fff;border:1px solid #e8eef2;border-radius:18px;padding:18px 16px}
.pr-step-ico{font-size:26px;margin-bottom:6px}
.pr-step h3{font-size:18px;margin-bottom:6px}

/* LINK BOX */
.pr-linkbox{background:var(--bg);border:1px solid #e2f1ec;border-radius:18px;padding:22px 18px;margin:8px 0 10px}
.pr-linkbox h2{font-size:clamp(20px,2.4vw,26px)}
.pr-sub2{color:#567; margin-top:-6px}
.pr-link-row{display:flex;gap:10px;margin:14px 0 6px}
.pr-link-row input{flex:1;border:1.5px solid #cfe3dc;border-radius:10px;padding:12px 14px;font-size:15px;background:#fff}
.pr-tips{font-size:13px;color:#5a6c77}

/* BENEFÍCIOS */
.pr-benefits{padding:8px 6px 18px}
.pr-benefits-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 14px;margin:8px 0 0;padding:0;list-style:none}
.pr-benefits-list li{background:#fff;border:1px solid #e8eef2;border-radius:14px;padding:12px 14px}

/* FAQ */
.pr-faq details{background:#fff;border:1px solid #e8eef2;border-radius:12px;padding:12px 14px;margin:10px 0}
.pr-faq summary{cursor:pointer;font-weight:700;color:var(--ink)}
.pr-faq p{margin-top:8px}

/* CTA FINAL */
.pr-final-cta{display:grid;place-items:center;margin:18px 0 8px}

/* RESPONSIVO */
@media (max-width: 900px){
  .pr-hero{grid-template-columns:1fr}
  .pr-hero-right{order:-1}
}
@media (max-width: 700px){
  .pr-steps-grid{grid-template-columns:1fr}
  .pr-benefits-list{grid-template-columns:1fr}
  .pr-link-row{flex-direction:column}
}
/* ---------- Base & thème ---------- */
.pr-proof{
  --pr-bg:#ffffff;
  --pr-fg:#0f172a;           /* texte principal (bleu très foncé) */
  --pr-muted:#475569;        /* texte secondaire */
  --pr-accent:#2563eb;       /* bleu */
  --pr-accent-2:#7c3aed;     /* violet */
  --pr-success:#16a34a;
  --pr-danger:#dc2626;
  --pr-radius:16px;
  --pr-shadow:0 12px 30px -14px rgba(2,6,23,.25);
}

/* Conteneur carte */
.pr-proof{
  max-width: 760px;
  margin: clamp(16px,4vw,40px) auto;
  padding: 0;
}
.pr-proof .pr-card{
  background: var(--pr-bg);
  border: 1px solid color-mix(in oklab, var(--pr-fg) 10%, transparent);
  border-radius: var(--pr-radius);
  box-shadow: var(--pr-shadow);
  padding: clamp(18px,3.5vw,28px);
}

/* Titres + badges de section */
.pr-proof .pr-title{
  display:flex; align-items:center; gap:.6rem;
  font-size: clamp(20px,2.4vw,24px);
  line-height:1.2; font-weight:800; margin: 0 0 10px;
}
.pr-proof .pr-badge{
  display:inline-grid; place-items:center;
  width:28px; height:28px; border-radius:999px;
  font: 700 14px/1 system-ui, -apple-system, "Inter", sans-serif;
  background: linear-gradient(90deg,var(--pr-accent),var(--pr-accent-2));
  color:#fff;
}

/* Paragraphes & liens */
.pr-proof p{ margin:.5rem 0 0; color: var(--pr-muted); }
.pr-proof a{ color: var(--pr-accent); text-decoration: underline; text-underline-offset:2px; }
.pr-proof a:hover{ text-decoration-thickness: 2px; }

/* Liste d'étapes (si tu utilises <ul>) */
.pr-proof ul{ margin: .25rem 0 0 1.25rem; }
.pr-proof li{ padding-left:.25rem; color: var(--pr-fg); }

/* Bloc formulaire (shortcode) */
.pr-proof .pr-form{
  margin-top: clamp(14px,2.5vw,20px);
  display:grid; gap:10px;
}

/* Champs génériques (fonctionne même si le shortcode ne met pas de classes) */
.pr-proof input[type="url"],
.pr-proof input[type="text"],
.pr-proof input[type="email"],
.pr-proof input[name*="url" i]{
  width:100%;
  border:1px solid color-mix(in oklab, var(--pr-fg) 14%, transparent);
  border-radius:12px;
  padding:12px 14px;
  font: 500 16px/1.2 system-ui, -apple-system, "Inter", sans-serif;
  color: var(--pr-fg);
  background:#fff;
  transition: border-color .2s, box-shadow .2s, transform .02s;
}
.pr-proof input[type="url"]:focus,
.pr-proof input[type="text"]:focus,
.pr-proof input[type="email"]:focus,
.pr-proof input[name*="url" i]:focus{
  outline:none;
  border-color: color-mix(in oklab, var(--pr-accent) 60%, transparent);
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--pr-accent) 20%, transparent);
}

/* Validation visuelle simple pour URL */
.pr-proof input[type="url"]:not(:placeholder-shown):invalid{
  border-color: var(--pr-danger);
  box-shadow: 0 0 0 3px color-mix(in oklab, var(--pr-danger) 20%, transparent);
}

/* Bouton "Enviar" – cible les boutons du shortcode même sans classe */
.pr-proof [type="submit"],
.pr-proof button,
.pr-proof .wp-block-button__link{
  appearance:none;
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:12px; border:0;
  font: 700 15px/1 system-ui, -apple-system, "Inter", sans-serif;
  background: linear-gradient(90deg,var(--pr-accent),var(--pr-accent-2));
  color:#fff; text-decoration:none;
  box-shadow: 0 8px 20px -10px color-mix(in oklab, var(--pr-accent) 60%, transparent);
  cursor:pointer; transition: transform .06s ease, box-shadow .2s ease, filter .2s;
}
.pr-proof [type="submit"]:hover,
.pr-proof button:hover,
.pr-proof .wp-block-button__link:hover{
  transform: translateY(-1px);
  filter: saturate(115%);
}
.pr-proof [type="submit"]:active,
.pr-proof button:active,
.pr-proof .wp-block-button__link:active{
  transform: translateY(0);
}

/* Petites aides/sous-texte */
.pr-proof .pr-hint{
  font-size: 12.5px; color: var(--pr-muted);
}

/* États de message (si ton shortcode affiche une notice) */
.pr-proof .pr-msg{ 
  margin-top:10px; padding:10px 12px; border-radius:10px;
  border:1px solid color-mix(in oklab, var(--pr-fg) 10%, transparent);
}
.pr-proof .pr-msg.success{ 
  background: color-mix(in oklab, var(--pr-success) 8%, #fff);
  border-color: color-mix(in oklab, var(--pr-success) 30%, transparent);
  color: color-mix(in oklab, var(--pr-success) 50%, #000);
}
.pr-proof .pr-msg.error{ 
  background: color-mix(in oklab, var(--pr-danger) 8%, #fff);
  border-color: color-mix(in oklab, var(--pr-danger) 30%, transparent);
  color: color-mix(in oklab, var(--pr-danger) 50%, #000);
}

/* Mode sombre auto */
@media (prefers-color-scheme: dark){
  .pr-proof{
    --pr-bg:#0b1220;
    --pr-fg:#e5e7eb;
    --pr-muted:#9aa4b2;
    --pr-shadow: none;
  }
  .pr-proof .pr-card{ border-color: color-mix(in oklab, var(--pr-fg) 12%, transparent); }
  .pr-proof input[type="url"],
  .pr-proof input[type="text"],
  .pr-proof input[type="email"],
  .pr-proof input[name*="url" i]{ background:#0f172a; border-color:#1f2937; }
}

/* Responsive */
@media (max-width: 600px){
  .pr-proof .pr-card{ padding:16px; border-radius:14px; }
  .pr-proof .pr-title{ font-size: 19px; }
}