/* Le site du fidèle — don.consistoire.org (docs/SPEC-ESPACE-DON.md).
   Feuille COMMUNE : jetons, polices, en-tête, pied de page, fenêtre de connexion, champs, et l'espace fidèle.
   Les couleurs viennent de la palette choisie dans le back-office : chaque page émet un bloc :root{…}
   (Core\Formulaires\Palette::css) AVANT cette feuille. Les sections propres à l'accueil sont dans
   don-accueil.css. Aucune police externe (D58) : Plus Jakarta Sans et Fraunces (italique) sont hébergées par le CRM.
   La feuille est servie depuis /public/assets/css/ : les chemins des polices lui sont relatifs. */
@font-face{
  font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;
  src:url("../fonts/don/plus-jakarta-sans-latin-wght.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Fraunces";font-style:italic;font-weight:100 900;font-display:swap;
  src:url("../fonts/don/fraunces-italic-latin-wght.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{
  --ink:#141a2e; --muted:#535b73; --faint:#6f7789; --white:#fff;
  --ok:#1c6b43; --ok-pale:#e6f5ec; --alerte:#a3262b; --alerte-pale:#fdecec;
  --r-xl:28px; --r-lg:20px; --r-md:14px;
  --shadow:0 24px 60px rgba(var(--navy-deep-rgb),.16); --shadow-soft:0 10px 30px rgba(var(--navy-deep-rgb),.08);
  --sans:"Plus Jakarta Sans",-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  --serif:"Fraunces",Georgia,"Times New Roman","Noto Serif",serif;
}
/* Réglages de base dans une couche CSS déclarée la PREMIÈRE (donc la plus faible) : là où une page charge aussi la
   feuille Tailwind du CRM (écrans de l'espace pas encore réécrits), ses utilitaires (text-*, bg-*) l'emportent sur
   ces réglages d'éléments. site.css est toujours chargée avant les autres feuilles. */
@layer site-base{
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  button,input,select,textarea{font:inherit;color:inherit}
  button{cursor:pointer}
  svg{flex:none}
}
.wrap{width:min(1200px,calc(100% - 40px));margin:0 auto}
/* L'espace fidèle est plus large sur grand écran : en-tête, menu, contenu et pied suivent (body.espace-fidele). */
.espace-fidele .wrap{width:min(1400px,calc(100% - 40px))}
.ico{width:22px;height:22px}
.ico-sm{width:18px;height:18px}
.ico-xs{width:15px;height:15px}
.ico-grand{width:64px;height:64px;opacity:.92}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.serif{font-family:var(--serif);font-style:italic;font-weight:600;letter-spacing:-.01em}
[hidden]{display:none !important}

/* ── Boutons ───────────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:12px 20px;font-weight:700;font-size:15px;line-height:1.2;border:1.5px solid transparent;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap;background:none;cursor:pointer}
.btn:hover{transform:translateY(-1px)}
.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
/* border-box : le dégradé couvre aussi la bordure transparente du .btn (sinon il s'y répète, bords
   de la couleur du côté opposé). La bordure reste, pour la même taille que .btn-outline. */
.btn-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold) 55%,var(--gold-strong)) border-box;color:var(--navy-deep);box-shadow:0 10px 24px rgba(var(--gold-rgb),.35)}
.btn-gold:hover{box-shadow:0 14px 30px rgba(var(--gold-rgb),.45)}
.btn-navy{background:var(--navy);color:#fff;box-shadow:0 10px 24px rgba(var(--navy-rgb),.28)}
.btn-navy:hover{background:var(--navy-ink)}
.btn-outline{border-color:#cbd3e4;color:var(--navy);background:#fff}
.btn-outline:hover{border-color:var(--navy)}
.btn-white{background:#fff;color:var(--navy-deep);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.btn-ghost{color:var(--navy);padding-left:8px;padding-right:8px}
.btn-lg{padding:16px 26px;font-size:16.5px}
.btn-sm{padding:8px 14px;font-size:14px;gap:7px}
.btn-bloc{width:100%}
.btn[aria-disabled="true"],.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}

/* ── Annonce de saison ─────────────────────────────────────────────────── */
.annonce{background:linear-gradient(90deg,var(--gold-strong),var(--gold) 40%,var(--gold-light));color:var(--navy-deep);font-size:14px;font-weight:600}
.annonce .wrap{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;position:relative;padding:6px 36px;text-align:center}
.annonce a{text-decoration:underline;text-underline-offset:3px;font-weight:800;white-space:nowrap}
.annonce .fermer{position:absolute;right:0;background:none;border:0;color:var(--navy-deep);opacity:.65;padding:6px}
.annonce .fermer:hover{opacity:1}

/* ── En-tête ───────────────────────────────────────────────────────────── */
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid rgba(15,23,42,.06)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.brand img{height:46px;width:auto;display:block}
.nav{display:flex;gap:28px;font-size:15px;font-weight:600;color:#38415c}
.nav a{position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold);transform:scaleX(0);transition:transform .2s}
.nav a:hover::after,.nav a:focus-visible::after,.nav a[aria-current]::after{transform:scaleX(1)}
.nav a[aria-current]{color:var(--navy-deep)}
.actions{display:flex;gap:10px;align-items:center}
.moi{position:relative}
.moi-bouton{display:inline-flex;align-items:center;gap:10px;padding:5px 14px 5px 5px;border-radius:999px;border:1.5px solid #dfe3ee;background:#fff;font-weight:700;font-size:15px;color:var(--navy-deep)}
.moi-bouton:hover,.moi-bouton[aria-expanded="true"]{border-color:var(--navy)}
.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13.5px;color:var(--navy-deep);background:linear-gradient(135deg,var(--gold-light),var(--gold));flex:none}
.avatar-lg{width:56px;height:56px;font-size:19px}
.moi-menu{position:absolute;right:0;top:calc(100% + 10px);width:290px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:8px;z-index:40}
.moi-menu .qui{padding:12px 12px 14px;border-bottom:1px solid var(--line);margin-bottom:6px}
.moi-menu .qui strong{display:block;font-size:15.5px}
.moi-menu .qui span{font-size:13px;color:var(--muted);word-break:break-all}
.moi-menu a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;font-size:14.5px;font-weight:600;color:#2b3450}
.moi-menu a:hover,.moi-menu a:focus-visible{background:var(--bg);outline:0}
.moi-menu a svg{color:#8a92a6}
.moi-menu .sep{height:1px;background:var(--line);margin:6px 4px}
.cloche{position:relative}
.cloche-bouton{position:relative;width:44px;height:44px;border-radius:50%;border:1.5px solid #dfe3ee;background:#fff;display:grid;place-items:center;color:var(--navy-deep);cursor:pointer}
.cloche-bouton:hover,.cloche-bouton[aria-expanded="true"]{border-color:var(--navy)}
.cloche-compte{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;border-radius:999px;padding:0 5px;display:grid;place-items:center;background:#d8452f;color:#fff;font-size:11px;font-weight:800;border:2px solid #fff}
.cloche-menu{position:absolute;right:0;top:calc(100% + 10px);width:360px;max-width:calc(100vw - 24px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:8px;z-index:41}
.cloche-tete{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:4px}
.cloche-tete strong{font-size:15.5px}
.cloche-tete span{font-size:12.5px;color:var(--faint)}
.cloche-liste{max-height:min(420px,60vh);overflow:auto}
.cloche-item{display:flex;gap:11px;align-items:flex-start;padding:10px 12px;border-radius:12px;color:#2b3450;position:relative}
.cloche-item:hover,.cloche-item:focus-visible{background:var(--bg);outline:0}
.cloche-item b{display:block;font-size:14px;font-weight:700}
.cloche-item small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.cloche-item.nouveau b::after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#d8452f;margin-left:7px;vertical-align:middle}
.cloche-ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--gold-pale);color:var(--gold-strong);flex:none}
.cloche-vide{margin:0;padding:14px 12px;font-size:14px;color:var(--muted)}
.cloche-pied{display:flex;justify-content:center;align-items:center;gap:6px;padding:10px;margin-top:4px;border-top:1px solid var(--line);font-size:13.5px;font-weight:800;color:var(--navy)}
.compte{min-width:22px;height:22px;border-radius:999px;padding:0 7px;display:inline-grid;place-items:center;background:#d8452f;color:#fff;font-size:12px;font-weight:800;margin-left:auto}

/* ── Bandeaux (pages du site, espace) ──────────────────────────────────── */
.bandeau{position:relative;background:var(--navy-deep);color:#fff;overflow:hidden}
.bandeau .photo{position:absolute;inset:0 0 0 38%;background-size:cover;background-position:center}
.bandeau .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy-deep) 0%,rgba(var(--navy-deep-rgb),.92) 22%,rgba(var(--navy-deep-rgb),.55) 55%,rgba(var(--navy-deep-rgb),.25) 100%),linear-gradient(0deg,rgba(var(--navy-deep-rgb),.95) 0%,rgba(var(--navy-deep-rgb),0) 45%)}
.bandeau .motif{position:absolute;inset:0;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.2'%3E%3Cpath d='M32 10 L50 41 L14 41 Z'/%3E%3Cpath d='M32 54 L14 23 L50 23 Z'/%3E%3C/g%3E%3C/svg%3E")}
.bandeau .halo{position:absolute;width:620px;height:620px;left:-180px;top:-240px;border-radius:50%;background:radial-gradient(circle,rgba(var(--gold-rgb),.3),rgba(var(--gold-rgb),0) 65%)}
.bandeau .wrap{position:relative;padding:44px 0 56px;display:flex;flex-direction:column;gap:14px}
.bandeau h1{margin:0;font-size:clamp(34px,4.4vw,54px);line-height:1.04;letter-spacing:-.035em;font-weight:800;max-width:720px}
.bandeau h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-light);letter-spacing:-.02em}
.bandeau p{margin:0;max-width:620px;font-size:17px;color:rgba(255,255,255,.82)}
.pastille{display:inline-flex;align-items:center;gap:9px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13.5px;font-weight:600;align-self:flex-start}

/* ── Cartes, titres, badges ────────────────────────────────────────────── */
.carte{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-soft)}
.carte-p{padding:26px 28px}
.surtitre{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-strong)}
.sous{color:var(--muted)}
.lien-fort{font-weight:800;color:var(--navy);display:inline-flex;gap:7px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:12.5px;font-weight:800;white-space:nowrap}
.b-vert{background:var(--ok-pale);color:var(--ok)}
.b-or{background:var(--gold-pale);color:var(--gold-strong)}
.b-bleu{background:#e8edfb;color:var(--navy)}
.b-gris{background:#eef0f4;color:var(--muted)}
.b-rouge{background:var(--alerte-pale);color:var(--alerte)}
.encart{display:flex;gap:11px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--bg);font-size:14px;color:#3d4660;line-height:1.5}
.encart svg{margin-top:1px}
.encart.or{background:var(--gold-pale);color:#5b4410}
.encart.vert{background:var(--ok-pale);color:#164f33}
.encart.rouge{background:var(--alerte-pale);color:#7a1c20}
.separateur{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:13px;font-weight:700}
.separateur::before,.separateur::after{content:"";flex:1;height:1px;background:var(--line)}

/* ── Champs ────────────────────────────────────────────────────────────── */
.champ{display:flex;flex-direction:column;gap:7px}
.champ label,.etiquette{font-size:13.5px;font-weight:800;color:#2b3450}
.champ .facultatif{font-weight:600;color:var(--faint)}
/* Champ avec un lien à droite du libellé (« Mot de passe oublié ? ») : le lien est écrit APRÈS le champ pour que la
   tabulation passe du champ précédent au champ, puis au lien ; la grille le remonte sur la ligne du libellé. */
.champ.avec-lien{display:grid;grid-template-columns:1fr auto;column-gap:10px;row-gap:7px;align-items:baseline}
.champ.avec-lien>label{grid-row:1;grid-column:1}
.champ.avec-lien>.saisie{grid-row:2;grid-column:1/-1}
.champ.avec-lien>.lien-champ{grid-row:1;grid-column:2;font-size:13.5px;font-weight:700;color:var(--navy)}
.saisie{height:50px;border:1.5px solid #d9dce6;border-radius:14px;background:#fbfcfe;padding:0 16px;font-size:16px;width:100%;color:var(--ink)}
.saisie:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 4px rgba(var(--navy-rgb),.1);background:#fff}
.saisie[aria-invalid="true"]{border-color:var(--alerte)}
select.saisie{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23535b73'%3E%3Cpath fill-rule='evenodd' d='M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:40px}
.saisie.code{font-size:26px;letter-spacing:.5em;text-align:center;font-weight:800;color:var(--navy-deep);padding-left:.5em}
.case{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:#2b3450;cursor:pointer}
.case input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--navy);flex:none}
.aide-champ{font-size:13px;color:var(--faint)}
.erreur{color:var(--alerte);font-size:13.5px;font-weight:600}

/* Onglets segmentés */
.onglets{display:flex;gap:4px;background:var(--bg);border-radius:999px;padding:4px}
.onglet{flex:1;border:0;background:none;border-radius:999px;padding:10px 14px;font-weight:700;font-size:14.5px;color:var(--muted);display:inline-flex;gap:8px;align-items:center;justify-content:center}
.onglet[aria-selected="true"]{background:#fff;color:var(--navy-deep);box-shadow:0 2px 8px rgba(var(--navy-deep-rgb),.12)}

/* ── Fenêtre de connexion (et page /connexion) ─────────────────────────── */
.voile{position:fixed;inset:0;background:rgba(11,26,77,.55);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}
.fenetre{width:min(900px,100%);display:grid;grid-template-columns:350px minmax(0,1fr);background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 40px 100px rgba(5,12,40,.45);position:relative;margin:auto}
.fenetre.en-page{box-shadow:var(--shadow);margin:40px auto}
.fenetre .gauche{background:linear-gradient(155deg,var(--navy) 0%,var(--navy-ink) 45%,var(--indigo) 100%);color:#fff;padding:36px 32px;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:22px}
.fenetre .gauche::before{content:"";position:absolute;right:-110px;top:-110px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(var(--gold-rgb),.38),rgba(var(--gold-rgb),0) 70%)}
.fenetre .gauche img{height:34px;width:auto;align-self:flex-start;position:relative}
.fenetre .gauche h2{margin:0;font-size:27px;line-height:1.12;letter-spacing:-.025em;position:relative}
.fenetre .gauche h2 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-light)}
.fenetre .gauche .bas{margin:auto 0 0;font-size:13px;color:rgba(255,255,255,.74);position:relative}
.avantages-f{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;position:relative}
.avantages-f li{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:rgba(255,255,255,.9)}
.avantages-f li svg{color:var(--gold-light);margin-top:1px}
.avantages-f li b{display:block;color:#fff;font-size:15px}
.fenetre .droite{padding:34px 38px 30px;display:flex;flex-direction:column;gap:18px}
.fenetre .droite h2{margin:0;font-size:27px;letter-spacing:-.03em}
.fenetre .droite .chapeau{margin:4px 0 0;font-size:14.5px;color:var(--muted)}
.fenetre form{display:flex;flex-direction:column;gap:16px;margin:0}
.fermer-f{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:0;background:var(--bg);color:var(--muted);display:grid;place-items:center;z-index:2}
.fermer-f:hover{color:var(--ink)}
.deux-boutons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.securite{display:flex;gap:8px;align-items:center;font-size:12.5px;color:var(--faint);margin:0}
.lien-simple{background:none;border:0;padding:0;color:var(--navy);font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
body.fenetre-ouverte{overflow:hidden}

/* ── Pages simples du site (connexion, mot de passe…) ───────────────────── */
.page-simple{padding:48px 0 64px}
.page-simple .carte{max-width:560px;margin:0 auto}
.page-simple h1{margin:0 0 6px;font-size:30px;letter-spacing:-.03em}

/* ── Pages de don et tunnel de paiement, dans le site ──────────────────── */
.page-don{padding:32px 0 64px}
.page-don-carte{max-width:780px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow)}
.pay-wrap{max-width:720px;margin:0 auto;padding:40px 16px 64px}
.pay-card{background:#fff;border-radius:var(--r-xl);box-shadow:var(--shadow-soft);border:1px solid var(--line);overflow:hidden}
/* Les rares utilitaires Tailwind des vues publiques (le site ne charge pas la feuille du CRM). */
.text-red-500{color:#dc2626}.text-amber-700{color:#b45309}.text-slate-800{color:#1e293b}.text-slate-500{color:#64748b}.text-slate-200{color:#e2e8f0}
.text-sm{font-size:14px}.text-lg{font-size:18px}.text-5xl{font-size:48px;line-height:1}.text-center{text-align:center}
.font-bold{font-weight:700}.font-black{font-weight:900}.inline-block{display:inline-block}.p-8{padding:32px}.mt-2{margin-top:8px}.mt-5{margin-top:20px}.mb-3{margin-bottom:12px}

/* ── Créer / activer son espace ────────────────────────────────────────── */
.inscription{padding:0 0 64px}
.inscription-carte{max-width:720px;margin:-36px auto 0;position:relative;box-shadow:var(--shadow)}
.inscription-form{display:flex;flex-direction:column;gap:18px;margin:0}
.grille-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.grille-cp{display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px}
.civilite{border:0;margin:0;padding:0}
.civilite legend{padding:0;margin-bottom:7px}
.pilules{display:flex;gap:10px}
.pilules label{flex:1;position:relative;cursor:pointer}
.pilules input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pilules span{display:block;text-align:center;padding:12px;border:1.5px solid #d9dce6;border-radius:14px;font-weight:700;background:#fbfcfe}
.pilules input:checked+span{border-color:var(--navy);background:#e8edfb;color:var(--navy-deep)}
.pilules input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.regles-mdp{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--faint)}
.regles-mdp li{display:flex;gap:8px;align-items:center}
.regles-mdp li::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid #c5cad8;flex:none}
.regles-mdp li.ok{color:var(--ok)}
.regles-mdp li.ok::before{border-color:var(--ok);background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23fff'%3E%3Cpath d='M8 13.2 4.8 10l-1.1 1.1L8 15.4l8.3-8.3-1.1-1.1z'/%3E%3C/svg%3E") center/12px no-repeat}
.titre-i{margin:6px 0 6px;font-size:26px;letter-spacing:-.03em}
.doublons{display:flex;flex-direction:column;gap:10px;margin:18px 0 10px}
.doublon{display:flex;gap:14px;align-items:center;width:100%;text-align:left;padding:14px 16px;border:1.5px solid #dfe3ee;border-radius:16px;background:#fff}
.doublon strong{display:block;font-size:15px}
.doublon small{display:block;font-size:13px;color:var(--muted)}
.doublon .rond-choix{width:22px;height:22px;border-radius:50%;border:2px solid #c5cad8;flex:none;display:grid;place-items:center}
.doublon[aria-pressed="true"]{border-color:var(--navy);box-shadow:0 0 0 4px rgba(var(--navy-rgb),.08)}
.doublon[aria-pressed="true"] .rond-choix{border-color:var(--navy)}
.doublon[aria-pressed="true"] .rond-choix::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--navy)}
.actions-i{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.succes-i{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.rond-succes{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--ok-pale);color:var(--ok)}
.rond-succes svg{width:34px;height:34px}
/* ── Listes déroulantes (TomSelect) — rendu de la liste « Communauté » du CRM (Kéhila → Paiements), demande de
   l'utilisateur du 2026-10-20 : champ blanc, fine bordure grise, coins de 8 px, anneau bleu au focus ; liste ouverte
   à fine bordure, survol ambré, lettres trouvées surlignées. Vaut pour toutes les listes enrichies du site (site-listes.js
   et celles qu'une page initialise elle-même : panier, Mes communautés, création d'espace). Préfixe html : passe devant
   la feuille de TomSelect, chargée après celle-ci sur certaines pages. ── */
html .ts-wrapper{padding:0!important;border:0!important;background:none!important;box-shadow:none!important;outline:0!important;height:auto!important;min-height:0}
html .ts-wrapper.single .ts-control,html .ts-wrapper.multi .ts-control{
  min-height:max(40px,var(--ts-h,40px));padding:0 12px;display:flex;align-items:center;flex-wrap:nowrap;
  background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:var(--ink);font-size:15px;line-height:1.25;
  box-shadow:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}
html .ts-wrapper.multi .ts-control{flex-wrap:wrap;padding:4px 8px}
html .ts-wrapper .ts-control>input{font-size:inherit;line-height:1.25;margin:0;color:inherit;cursor:text;min-width:4rem}
html .ts-wrapper .ts-control>input::placeholder{color:#94a3b8;opacity:1}
html .ts-wrapper.single .ts-control>.item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%}
html .ts-wrapper.single.ts-editing .ts-control>.item{display:none}
html .ts-wrapper.single .ts-control>.item[data-value=""]{color:#94a3b8}
html .ts-wrapper.single .ts-control::after{display:none}
html .ts-wrapper.focus .ts-control,html .ts-wrapper.input-active .ts-control{border-color:transparent;box-shadow:0 0 0 2px #3b82f6}
html .ts-wrapper.disabled .ts-control{opacity:.6;cursor:not-allowed;background:#f8fafc}
html .ts-wrapper.ts-invalide .ts-control,html .is-err .ts-wrapper .ts-control,html .ts-wrapper.invalide .ts-control{border-color:#ef4444}
html .ts-wrapper.ts-invalide.focus .ts-control,html .is-err .ts-wrapper.focus .ts-control{box-shadow:0 0 0 2px #ef4444}
/* Liste courte (pas de recherche) : on la reconnaît à son chevron, comme une liste native. */
html .ts-wrapper.single.ts-sans-recherche .ts-control{padding-right:36px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z'/%3E%3C/svg%3E") no-repeat right 12px center/18px}
html .ts-wrapper.single.ts-sans-recherche.disabled .ts-control{background-color:#f8fafc}
html .ts-wrapper.plugin-clear_button .clear-button{right:10px;color:#94a3b8;font-size:20px}
html .ts-wrapper.plugin-clear_button .clear-button:hover{color:var(--ink)}
html .ts-dropdown{z-index:2000;margin-top:4px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:var(--ink);overflow:hidden;
  box-shadow:0 20px 25px -5px rgba(0,0,0,.10),0 8px 10px -6px rgba(0,0,0,.06)}
html .ts-dropdown .ts-dropdown-content{max-height:15rem}
html .ts-dropdown .option{padding:8px 12px;font-size:14px;min-height:36px;cursor:pointer;transition:background .12s}
html .ts-dropdown .option:hover,html .ts-dropdown .option.active{background:#fffbeb;color:var(--ink)}
html .ts-dropdown .option.selected{font-weight:600}
html .ts-dropdown .highlight{background:rgba(59,130,246,.18);border-radius:2px;color:inherit}
html .ts-dropdown .optgroup-header{padding:8px 12px 4px;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#64748b;background:#f8fafc}
html .ts-dropdown .no-results{padding:8px 12px;font-size:14px;color:#64748b}
html .ts-dropdown.ts-input-active .option[data-value=""]{display:none}
@media (pointer:coarse){html .ts-wrapper .ts-control,html .ts-dropdown .option{font-size:16px}}

/* ── Espace fidèle ─────────────────────────────────────────────────────── */
.espace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;padding:32px 0 64px;align-items:start}
.rail-nav{background:#fff;border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:3px;position:sticky;top:96px}
.identite{display:flex;gap:13px;align-items:center;padding:8px 8px 18px;border-bottom:1px solid var(--line);margin-bottom:10px}
.identite strong{display:block;font-size:16px;letter-spacing:-.01em}
.identite div span{display:block;font-size:12.5px;color:var(--muted);line-height:1.35;word-break:break-all}
.rail-nav a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:13px;font-size:14.5px;font-weight:650;color:#3a4360;position:relative}
.rail-nav a svg{color:#8a92a6;width:20px;height:20px}
.rail-nav a:hover{background:var(--bg)}
.rail-nav a[aria-current]{background:var(--gold-pale);color:var(--navy-deep);font-weight:800}
.rail-nav a[aria-current] svg{color:var(--gold-strong)}
.rail-nav a[aria-current]::before{content:"";position:absolute;left:-16px;top:9px;bottom:9px;width:4px;border-radius:0 4px 4px 0;background:var(--gold)}
.rail-nav .sep{height:1px;background:var(--line);margin:8px 6px}
.rail-nav .titre-groupe{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);padding:10px 12px 4px}
.rail-nav a.discret{font-size:13.5px;color:var(--muted);font-weight:600;padding:9px 12px}
.contenu-espace{min-width:0}
.entete-page{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;flex-wrap:wrap}
.entete-page h1{margin:0;font-size:34px;letter-spacing:-.035em;line-height:1.08}
.entete-page h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-strong)}
.entete-page p{margin:6px 0 0;color:var(--muted);font-size:15.5px}
.onglets-bas{display:none}

/* ── Écrans de l'espace (lot E3) : accueil, Mes dons, À régler, Mes reçus, Mon profil ─ */
.titre-bloc{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:30px 0 14px}
.titre-bloc:first-child{margin-top:0}
.titre-bloc h2{margin:0;font-size:22px;letter-spacing:-.025em;line-height:1.15}
.titre-bloc h2 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-strong)}
.titre-bloc p{margin:4px 0 0;color:var(--muted);font-size:14.5px}
.titre-bloc a{font-weight:800;color:var(--navy);display:inline-flex;gap:6px;align-items:center;white-space:nowrap;font-size:14.5px}
.bandeau-chiffres{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}
.bandeau-chiffres.trois{grid-template-columns:repeat(3,minmax(0,1fr))}
.chiffre{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;min-width:0}
.chiffre span{display:block;font-size:12.5px;color:var(--muted);font-weight:700}
.chiffre b{display:block;font-size:26px;letter-spacing:-.02em;margin-top:2px;line-height:1.2}
.chiffre small{display:block;font-size:12.5px;color:var(--faint)}
.chiffre.or{background:linear-gradient(145deg,var(--navy-deep),var(--navy));border:0;color:#fff}
.chiffre.or span,.chiffre.or small{color:rgba(255,255,255,.72)}
.chiffre.or b{color:var(--gold-light)}
.filtres{display:flex;gap:10px;align-items:center;margin:0 0 6px;flex-wrap:wrap}
.filtre{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 14px;border-radius:12px;border:1.5px solid #dfe3ee;background:#fff;font:inherit;font-weight:700;font-size:14px;color:#2b3450}
select.filtre{padding-right:34px;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236f7789'%3E%3Cpath d='M5.3 7.3a1 1 0 0 1 1.4 0L10 10.6l3.3-3.3a1 1 0 1 1 1.4 1.4l-4 4a1 1 0 0 1-1.4 0l-4-4a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E") right 11px center/16px no-repeat;cursor:pointer}
.filtre:focus-visible,.filtre:focus-within{outline:0;border-color:var(--navy);box-shadow:0 0 0 4px rgba(var(--navy-rgb),.1)}
.filtre.recherche{flex:1;min-width:200px;color:var(--faint);font-weight:500}
.filtre.recherche input{border:0;outline:0;background:none;font:inherit;font-size:14.5px;color:var(--ink);width:100%;height:100%}
.mois{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:22px 0 10px}
.lignes{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;container-type:inline-size}
.ligne{display:flex;align-items:center;gap:16px;padding:16px 20px;border-top:1px solid var(--line)}
.ligne:first-child{border-top:0}
.pico{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:none}
.pico svg{width:22px;height:22px}
.pico.don{background:var(--gold-pale);color:var(--gold-strong)}
.pico.promesse{background:#e8edfb;color:var(--navy)}
.pico.kippour{background:#efe9fb;color:#5b3fb8}
.pico.adhesion{background:var(--ok-pale);color:var(--ok)}
.pico.evenement{background:#fdeee6;color:#b4501e}
.ligne .quoi{flex:1;min-width:0}
.ligne .quoi strong{display:block;font-size:15.5px;letter-spacing:-.01em}
.ligne .quoi span{display:block;font-size:13.5px;color:var(--muted)}
.ligne .combien{text-align:right;min-width:96px}
.ligne .combien b{display:block;font-size:17px;white-space:nowrap}
.ligne .combien small{font-size:12.5px;color:var(--faint)}
.ligne .suite{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex:none;min-width:200px}
/* Une liste étroite (colonne de l’accueil, téléphone) : l’état et l’action passent sous le titre. */
@container (max-width:640px){
  .ligne{flex-wrap:wrap;gap:10px 14px;padding:14px 16px}
  .ligne .quoi{flex:1 1 calc(100% - 170px)}
  .ligne .suite{min-width:0;width:100%;justify-content:flex-start;padding-left:58px}
  .ligne .suite:empty{display:none}
}
.ligne .suite .badge{white-space:nowrap}
.ligne[hidden],.mois[hidden],.lignes[hidden]{display:none}
.bouton-ico{width:40px;height:40px;border-radius:12px;border:1.5px solid #dfe3ee;background:#fff;display:grid;place-items:center;color:var(--navy);flex:none}
.bouton-ico:hover{border-color:var(--navy)}
.bouton-ico svg{width:19px;height:19px}
/* « Retirer » une ligne commencée par le fidèle (2026-10-20) : bouton d'icône discret, rouge au survol. */
.form-retrait{margin:0;display:inline-flex}
.bouton-retrait{cursor:pointer;color:#6b7280}
.bouton-retrait:hover{border-color:var(--alerte);color:var(--alerte)}
.bouton-retrait:focus-visible{outline:3px solid rgba(163,38,43,.35);outline-offset:2px}
.btn-danger{background:var(--alerte);color:#fff}
.btn-danger:hover{background:#871f23}
/* Boîte de confirmation du site (site.js, formulaires [data-confirmer]). */
dialog.confirmer{width:min(440px,calc(100% - 32px));border:0;border-radius:20px;padding:24px 24px 20px;box-shadow:0 30px 80px rgba(5,12,40,.35);color:var(--ink,#141a33)}
dialog.confirmer::backdrop{background:rgba(10,16,40,.45)}
.confirmer-texte{margin:0 0 20px;font-size:15.5px;line-height:1.5}
.confirmer-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.vide{text-align:center;padding:40px 24px;color:var(--muted)}
.vide .rond{width:58px;height:58px;border-radius:50%;margin:0 auto 12px;display:grid;place-items:center;background:var(--gold-pale);color:var(--gold-strong)}
.vide strong{display:block;color:var(--ink);font-size:17px;margin-bottom:4px}
.vide p{margin:0 auto 16px;max-width:460px;font-size:14.5px}
.anneau{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--gold) 0 66%,rgba(var(--navy-rgb),.12) 66% 100%);display:grid;place-items:center;flex:none}
.anneau .dedans{width:118px;height:118px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.anneau .dedans b{font-size:24px;letter-spacing:-.02em;line-height:1.05}
.anneau .dedans span{font-size:11.5px;color:var(--muted);font-weight:700}
.recap-fiscal{display:grid;grid-template-columns:minmax(0,1fr) 250px;overflow:hidden;margin-bottom:26px}
.recap-fiscal .gauche{padding:28px 30px;display:flex;flex-direction:column;gap:14px}
.recap-fiscal h2{margin:0;font-size:27px;letter-spacing:-.03em}
.recap-fiscal .droite{background:linear-gradient(160deg,var(--cream),var(--gold-pale));display:grid;place-items:center}
.recap-fiscal .chiffres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.recap-fiscal .actions-r{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}
.recap-fiscal form{margin:0}
.annees{max-width:100%;overflow-x:auto}
.annees .onglet{flex:0 0 auto;text-decoration:none}
.annees .onglet[aria-current]{background:#fff;color:var(--navy-deep);box-shadow:0 2px 8px rgba(var(--navy-deep-rgb),.12)}
.puces{display:flex;gap:8px;flex-wrap:wrap}
.puces a{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:999px;font-size:13px;font-weight:700;background:#eef0f4;color:var(--muted)}
.puces a[aria-current]{background:#e8edfb;color:var(--navy)}
.entre{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.entre strong{font-size:18px}
.flash{margin-bottom:18px}
/* Accueil de l'espace */
.accueil-grille{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.accueil-cote{display:flex;flex-direction:column;gap:18px}
.annee-fiscale{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:24px 26px;background:linear-gradient(145deg,var(--navy-deep),var(--navy));color:#fff;border:0}
.annee-fiscale .surtitre{color:var(--gold-light)}
.annee-fiscale h2{margin:4px 0 14px;font-size:22px;letter-spacing:-.02em}
.annee-fiscale .trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.annee-fiscale .trio span{display:block;font-size:12.5px;font-weight:700;color:rgba(255,255,255,.7)}
.annee-fiscale .trio b{display:block;font-size:24px;letter-spacing:-.02em;color:#fff}
.annee-fiscale .trio b.or{color:var(--gold-light)}
.annee-fiscale small{display:block;margin-top:12px;font-size:12.5px;color:rgba(255,255,255,.65)}
.annee-fiscale .anneau{background:conic-gradient(var(--gold-light) 0 66%,rgba(255,255,255,.18) 66% 100%);width:124px;height:124px}
.annee-fiscale .anneau .dedans{width:96px;height:96px;background:var(--navy-deep);color:#fff}
.annee-fiscale .anneau .dedans b{font-size:22px;color:var(--gold-light)}
.annee-fiscale .anneau .dedans span{color:rgba(255,255,255,.7)}
.carte-cote{padding:20px 22px}
.carte-cote h3{margin:0 0 12px;font-size:16px;letter-spacing:-.01em;display:flex;gap:9px;align-items:center}
.carte-cote h3 svg{color:var(--gold-strong);width:20px;height:20px}
.liste-liens{display:flex;flex-direction:column;gap:2px;margin:0 -8px}
.liste-liens a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 8px;border-radius:12px;font-weight:700;font-size:14.5px;color:var(--ink)}
.liste-liens a small{display:block;font-weight:500;color:var(--muted);font-size:13px}
.liste-liens a svg{color:var(--faint);width:18px;height:18px;flex:none}
.liste-liens a:hover{background:var(--bg)}
.liste-liens a:hover svg{color:var(--gold-strong)}
.redonner{background:linear-gradient(160deg,var(--cream),var(--gold-pale));border-color:var(--gold-light)}
.redonner p{margin:0 0 14px;font-size:14.5px;color:#3d4660}
.jauge-profil{height:8px;border-radius:99px;background:var(--gold-pale);overflow:hidden;margin:4px 0 10px}
.jauge-profil i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-strong));border-radius:99px}
/* Mon profil */
.profil-grille{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.profil-form{display:flex;flex-direction:column;gap:16px;margin:0}
.profil-form .pied-form{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap;padding-top:6px}
.profil-form h2,.carte-cote h2{margin:0 0 4px;font-size:19px;letter-spacing:-.02em}
.profil-form .mention-obligatoire{margin:0;font-size:13px;color:var(--faint)}
.saisie:disabled{background:#eef0f5;color:var(--faint);cursor:not-allowed}
/* Suggestions d'adresse (BAN) sous un champ [data-ban] : la boîte est positionnée sur le champ, pas sur l'aide */
.ban-boite{position:relative}
.ban-liste{position:absolute;left:0;right:0;top:100%;z-index:30;margin-top:5px;background:#fff;border:1px solid #d9dce6;border-radius:14px;box-shadow:var(--shadow-soft);overflow:hidden;max-height:280px;overflow-y:auto}
.ban-liste .item{padding:9px 14px;cursor:pointer;font-size:14px;line-height:1.35;border-top:1px solid var(--line)}
.ban-liste .item:first-child{border-top:0}
.ban-liste .item small{display:block;color:var(--muted);font-size:12.5px}
.ban-liste .item:hover,.ban-liste .item.actif{background:#eff3fb}
.liste-plate{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14.5px}
.liste-plate li{display:flex;justify-content:space-between;gap:10px;align-items:center}
.liste-plate li span{color:var(--muted);font-size:13px}
/* Lot E4 : Kippour, adhésion, réservations, rendez-vous, services, aide, retours de paiement */
.date-bloc{width:48px;height:52px;border-radius:14px;background:var(--gold-pale);color:var(--gold-strong);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;line-height:1}
.date-bloc b{font-size:20px;color:var(--navy-deep)}
.date-bloc small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.reservation{overflow:hidden;margin-bottom:14px;container-type:inline-size}
.reservation .places{border-top:1px solid var(--line);padding:0 20px}
.reservation .places summary{cursor:pointer;padding:12px 0;font-weight:700;font-size:14px;color:var(--navy)}
.reservation .places .liste-plate{padding:0 0 14px 60px}
.places-resume{border-top:1px solid var(--line);padding:11px 20px 12px 84px;font-size:13.5px;color:var(--muted)}
.ligne .quoi .motif{margin-top:3px;font-style:italic;color:var(--faint)}
.ligne-total{background:var(--bg)}
.saisie.zone{height:auto;padding:12px 16px;line-height:1.5;resize:vertical;font:inherit;font-size:16px}
.mandat{margin-bottom:22px}
.mandat-tete{display:flex;align-items:center;gap:14px}
.mandat-tete div{flex:1;min-width:0}
.mandat-tete strong{display:block;font-size:17px}
.mandat-tete .sous{display:block;font-size:14px}
.mandat-suspendu{border-color:#f2c1c3}
.retour-paiement{max-width:620px;margin:10px auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.retour-paiement h1{margin:6px 0 0;font-size:26px;letter-spacing:-.03em}
.retour-paiement h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-strong)}
.retour-paiement .montant{margin:0;font-size:30px;font-weight:800;letter-spacing:-.03em}
.retour-paiement .sous{margin:0 0 8px;max-width:480px}
.rond-attente{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--gold-pale);color:var(--gold-strong)}
.rond-attente svg{width:32px;height:32px}
.resume{width:100%;margin:6px 0 10px;border:1px solid var(--line);border-radius:14px;text-align:left}
.resume div{display:flex;justify-content:space-between;gap:14px;padding:9px 14px;border-top:1px solid var(--line);font-size:14px}
.resume div:first-child{border-top:0}
.resume dt{color:var(--muted)}
.resume dd{margin:0;font-weight:700;text-align:right}

/* ── Confirmation de paiement (core/Payment/Web/views/_confirmation.php) : tunnel générique et panier Kéhila ── */
.pr{color:var(--ink);font-size:15px;line-height:1.55}
.pr-carte{overflow:hidden;max-width:760px;margin:0 auto}   /* dans l'espace fidèle (hors carte du tunnel) */
.pr-i{width:18px;height:18px;flex:none}
.pr-hero{padding:34px 28px 30px;text-align:center;background:linear-gradient(180deg,var(--ok-pale) 0%,#fff 100%);border-bottom:1px solid var(--line)}
.pr-hero-ico{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:50%;color:#fff;background:var(--ok);
  box-shadow:0 0 0 7px rgba(28,107,67,.12),0 10px 24px rgba(28,107,67,.28);margin-bottom:16px}
.pr-hero-ico .pr-i{width:30px;height:30px;stroke-width:2.6}
.pr-hero h1{margin:0;font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.02em;color:var(--navy-deep)}
.pr-hero h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--ok)}
.pr-hero-txt{margin:8px 0 0;color:var(--muted)}
.pr-hero-montant{margin:18px 0 0;font-size:34px;line-height:1;font-weight:800;letter-spacing:-.02em;color:var(--navy-deep);font-variant-numeric:tabular-nums}
.pr-hero-date{margin:8px 0 0;font-size:13.5px;color:var(--faint)}
.pr-hero.is-warn{background:linear-gradient(180deg,#fff4e8 0%,#fff 100%)}
.pr-hero.is-warn .pr-hero-ico{background:#c2410c;box-shadow:0 0 0 7px rgba(194,65,12,.12)}
.pr-hero.is-neutre{background:linear-gradient(180deg,var(--bg) 0%,#fff 100%)}
.pr-hero.is-neutre .pr-hero-ico{background:var(--navy);box-shadow:0 0 0 7px rgba(var(--navy-rgb),.10)}
.pr-hero.is-attente{background:linear-gradient(180deg,var(--bg) 0%,#fff 100%)}
.pr-hero.is-attente .pr-hero-ico{background:var(--gold-pale);color:var(--gold-strong);box-shadow:0 0 0 7px rgba(var(--gold-rgb),.14)}
.pr-hero.is-warn .pr-hero-ico .pr-i,.pr-hero.is-neutre .pr-hero-ico .pr-i,.pr-hero.is-attente .pr-hero-ico .pr-i{stroke-width:2}
.pr-corps{padding:6px 28px 26px}
.pr-merci{padding:22px 0 4px}
.pr-merci p{margin:0 0 10px}
.pr-merci p+p{font-size:14px;color:var(--muted)}
.pr-sec{padding-top:22px}
.pr-h2{margin:0 0 10px;font-size:11.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--navy)}
.pr-lignes{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.pr-ligne{display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line)}
.pr-ligne:last-child{border-bottom:0}
.pr-ligne-txt{min-width:0;flex:1}
.pr-ligne-lib{display:block;font-weight:600;line-height:1.4}
.pr-ligne-det{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:4px;font-size:13px;color:var(--faint)}
.pr-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.02em;background:var(--gold-pale);color:var(--gold-strong)}
.pr-ligne-mt{flex:none;font-weight:700;color:var(--navy-deep);font-variant-numeric:tabular-nums;white-space:nowrap}
.pr-total{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:13px 16px;background:var(--bg);font-weight:700}
.pr-total span:last-child{font-size:17px;color:var(--navy-deep);font-variant-numeric:tabular-nums;white-space:nowrap}
.pr-dl{margin:0;display:grid;grid-template-columns:minmax(110px,max-content) 1fr}
.pr-dl dt,.pr-dl dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line)}
.pr-dl dt{color:var(--faint);font-size:14px;padding-right:28px}
.pr-dl dd{font-weight:500;overflow-wrap:anywhere}
.pr-dl dt:last-of-type,.pr-dl dd:last-of-type{border-bottom:0}
.pr-dl dd.pr-ref{font-variant-numeric:tabular-nums;letter-spacing:.03em;font-weight:700;color:var(--navy-deep)}
.pr-deux{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;padding-top:22px}
.pr-bloc{border:1px solid var(--line);border-radius:16px;padding:16px 18px;background:#fff;min-width:0}
.pr-bloc .pr-h2{margin-bottom:12px}
.pr-adr{margin:0;font-style:normal;line-height:1.55}
.pr-adr strong{display:block;font-weight:700}
.pr-contact{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:14px;color:var(--muted);min-width:0}
.pr-contact .pr-i{width:16px;height:16px;color:var(--faint)}
.pr-contact span{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.pr-societe{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:14px;color:var(--muted)}
.pr-societe .pr-badge{margin-bottom:4px}
.pr-societe strong{color:var(--ink)}
.pr-tx{margin:0;display:grid;gap:10px}
.pr-tx div{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pr-tx dt{margin:0;font-size:13.5px;color:var(--faint)}
.pr-tx dd{margin:0;text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.pr-tx .pr-tx-ref{flex-direction:column;align-items:flex-start;gap:3px;padding-top:10px;border-top:1px dashed var(--line)}
.pr-tx .pr-tx-ref dd{text-align:left;font-size:12.5px;font-weight:500;color:var(--muted);word-break:break-all;font-family:ui-monospace,"SF Mono",Consolas,monospace}
.pr-note{display:flex;gap:12px;align-items:flex-start;margin-top:22px;padding:14px 16px;border-radius:14px;background:var(--gold-pale);border:1px solid rgba(var(--gold-rgb),.45);color:#5c4210;font-size:14px}
.pr-note .pr-i{color:var(--gold-strong);margin-top:1px}
.pr-boutons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.pr-pied{padding:16px 28px;border-top:1px solid var(--line);background:var(--bg);text-align:center;font-size:13.5px;color:var(--faint)}
.pr-actions{padding:24px 28px 28px;text-align:center}
.pr-actions p{margin:0 0 12px;color:var(--muted);font-size:14.5px}
.pr-actions a:not(.btn){color:var(--navy);font-weight:600}
@media (max-width:560px){
  .pr-hero{padding:28px 18px 24px}
  .pr-hero h1{font-size:23px}
  .pr-hero-montant{font-size:30px}
  .pr-corps{padding:4px 16px 22px}
  .pr-pied,.pr-actions{padding-left:16px;padding-right:16px}
  .pr-dl{grid-template-columns:1fr}
  .pr-dl dt{padding:10px 0 0;border-bottom:0;font-size:12.5px}
  .pr-dl dd{padding:2px 0 10px}
  .pr-ligne{align-items:flex-start;padding:12px 14px}
}
.tuiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}
.tuile{padding:20px 22px;display:flex;flex-direction:column;gap:8px;color:inherit}
.tuile h2{margin:4px 0 0;font-size:17px;letter-spacing:-.01em}
.tuile p{margin:0;flex:1;font-size:14.5px;color:var(--muted)}
a.tuile:hover{border-color:var(--navy)}
.soutenir{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;background:linear-gradient(145deg,var(--navy-deep),var(--navy));color:#fff;border:0}
.soutenir h2{margin:0 0 4px;font-size:21px}
.soutenir p{margin:0;color:rgba(255,255,255,.75);max-width:560px}
/* L'aide : les groupes de questions sur deux colonnes quand la place le permet */
.faq-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:6px 22px;align-items:start}
.faq{padding:4px 22px}
.faq details{border-top:1px solid var(--line)}
.faq details:first-child{border-top:0}
.faq summary{cursor:pointer;padding:15px 0;font-weight:700;font-size:15.5px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold-strong);font-size:20px;line-height:1;font-weight:600}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:0 0 16px;color:#3d4660;font-size:14.5px;line-height:1.6}
/* La page de don dans le site (page.php) : bandeau, deux colonnes, mur des donateurs */
.don-site{padding-bottom:56px}
.don-site .don-apercu{padding-left:max(16px,calc((100% - 1200px) / 2));padding-right:16px}
.don-bandeau{position:relative;overflow:hidden;color:#fff;padding:40px 0 76px;
  background-color:var(--accent);background-image:linear-gradient(135deg,var(--accent) 0%,color-mix(in srgb,var(--accent) 72%,#000) 100%)}
.don-bandeau.claire{color:var(--ink)}
.don-bandeau.avec-photo{background:var(--navy-deep)}
.don-bandeau-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.don-bandeau.avec-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--navy-deep-rgb),.94) 0%,rgba(var(--navy-deep-rgb),.78) 45%,rgba(var(--navy-deep-rgb),.35) 100%)}
.don-bandeau-in{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.don-bandeau-txt{display:flex;flex-direction:column;gap:14px;max-width:720px}
.don-bandeau h1{margin:0;font-size:44px;line-height:1.08;letter-spacing:-.035em}
.don-bandeau .intro{margin:0;font-size:17px;line-height:1.55;opacity:.9;max-width:620px}
.don-bandeau .pastille{align-self:flex-start;color:inherit}
.don-bandeau.claire .pastille{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.12)}
.don-fil{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;opacity:.85}
.don-fil a{text-decoration:underline;text-underline-offset:3px}
.don-bandeau-logo{height:64px;width:auto;max-width:200px;object-fit:contain;background:#fff;border-radius:14px;padding:8px}
.don-colonnes{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;align-items:start;margin-top:-44px;position:relative;z-index:2}
.don-principale{overflow:hidden;box-shadow:var(--shadow)}
.don-cote{display:flex;flex-direction:column;gap:16px;position:sticky;top:96px}
.don-cote-camp{overflow:hidden}
.don-cote-camp .don-sec{padding:20px 22px}
.don-garanties{display:flex;flex-direction:column;gap:14px;font-size:14px;color:#3d4660;padding:20px 22px}
.don-garanties div{display:flex;gap:12px;align-items:flex-start}
.don-garanties svg{color:var(--gold-strong);flex:none;margin-top:2px}
.don-garanties b{display:block;color:var(--ink);font-size:14.5px}
.don-cote-aide{padding:16px 20px;display:flex;gap:12px;align-items:flex-start;font-size:14px;color:#3d4660}
.don-cote-aide svg{color:var(--navy);flex:none;margin-top:2px}
.don-cote-aide a{font-weight:800;color:var(--navy);overflow-wrap:break-word}
.don-mur-site{margin-top:48px}
.don-mur-site .carte{overflow:hidden}
.don-mur-site .don-campagnes{margin:0}
@media (max-width:1060px){
  .don-colonnes{grid-template-columns:minmax(0,1fr)}
  .don-cote{position:static}
}
@media (max-width:560px){
  .don-bandeau{padding:28px 0 64px}
  .don-bandeau h1{font-size:32px}
  .don-bandeau-logo{display:none}
}
/* Le panier « Régler mes dons » (cart.php) : lien personnel public et espace fidèle */
.panier-wrap{max-width:760px}
.pay-wrap-large{max-width:1040px}
.pay-card .panier{padding:26px 28px 22px}
.panier-intro{margin-bottom:18px}
.panier-intro h1{margin:4px 0 6px;font-size:28px;letter-spacing:-.03em}
.panier-intro h1 em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-strong)}
.panier-intro .sous{margin:0;font-size:15px}
.panier-presel{margin-bottom:16px}
.panier-groupe{margin-bottom:14px}
.panier-tete{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;background:var(--bg);border-bottom:1px solid var(--line);font-weight:800;font-size:14.5px;color:var(--navy-deep)}
.panier-tete span{display:inline-flex;gap:8px;align-items:center}
.panier-tete svg{width:18px;height:18px;color:var(--gold-strong)}
.panier-tete small{font-weight:600;color:var(--muted);font-size:13px;white-space:nowrap}
label.panier-ligne{cursor:pointer}
label.panier-ligne:hover{background:#fbfaf6}
.panier-ligne.en-vue{box-shadow:inset 0 0 0 2px var(--gold)}
.panier-case{width:22px;height:22px;flex:none;accent-color:var(--navy);margin:0}
.panier-montant-libre{display:inline-flex;align-items:center;gap:6px;font-weight:800;white-space:nowrap}
.panier-montant-libre .saisie{width:110px;height:42px;text-align:right;font-weight:700}
.puces button{border:1.5px solid #dfe3ee;background:#fff;border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer}
.puces button:hover{border-color:var(--navy)}
.puces{margin-top:8px}
.obligatoire{color:var(--alerte)}
.panier-option{margin-bottom:14px;box-shadow:none}
.panier-option .etiquette{display:block;margin-bottom:10px}
.panier-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.panier-grille .large{grid-column:1 / -1}
.panier-total{position:sticky;bottom:0;z-index:5;background:#fff;border-top:1px solid var(--line);padding:16px 0 4px;margin-top:6px;display:flex;flex-direction:column;gap:10px}
.panier-total-l{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.panier-total-l span{font-weight:800;color:var(--navy-deep)}
.panier-total-l b{font-size:28px;letter-spacing:-.03em}
.panier-total .securite{justify-content:center}
.btn[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none}
.ts-wrapper.invalide .ts-control{border-color:var(--alerte)}
#kp-checkout{margin-top:10px}
.contenu-espace .panier{padding:0}
.contenu-espace .panier-total{background:var(--bg)}
@media (max-width:560px){
  .pay-card .panier{padding:20px 16px}
  .panier-grille{grid-template-columns:minmax(0,1fr)}
}
@container (max-width:640px){
  .places-resume{padding-left:20px}
  .reservation .places .liste-plate{padding-left:0}
}

/* ── Pied de page ──────────────────────────────────────────────────────── */
.aide-bande{background:var(--cream);border-top:1px solid var(--gold-light)}
.aide-bande .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:22px 0;font-size:15px}
.aide-bande a{font-weight:800;color:var(--navy);display:inline-flex;gap:8px;align-items:center}
.aide-bande .contacts{display:flex;gap:22px;flex-wrap:wrap}
.pied-page{background:var(--navy-deep);color:rgba(255,255,255,.72);font-size:14px}
.pied-page .wrap{padding:48px 0 26px}
.pied-grille{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px}
.pied-page img{height:44px;width:auto;margin-bottom:14px}
.pied-page strong{display:block;color:#fff;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.pied-page a{display:block;margin-bottom:8px}
.pied-page a:hover{color:#fff}
.pied-bas{margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12.5px;color:rgba(255,255,255,.6)}
.pied-bas a{display:inline}

/* ── Écrans moyens et petits ───────────────────────────────────────────── */
@media (max-width:1060px){
  .nav{display:none}
  .espace{grid-template-columns:minmax(0,1fr)}
  .rail-nav{display:none}
  .onglets-bas{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:35;height:74px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;backdrop-filter:blur(10px)}
  .onglets-bas a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:700;color:#6c7488;text-align:center}
  .onglets-bas a svg{width:22px;height:22px}
  .onglets-bas a[aria-current]{color:var(--navy-deep)}
  .onglets-bas a[aria-current] svg{color:var(--gold-strong)}
  .onglets-bas a.donner .rond{width:52px;height:52px;border-radius:50%;margin-top:-24px;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold-light),var(--gold) 55%,var(--gold-strong));color:var(--navy-deep);box-shadow:0 10px 22px rgba(var(--gold-rgb),.45);border:4px solid #fff}
  body.avec-onglets{padding-bottom:74px}
}
@media (max-width:860px){
  .fenetre{grid-template-columns:minmax(0,1fr)}
  .fenetre .gauche{display:none}
  .fenetre .droite{padding:30px 22px 24px}
  .pied-grille{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .wrap,.espace-fidele .wrap{width:calc(100% - 32px)}
  .header .wrap{height:66px;gap:12px}
  .brand img{height:38px}
  .actions .btn-outline .txt,.actions .btn-gold .txt,.moi-bouton .txt{display:none}
  .moi-bouton{padding:4px}
  .cloche{position:static}
  .cloche-bouton{width:40px;height:40px}
  .cloche-menu{position:fixed;left:12px;right:12px;top:68px;width:auto;max-width:none}
  .voile{padding:0;align-items:flex-end}
  .fenetre{border-radius:26px 26px 0 0}
  .deux-boutons{grid-template-columns:minmax(0,1fr)}
  .grille-2,.grille-cp{grid-template-columns:minmax(0,1fr)}
  .inscription-carte{margin-top:-24px}
  .pied-grille{grid-template-columns:1fr}
  .entete-page h1{font-size:28px}
}
/* ---- Deux colonnes : le formulaire à gauche, le récapitulatif et l'action à droite (panier, réservation de places,
   Talmud Torah). La bascule se règle sur la largeur disponible (espace avec son menu, ou page publique), pas sur
   l'écran : `.colonnes-boite` est le conteneur mesuré. ---- */
.pay-wrap-libre{padding-top:40px}
.pay-wrap-libre .resa{padding:0}
.colonnes-boite{container-type:inline-size}
.deux-col{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
.deux-col>.cote{align-self:stretch;min-width:0}
.colonne-principale{min-width:0}
.cote-collant{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px}
.recap{padding:20px 22px}
.ma-communaute p{margin:0 0 12px;font-size:14.5px}
/* « Mes communautés » (rubrique à part depuis le 16/10) : la préférée en tête, une carte par rattachement, ajouter */
.mc-preferee{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:26px 28px;margin-bottom:26px;background:linear-gradient(160deg,#fff,var(--cream));border-color:var(--gold-light)}
.mc-preferee h2{margin:4px 0 6px;font-size:26px;letter-spacing:-.025em;line-height:1.15}
.mc-preferee p{margin:0 0 8px;color:var(--muted);font-size:15px;max-width:620px}
.mc-preferee .mc-lieu{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:var(--navy)}
.mc-preferee-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:12px}
.mc-preferee-ico{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:var(--gold-pale);color:var(--gold-strong);flex:none}
.mc-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:26px}
.mc-carte{padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.mc-carte.est-preferee{border-color:var(--gold-light);box-shadow:0 0 0 3px var(--gold-pale)}
.mc-tete{display:flex;gap:12px;align-items:flex-start}
.mc-corps{flex:1;min-width:0}
.mc-corps strong{display:block;font-size:16px;letter-spacing:-.01em}
.mc-corps .sous{display:block;font-size:13.5px;color:var(--muted);margin-top:2px}
.mc-raisons{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.mc-raisons li{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:999px;padding:3px 10px}
.mc-actions{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.mc-actions form{margin:0}
.mc-actions .lien-simple,.mc-actions .lien-fort{font-size:13.5px}
.mc-retirer{color:#b42318}
.mc-note{font-size:12.5px;color:var(--faint)}
.mc-vide{margin-bottom:26px}
.mc-ajout h2{margin:0 0 4px;font-size:19px;letter-spacing:-.02em;display:flex;align-items:center;gap:8px}
.mc-ajout .sous{margin:0 0 14px;font-size:14px}
.mc-ajout .grille-ajout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}
.mc-ajout-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.ma-communaute p .sous{font-size:13px}
.ma-communaute-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.ma-communaute-actions .lien-simple{font-size:13.5px}
.recap h2{font-size:17px;letter-spacing:-.01em;margin:0 0 6px}
.recap-objet{display:flex;gap:6px;align-items:center;font-size:13.5px;color:var(--muted);margin:0 0 14px}
.recap-lignes{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.recap-lignes li{display:flex;justify-content:space-between;gap:12px}
.recap-lignes li span:first-child{min-width:0;overflow-wrap:anywhere}
.recap-lignes li span:last-child{font-weight:800;white-space:nowrap}
.recap-vide{font-size:14px;color:var(--muted);margin:0 0 12px}
.recap .panier-total{position:static;background:none;border-top:1px solid var(--line);padding:14px 0 0;margin:0}
.recap .panier-total .securite{margin:0;align-items:flex-start;justify-content:flex-start}
@container (max-width:820px){
  .deux-col{grid-template-columns:minmax(0,1fr)}
  .cote-collant{position:static}
}
/* ---- Réservation de places de Kippour et inscription au Talmud Torah (pages publiques dans PageCarte) ---- */
.resa{padding:30px 32px 32px}
.resa-titre{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:6px 0 6px}
.resa-titre em{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--gold-strong)}
.resa-retour{display:flex;width:fit-content;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--muted);margin-bottom:14px}
.resa-retour:hover{color:var(--navy)}
.resa-h2{font-size:17px;letter-spacing:-.01em;margin:26px 0 12px}
.resa-lookup{margin-bottom:6px;box-shadow:none}
.resa-lookup summary{display:flex;gap:10px;align-items:flex-start;padding:16px 18px;cursor:pointer;list-style:none;font-size:14.5px;color:#2b3450}
.resa-lookup summary::-webkit-details-marker{display:none}
.resa-lookup summary .ico-sm{flex:none;margin-top:2px;color:var(--navy)}
.resa-lookup[open] summary{border-bottom:1px solid var(--line)}
.resa-lookup-corps{padding:16px 18px 18px}
.ligne.resa-place{flex-wrap:nowrap}
.resa-place .quoi{flex:1 1 auto}
.resa-place .quoi span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.resa-qte{display:flex;align-items:center;flex:none;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}
.resa-qte button{width:38px;height:38px;border:0;background:transparent;font-size:19px;font-weight:700;color:var(--navy);cursor:pointer}
.resa-qte button:hover{background:#f3f5fa}
.resa-qte input{width:42px;height:38px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font:inherit;font-weight:800;font-size:16px;background:transparent}
.resa-qte input:focus{outline:2px solid var(--navy);outline-offset:-2px}
.resa-proches .ligne{cursor:pointer}
.resa-proches .benef-place{flex:none;width:auto;max-width:220px}
.resa-offices{margin:0}
.resa-offices a{padding:14px 12px;border:1px solid var(--line);border-radius:16px;margin-bottom:8px}
.resa-offices a:hover{border-color:var(--navy);background:#f8f9fc}
.resa-bloc{margin-bottom:14px;box-shadow:none}
.resa-bloc>.case,.resa-bloc>.etiquette{margin-bottom:4px}
.resa-bloc .panier-grille[hidden],.resa-bloc .champ[hidden]{display:none}
.resa-fichier{padding:10px 12px}
.resa .panier-total{margin-top:22px}
.resa form>.case{margin-top:10px}
@media (max-width:640px){
  .resa{padding:22px 18px 24px}
  .resa-titre{font-size:25px}
  .resa-proches .benef-place{max-width:none;width:100%}
  .resa-place .pico{display:none}
  .resa-place .quoi span{white-space:normal}
}
@media (max-width:1060px){
  .accueil-grille,.profil-grille{grid-template-columns:minmax(0,1fr)}
  .contenu-espace .entete-page>.btn-gold{display:none}
  .tuiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bandeau-chiffres{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .recap-fiscal{grid-template-columns:minmax(0,1fr)}
  .recap-fiscal .droite{display:none}
  .recap-fiscal .gauche{padding:22px 20px}
  .recap-fiscal .chiffres,.annee-fiscale .trio,.bandeau-chiffres.trois{grid-template-columns:minmax(0,1fr)}
  .annee-fiscale{grid-template-columns:minmax(0,1fr)}
  .annee-fiscale .anneau{display:none}
  .filtre.recherche{flex-basis:100%}
  .tuiles,.tuiles.trois{grid-template-columns:minmax(0,1fr)}
  .mc-grille,.mc-preferee,.mc-ajout .grille-ajout{grid-template-columns:minmax(0,1fr)}
  .mc-preferee-ico{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn{transition:none}
}
