/* ── REPRISE (IA + humain) ── bloo-header ──
 * FICHIER : assets/css/www/www-parrainage.css
 * ROLE : Styles de la page publique /parrainage (refonte graphique v2). Deux scenarios visuels
 *        (ami / commercant) avec recompenses, formulaire 3 e-mails, degrade accent.
 *        Tokens de assets/css/bloo-www-2026.css uniquement. Aucune couleur en dur (sauf degrade texte),
 *        aucune bordure/lisere colore sur les cartes (regle produit). FontAwesome cote marquage.
 * APPELE PAR : www/www-parrainage.html (lien ?v= = empreinte).
 * MAJ : 2026-10-17 · creation (parrainage member-to-member)
 *       2026-10-23 · refonte graphique v2 (scenarios visuels, formulaire simplifie)
 * ── fin REPRISE ── */

/* ── Fil d'Ariane ── */
.pr-crumbs{max-width:var(--layout-container-max);margin:0 auto;padding:18px 24px 0}
.pr-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;font-size:.85rem;color:var(--color-on-surface-faint)}
.pr-crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--color-outline)}
.pr-crumbs a{color:var(--color-on-surface-faint);text-decoration:none}
.pr-crumbs a:hover{color:var(--color-primary)}

/* ── Hero ── */
.pr-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;max-width:1080px}
.pr-hero-text{max-width:520px}
.pr-hero-img{border-radius:var(--radius-panel);overflow:hidden;box-shadow:var(--elevation-card)}
.pr-hero-img img{display:block;width:100%;height:auto;object-fit:cover}
.pr-hero h1{font-size:clamp(32px,5vw,56px)}
.pr-hero h1 .g{background:linear-gradient(115deg,var(--color-on-primary-container),var(--color-primary) 40%,var(--brand-deep));-webkit-background-clip:text;background-clip:text;color:transparent}
:root[data-theme="dark"] .pr-hero h1 .g{background:linear-gradient(115deg,var(--color-on-primary-container),var(--color-primary) 45%,#7b93f7);-webkit-background-clip:text;background-clip:text;color:transparent}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .pr-hero h1 .g{background:linear-gradient(115deg,var(--color-on-primary-container),var(--color-primary) 45%,#7b93f7);-webkit-background-clip:text;background-clip:text;color:transparent}}
.pr-hero .lede{color:var(--color-on-surface-variant);max-width:58ch}

/* ── Scenarios visuels (ami / commercant) ── */
.pr-scenarios{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:0 auto}
.pr-scenario{position:relative;background:var(--color-surface-container-high);border:1px solid var(--color-outline-variant);border-radius:var(--radius-panel);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--elevation-card);transition:transform 180ms var(--motion-ease),box-shadow 180ms var(--motion-ease)}
.pr-scenario:hover{transform:translateY(-3px);box-shadow:var(--elevation-2)}
.pr-scenario-photo{width:100%;aspect-ratio:3/2;overflow:hidden}
.pr-scenario-photo img{display:block;width:100%;height:100%;object-fit:cover}
.pr-scenario-body{padding:24px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;flex:1}
.pr-scenario h3{font-size:clamp(18px,2vw,22px);font-weight:800;margin-bottom:8px}
.pr-scenario-desc{color:var(--color-on-surface-variant);font-size:14.5px;line-height:1.55;margin-bottom:20px}

/* Fleche de recompense */
.pr-reward{display:flex;flex-direction:column;gap:12px;width:100%}
.pr-reward-row{display:flex;align-items:center;gap:12px;background:var(--color-surface-container);border-radius:var(--radius-btn);padding:12px 16px;text-align:left}
.pr-reward-row i{flex:0 0 auto;font-size:18px;color:var(--color-primary);width:24px;text-align:center}
.pr-reward-row .pr-who{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-on-surface-faint);line-height:1.3}
.pr-reward-row .pr-what{font-size:15px;font-weight:700;color:var(--color-on-surface);line-height:1.35}
.pr-reward-row .pr-what strong{color:var(--color-primary)}

/* Separateur "ou" */
.pr-or{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--color-on-surface-faint);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.pr-or::before,.pr-or::after{content:"";flex:1;height:1px;background:var(--color-outline-variant)}

