/* ── User profile viewer ────────────────────────────────────────── */
.fp-profile-link{cursor:pointer;}
.profile-avatar-img{width:88px;height:88px;border-radius:50%;object-fit:cover;}
div.profile-avatar-img{display:flex;align-items:center;justify-content:center;font-family:'Julius Sans One',sans-serif;font-weight:400;font-size:32px;color:#1c1c2e;}
.profile-wish-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.06);font-size:13px;color:#1c1c2e;}
.profile-wish-icon{width:26px;height:26px;flex-shrink:0;}
.profile-wish-icon svg{width:100%;height:100%;}

.gift-hover{
  position:absolute;left:0;right:0;bottom:0;z-index:2;padding:14px 14px 12px;
  background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,0));color:#fffdf9;
  opacity:0;transform:translateY(6px);transition:opacity .22s ease,transform .22s ease;pointer-events:none;
}
.gift-pin:hover .gift-hover,.gift-pin:focus-visible .gift-hover{opacity:1;transform:translateY(0);}
.gift-hover-name{font-family:'Julius Sans One',sans-serif;font-weight:400;font-size:13.5px;line-height:1.3;margin:0 0 4px;text-shadow:0 1px 6px rgba(0,0,0,.4);}
.gift-hover-cta{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.85;}
.gift-hover-cta::after{content:' →';}

.gift-modal-box{max-width:var(--modal-lg);position:relative;padding:0;overflow:hidden;}
.gift-modal-photo{aspect-ratio:16/11;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.gift-modal-photo svg{width:38%;height:38%;}
.gift-modal-photo.has-photo img{width:100%;height:100%;object-fit:cover;}
.gift-modal-body{padding:26px 28px 30px;}
.gift-modal-name{font-family:'Julius Sans One',sans-serif;font-weight:400;font-size:22px;line-height:1.25;margin:0 0 12px;}
.gift-modal-why{font-size:14.5px;line-height:1.65;color:var(--muted);margin:0 0 22px;max-width:52ch;}
.gift-modal-buy{display:inline-flex;text-decoration:none;}

@media (max-width:640px){
  .gift-board{column-count:2;gap:14px;}
}
