/* Accueil : « Qu'aimerais-tu pratiquer le plus ? » (wishes.js) */
.wish{ position:relative; overflow:hidden; isolation:isolate; margin:56px 0 24px; padding:44px clamp(18px,4vw,44px) 38px; border-radius:34px;
  background:var(--glass); border:1px solid var(--glass-brd); box-shadow:var(--shadow); scroll-margin-top:90px; }
.wish::before{ content:""; position:absolute; z-index:-1; width:640px; height:640px; top:-400px; left:50%; transform:translateX(-50%); border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,106,.24),transparent 68%); }
.wish::after{ content:""; position:absolute; z-index:-1; width:420px; height:420px; bottom:-260px; inset-inline-end:-160px; border-radius:50%;
  background:radial-gradient(circle,var(--glow-a),transparent 70%); opacity:.7; }
.wish-head{ text-align:center; max-width:640px; margin:0 auto 30px; }
.wish-head img{ display:block; width:64px; height:64px; margin:0 auto 14px; border-radius:50%; object-fit:cover;
  box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--gold-2); }
.wish-head .kicker{ padding:6px 14px; border-radius:999px; background:rgba(201,168,106,.13); border:1px solid rgba(201,168,106,.3); margin-bottom:14px; }
.wish-head h2{ font-family:var(--serif); font-weight:500; font-size:clamp(1.55rem,3.2vw,2.2rem); line-height:1.25; color:var(--heading); text-wrap:balance; }
.wish-head p{ color:var(--muted); margin-top:10px; font-size:1.04rem; }

.wish-form{ display:flex; flex-direction:column; gap:24px; max-width:820px; margin:0 auto; }
.wish-q{ border:0; padding:0; margin:0; min-width:0; display:flex; flex-direction:column; gap:11px; }
.wish-q legend, .wish-legend{ padding:0; margin-bottom:11px; font-weight:700; font-size:1.02rem; color:var(--text); }
.wish-text .wish-legend{ margin-bottom:0; }
.wish-q legend small{ font-weight:500; font-size:.84rem; color:var(--muted); margin-inline-start:6px; }
.wish-chips{ display:flex; flex-wrap:wrap; gap:9px; }
.wish-chip{ display:inline-flex; align-items:center; gap:7px; min-height:42px; padding:0 17px; border-radius:999px; cursor:pointer;
  font:inherit; font-size:.94rem; font-weight:600; color:var(--text); background:var(--ctl-bg); border:1px solid var(--ctl-brd);
  transition:background .2s, color .2s, border-color .2s, box-shadow .2s, transform .2s var(--ease); }
.wish-chip:hover{ border-color:var(--accent); transform:translateY(-1px); }
.wish-chip:focus-visible{ outline:2px solid var(--focus); outline-offset:2px; }
.wish-tick{ display:none; width:16px; height:16px; }
.wish-tick svg{ width:16px; height:16px; }
.wish-chip[aria-pressed="true"]{ background:var(--accent); color:var(--accent-ink); border-color:transparent; box-shadow:0 8px 18px -10px var(--accent-glow); }
.wish-chip[aria-pressed="true"] .wish-tick{ display:inline-flex; }

.wish-text{ position:relative; }
.wish-text textarea{ width:100%; min-height:96px; resize:vertical; padding:14px 16px; border-radius:18px; font:inherit; font-size:1rem; line-height:1.55;
  color:var(--text); background:var(--field-bg); border:1px solid var(--field-brd); transition:border-color .2s, box-shadow .2s; }
.wish-text textarea::placeholder{ color:var(--muted); opacity:.8; }
.wish-text textarea:focus{ outline:none; border-color:var(--accent); box-shadow:0 0 0 4px var(--soft-2); }
.wish-count{ align-self:flex-end; font-size:.78rem; color:var(--muted); }
.wish-err{ padding:10px 14px; border-radius:14px; background:var(--err-bg); color:var(--err-text); font-weight:600; font-size:.94rem; }
.wish-send{ display:flex; justify-content:center; margin-top:4px; }
.wish-send .btn svg{ width:18px; height:18px; }

.wish-thanks{ text-align:center; max-width:560px; margin:0 auto 8px; padding:20px 22px; border-radius:24px; background:var(--ok-bg); color:var(--ok-text);
  animation:wishIn .6s var(--ease) both; }
.wish-thanks h3{ font-family:var(--serif); font-weight:500; font-size:1.45rem; }
.wish-thanks p{ margin-top:6px; opacity:.9; }
.wish-found{ margin-top:30px; animation:wishIn .6s .12s var(--ease) both; }
.wish-found > h3{ display:flex; align-items:center; justify-content:center; gap:8px; font-family:var(--serif); font-weight:500; font-size:1.35rem; color:var(--heading); }
.wish-found > h3 svg{ width:20px; height:20px; color:var(--gold-text); }
.wish-found > p{ text-align:center; color:var(--muted); margin:6px 0 22px; }
.wish-grid{ grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); }
.wish-why{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.wish-why span{ padding:3px 10px; border-radius:999px; font-size:.76rem; font-weight:700; color:var(--gold-text); background:rgba(201,168,106,.12); }
.wish-none{ text-align:center; max-width:520px; margin:24px auto 0; font-family:var(--serif); font-size:1.12rem; color:var(--text); }
.wish .wish-send:last-child{ margin-top:26px; }
@keyframes wishIn{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:none; } }

@media (max-width:760px){
  .wish{ margin-top:40px; padding:34px 16px 30px; border-radius:26px; }
  .wish-chip{ min-height:40px; padding:0 14px; font-size:.9rem; }
  .wish-grid{ grid-template-columns:1fr 1fr; gap:18px 12px; }
}
@media (max-width:420px){ .wish-grid{ grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce){ .wish-thanks, .wish-found{ animation:none; } .wish-chip:hover{ transform:none; } }
