/* Liste de naissance Petit Zèbre — front (au thème) */
.kll-wrap{max-width:1040px;margin:0 auto;padding:8px 0 48px}
.kll-muted{color:#8a99a6;font-size:13.5px}
.kll-empty{padding:14px 0}

/* Boutons */
.kll-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 20px;border-radius:11px;font-size:13.5px;font-weight:800;text-decoration:none;border:1.5px solid #485868;color:#485868;background:#fff;cursor:pointer;transition:.15s;line-height:1}
.kll-btn:hover{background:#485868;color:#fff}
.kll-btn-primary{background:#c8992f;border-color:#c8992f;color:#26313c}
.kll-btn-primary:hover{background:#b3861f;border-color:#b3861f;color:#26313c}
.kll-btn-out{background:#fff}
.kll-btn-danger{border-color:#c2543f;color:#c2543f}
.kll-btn-danger:hover{background:#c2543f;color:#fff}
.kll-btn-done{border-color:#cfe0d3;color:#3f8f5b;background:#f0f8f2;cursor:default}
.kll-btn-copy{padding:9px 14px;font-size:12.5px}

/* Cartes / panneaux */
.kll-card,.kll-panel{background:#fff;border:1px solid #e5ecf0;border-radius:18px;padding:24px;margin-bottom:22px;box-shadow:0 14px 34px -26px rgba(32,45,58,.45)}
.kll-panel-t{font-size:16px;font-weight:800;color:#26313c;margin:0 0 6px}
.kll-pending{background:#fffaf0;border-color:#e3b143}
.kll-pending-choices{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}
.kll-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.kll-card-title{font-size:20px;font-weight:800;color:#374756;margin:0}
.kll-card-actions{display:flex;gap:8px}

/* Lien de partage */
.kll-share{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:16px 0 4px;padding:12px 14px;background:#f5f7f8;border-radius:12px}
.kll-share label{font-size:12.5px;font-weight:800;color:#5d6b78;white-space:nowrap}
.kll-share-input{flex:1;min-width:200px;border:1px solid #d9e2e8;border-radius:8px;padding:9px 11px;font-size:13px;background:#fff;color:#26313c}

/* Articles (gestion) */
.kll-items{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.kll-item{display:flex;align-items:center;gap:14px;padding:10px;border:1px solid #eef3f6;border-radius:12px}
.kll-item-img{width:60px;height:60px;border-radius:9px;background:#eef3f6 center/cover no-repeat;flex-shrink:0;display:block}
.kll-item-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.kll-item-name{font-size:14px;font-weight:700;color:#26313c;text-decoration:none}
.kll-item-name:hover{color:#485868}
.kll-item-meta{font-size:12.5px;color:#8a99a6}
.kll-qty{display:inline-flex;align-items:center;gap:6px;margin:0 3px}
.kll-qbtn{display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid #d9e2e8;border-radius:6px;color:#485868;text-decoration:none;font-weight:800;line-height:1;font-size:13px}
.kll-qbtn:hover{background:#485868;color:#fff;border-color:#485868}
.kll-qty b{min-width:14px;text-align:center;color:#26313c;font-size:13px}
.kll-item-rm{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#c2543f;background:#fdeeea;text-decoration:none;font-size:18px;font-weight:700;flex-shrink:0}
.kll-item-rm:hover{background:#c2543f;color:#fff}

/* Formulaire */
.kll-form{margin-top:14px}
.kll-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kll-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;color:#5d6b78}
.kll-field-full{margin-top:14px}
.kll-field input,.kll-field select,.kll-field textarea,.kll-form textarea{border:1px solid #d9e2e8;border-radius:9px;padding:10px 12px;font-size:14px;color:#26313c;font-weight:500;background:#fff}
.kll-field input:focus,.kll-field select:focus,.kll-field textarea:focus{outline:none;border-color:#485868}
.kll-delivery{border:1px solid #eef3f6;border-radius:12px;padding:14px 16px;margin:16px 0 0}
.kll-delivery legend{font-size:12.5px;font-weight:800;color:#5d6b78;padding:0 6px}
.kll-radio{display:flex;gap:10px;align-items:flex-start;padding:8px 0;cursor:pointer}
.kll-radio input{margin-top:3px}
.kll-radio strong{display:block;font-size:14px;color:#26313c}
.kll-radio em{display:block;font-size:12.5px;color:#8a99a6;font-style:normal;font-weight:500}
.kll-gender{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.kll-gender legend{width:100%;font-size:12.5px;font-weight:800;color:#5d6b78;padding:0 0 8px}
.kll-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border:1.5px solid #d9e2e8;border-radius:999px;cursor:pointer;font-size:13.5px;font-weight:700;color:#5d6b78;transition:.15s}
.kll-chip input{accent-color:#c8992f}
.kll-chip:has(input:checked){border-color:#c8992f;background:#fffaf0;color:#26313c}
.kll-addr-hint{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:700;color:#c8992f;text-decoration:none}
.kll-addr-hint:hover{text-decoration:underline}
.kll-check{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:13.5px;font-weight:600;color:#5d6b78;cursor:pointer}
.kll-check input{width:17px;height:17px;accent-color:#c8992f;flex-shrink:0}
.kll-newaddr{margin-top:12px;padding:16px;border:1px dashed #d9e2e8;border-radius:12px;background:#f9fbfc}
.kll-newaddr[hidden]{display:none}
.kll-form-row{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.kll-edit{margin-top:16px}
.kll-edit summary{cursor:pointer;font-size:13px;font-weight:800;color:#5d6b78}
.kll-create{border-style:dashed}

/* Bouton fiche produit */
.kll-product-add{margin:12px 0}
.kll-addlist-btn{display:inline-flex;align-items:center;gap:8px;width:100%;justify-content:center;padding:12px 18px;border-radius:11px;border:1.5px solid #c8992f;background:#fffaf0;color:#26313c;font-size:14px;font-weight:800;cursor:pointer;transition:.15s}
.kll-addlist-btn:hover{background:#c8992f;color:#26313c}
.kll-heart{font-size:16px;color:#c8992f}
.kll-addlist-btn:hover .kll-heart{color:#26313c}

/* Espace client — lien */
.kll-account-link .link-item{display:flex;align-items:center;gap:10px}

/* Page publique */
.kll-public .kll-hero{text-align:center;padding:34px 20px 26px;background:linear-gradient(135deg,#eef4f7,#fbf3e2);border:1px solid #e5ecf0;border-radius:22px;margin-bottom:26px}
.kll-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#c8992f;margin:0}
.kll-hero-title{font-size:32px;font-weight:800;color:#374756;margin:8px 0 6px}
.kll-hero-sub{font-size:15px;color:#5d6b78;margin:0}
.kll-hero-msg{font-size:15px;font-style:italic;color:#485868;margin:14px auto 0;max-width:60ch}
.kll-progress{max-width:420px;margin:18px auto 6px;height:9px;border-radius:999px;background:#e2e9ed;overflow:hidden}
.kll-progress span{display:block;height:100%;background:#c8992f;border-radius:999px}

.kll-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.kll-tile{background:#fff;border:1px solid #e5ecf0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.kll-tile:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(32,45,58,.5)}
.kll-tile.is-done{opacity:.72}
.kll-tile-img{position:relative;display:block;height:190px;background:#eef3f6 center/cover no-repeat}
.kll-tile-badge{position:absolute;top:10px;left:10px;background:#26313c;color:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:4px 10px}
.kll-tile-body{padding:14px 15px 8px;display:flex;flex-direction:column;gap:4px;flex:1}
.kll-tile-name{font-size:14px;font-weight:600;line-height:1.35;color:#26313c;text-decoration:none}
.kll-tile-name:hover{color:#485868}
.kll-tile-price{font-size:16px;font-weight:800;color:#26313c}
.kll-tile-meta{font-size:12px;color:#8a99a6}
.kll-tile-btn{margin:8px 15px 15px}

/* Recherche de listes */
.kll-search-hero{text-align:center;padding:32px 20px 26px;background:linear-gradient(135deg,#eef4f7,#fbf3e2);border:1px solid #e5ecf0;border-radius:22px;margin-bottom:24px}
.kll-searchbar{display:flex;gap:10px;max-width:560px;margin:20px auto 0;flex-wrap:wrap}
.kll-searchbar input{flex:1;min-width:220px;border:1px solid #d9e2e8;border-radius:12px;padding:13px 16px;font-size:15px;color:#26313c;background:#fff}
.kll-searchbar input:focus{outline:none;border-color:#485868}
.kll-results-count{margin:0 2px 12px}
.kll-results{display:flex;flex-direction:column;gap:10px}
.kll-result{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border:1px solid #e5ecf0;border-radius:14px;text-decoration:none;transition:.15s}
.kll-result:hover{border-color:#c8992f;box-shadow:0 12px 30px -20px rgba(32,45,58,.5);transform:translateY(-2px)}
.kll-result-ic{font-size:24px;flex-shrink:0}
.kll-result-body{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}
.kll-result-title{font-size:16px;font-weight:800;color:#26313c}
.kll-result-meta{font-size:13px;color:#8a99a6}
.kll-result-arrow{color:#c8992f;font-size:20px;font-weight:700;flex-shrink:0}

@media(max-width:900px){.kll-grid{grid-template-columns:repeat(2,1fr)}.kll-form-grid{grid-template-columns:1fr}}
@media(max-width:560px){.kll-grid{grid-template-columns:1fr}.kll-hero-title{font-size:26px}}

/* Bouton déclencher livraison groupée + note */
.kll-btn-go{background:var(--pz-gold,#e3b143);color:#26313c;border:0;font-weight:700}
.kll-btn-go:hover{background:var(--pz-gold-d,#c8992f);color:#26313c}
.kll-held{background:var(--pz-cream,#fffaf0);border:1px solid var(--pz-gold,#e3b143);border-radius:10px;padding:11px 14px;font-size:13.5px;color:#26313c;margin:0 0 14px;line-height:1.45}

/* ===================== KLL Étape 2 : cagnotte (page invité) ===================== */

/* Cagnotte libre (bandeau niveau liste) */
.kll-public .kll-freepot{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:space-between;
  background:linear-gradient(135deg,#fbf3e2,#f4ede0);border:1px solid #ecdcb6;border-radius:20px;padding:22px 26px;margin-bottom:26px}
.kll-freepot-eyebrow{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#a9812a;margin:0 0 4px}
.kll-freepot-title{font-size:21px;font-weight:800;color:#374756;margin:0 0 4px}
.kll-freepot-sub{font-size:14px;color:#5d6b78;margin:0;max-width:56ch}
.kll-freepot-tally{margin-top:8px}
.kll-freepot-btn{white-space:nowrap;flex:0 0 auto}

/* Cagnotte par article (dans la tuile) */
.kll-tile-pot{margin-top:8px}
.kll-tile-progress{height:7px;border-radius:999px;background:#e9eef1;overflow:hidden}
.kll-tile-progress span{display:block;height:100%;background:#c8992f;border-radius:999px;transition:width .3s}
.kll-pot-meta{font-size:12px;color:#8a99a6;margin:5px 0 0;font-weight:600}

/* Actions de tuile (offrir + participer empilés) */
.kll-tile-acts{display:flex;flex-direction:column;gap:8px;margin:10px 15px 15px}
.kll-tile-acts .kll-tile-btn{margin:0}

/* ===================== Page « Participer » (choix du montant) ===================== */
.kll-contribute-card{background:#fff;border:1px solid #e5ecf0;border-radius:18px;padding:26px;box-shadow:0 14px 34px -26px rgba(32,45,58,.45);max-width:680px;margin:0 auto}
.kll-contribute-head{display:flex;gap:18px;align-items:flex-start;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #eef2f5}
.kll-contribute-img{flex:0 0 auto;width:78px;height:78px;border-radius:12px;background:#eef3f6 center/cover no-repeat}
.kll-contribute-title{font-size:22px;font-weight:800;color:#26313c;margin:2px 0 6px}
.kll-eyebrow{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#a9812a;margin:0 0 2px}

.kll-amount{border:0;padding:0;margin:0 0 18px}
.kll-amount legend{font-size:14px;font-weight:800;color:#26313c;margin-bottom:10px;padding:0}
.kll-amount-presets{display:flex;flex-wrap:wrap;gap:10px}
.kll-amount-chip{position:relative;display:inline-flex;align-items:center;border:1.5px solid #e0e7ec;border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:700;color:#374756;transition:border-color .15s,background .15s}
.kll-amount-chip input{position:absolute;opacity:0;pointer-events:none}
.kll-amount-chip:hover{border-color:#c8992f}
.kll-amount-chip:has(input:checked){border-color:#c8992f;background:#fbf3e2}
.kll-amount-chip--custom input[type=number]{width:5rem;margin:0 .25rem;padding:.25rem .4rem;border:1px solid #e0e7ec;border-radius:8px;font-weight:700}

.kll-contribute-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}
.kll-panel--soft{background:linear-gradient(135deg,#eef4f7,#fbf3e2)}
@media(max-width:560px){.kll-contribute-actions{flex-direction:column-reverse}.kll-contribute-actions .kll-btn{width:100%;text-align:center}.kll-freepot{flex-direction:column;align-items:flex-start}.kll-freepot-btn{width:100%;text-align:center}}
.kll-amount-err{color:#c0392b;font-size:13px;font-weight:600;margin:0 0 8px}