/* ── Formulaire simplifie ── */
.pr-form-sec .wrap{max-width:640px}
.pr-form{display:grid;gap:20px}
.pr-field{display:grid;gap:6px}
.pr-field>label{font-weight:600;color:var(--color-on-surface);font-size:14px}
.pr-field>label small{font-weight:400;color:var(--color-on-surface-faint)}
.pr-field input[type="email"]{width:100%;padding:12px 14px;border-radius:var(--radius-btn);border:1px solid var(--color-outline);background:var(--color-surface-container-high);color:var(--color-on-surface);font-size:15px;font-family:var(--font-sans);transition:border-color var(--motion-dur),box-shadow var(--motion-dur)}
.pr-field input[type="email"]:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(142,166,255,.18)}
.pr-field input[type="email"]::placeholder{color:var(--color-on-surface-faint)}

.pr-friends-grid{display:grid;gap:10px}
.pr-friend-row{display:flex;gap:8px;align-items:center}
.pr-friend-row input{flex:1 1 auto}
.pr-rm{flex:0 0 auto;width:36px;height:36px;border:1px solid var(--color-outline-variant);border-radius:var(--radius-btn);background:var(--color-surface-container);color:var(--color-on-surface-faint);cursor:pointer;font-size:14px;display:grid;place-items:center;transition:color var(--motion-dur),border-color var(--motion-dur)}
.pr-rm:hover{color:var(--color-on-surface);border-color:var(--color-outline)}

.pr-add-row{display:flex;gap:10px;align-items:center}

/* Piege a robots */
.pr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Messages */
.pr-msg{padding:12px 16px;border-radius:var(--radius-btn);font-size:14.5px}
.pr-msg-ok{background:var(--color-primary-container);color:var(--color-on-primary-container)}
.pr-msg-err{background:var(--color-surface-container);color:var(--color-on-surface)}

/* CTA et note */
#pr-submit{width:100%;justify-content:center;font-size:16px;height:52px}
#pr-submit[disabled]{opacity:.6;cursor:progress}
.pr-note-cta{display:flex;align-items:center;gap:10px;color:var(--color-on-surface-variant);font-size:14px;line-height:1.5;padding:14px 16px;background:var(--color-surface-container);border-radius:var(--radius-btn)}
.pr-note-cta i{flex:0 0 auto;font-size:18px;color:var(--color-primary)}
.pr-consent{color:var(--color-on-surface-faint);font-size:12.5px;line-height:1.55;margin:0}

/* ── Type selector (radio PERSO / PRO) ── */
.pr-type{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pr-type legend{grid-column:1/-1;font-weight:700;color:var(--color-on-surface);margin-bottom:4px;font-size:14px}
.pr-opt{position:relative;display:block;cursor:pointer}
.pr-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.pr-opt-in{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--color-surface-container);border:1px solid var(--color-outline-variant);border-radius:var(--radius-btn);padding:14px 12px;text-align:center;transition:box-shadow var(--motion-dur),background var(--motion-dur)}
.pr-opt-in i{color:var(--color-on-surface-faint);font-size:20px}
.pr-opt-in strong{display:block;color:var(--color-on-surface);font-size:14px}
.pr-opt-in small{display:block;color:var(--color-on-surface-faint);font-size:12px;line-height:1.4}
.pr-opt input:checked+.pr-opt-in{background:var(--color-surface-container-high);box-shadow:0 2px 12px rgba(142,166,255,.12)}
.pr-opt input:checked+.pr-opt-in i{color:var(--color-primary)}
.pr-opt input:focus-visible+.pr-opt-in{outline:2px solid var(--color-primary);outline-offset:2px}

/* ── Etats de retour ── */
.pr-state .in,.pr-invite .in{max-width:680px;margin:0 auto;text-align:center}
.pr-badge{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;font-size:2rem;margin-bottom:1rem}
.pr-badge-ok{background:var(--color-primary-container);color:var(--color-primary)}
.pr-badge-err{background:var(--color-surface-container);color:var(--color-on-surface-faint)}
.pr-invite .pr-note{color:var(--color-on-surface-faint);font-size:14px;margin-top:12px}

/* ── Responsive ── */
@media(max-width:680px){
  .pr-hero-grid{grid-template-columns:1fr;gap:24px}
  .pr-hero-img{max-width:400px;margin:0 auto}
  .pr-scenarios{grid-template-columns:1fr}
  .pr-type{grid-template-columns:1fr}
}
@media(max-width:420px){
  .pr-scenario{padding:24px 20px}
}
