/* Founding Lister badge: the first 15 listers on ZamPlace (market_founding_listers).
   A gold-foil pill with a moving shine, a gold ring and seal on the profile photo, and a note. */
.fl-badge {
  --fl-foil: linear-gradient(115deg, #a8711c 0%, #f9d77e 18%, #fff6d6 30%, #e0a83a 46%, #a8711c 60%, #f9d77e 78%, #fff6d6 88%, #e0a83a 100%);
  position: relative; display: inline-flex; align-items: center; gap: 7px; padding: 5px 13px 5px 5px;
  border-radius: 999px; background: var(--fl-foil); background-size: 220% 100%; animation: fl-foil 6s linear infinite;
  box-shadow: 0 0 0 1px rgba(107, 66, 16, .45), 0 4px 14px rgba(224, 168, 58, .45), inset 0 1px 0 rgba(255, 255, 255, .7);
  overflow: hidden; white-space: nowrap; vertical-align: middle; line-height: 1; text-transform: none; letter-spacing: 0;
}
.fl-badge::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 30%, rgba(255, 255, 255, .9) 45%, transparent 58%); transform: translateX(-120%); animation: fl-sweep 3.2s ease-in-out infinite; pointer-events: none; }
.fl-badge-star { width: 22px; height: 22px; border-radius: 50%; background: radial-gradient(circle at 50% 35%, #2b1f12, #120c07); box-shadow: inset 0 0 0 1.5px #f9d77e; display: grid; place-items: center; flex: 0 0 auto; }
.fl-badge-star svg { width: 13px; height: 13px; display: block; }
.fl-badge b { font: 800 12px/1 Inter, ui-sans-serif, system-ui, sans-serif; letter-spacing: .03em; color: #4a2c07; text-shadow: 0 1px 0 rgba(255, 246, 214, .7); }
.fl-badge small { font: 800 10px/1 Inter, ui-sans-serif, system-ui, sans-serif; color: #6b4210; }
.fl-badge.fl-badge-lg { padding: 7px 17px 7px 7px; gap: 9px; }
.fl-badge.fl-badge-lg .fl-badge-star { width: 28px; height: 28px; }
.fl-badge.fl-badge-lg .fl-badge-star svg { width: 16px; height: 16px; }
.fl-badge.fl-badge-lg b { font-size: 14px; }
.fl-badge.fl-badge-lg small { font-size: 11px; }

/* Profile photo: spinning gold ring and a seal at the top right (the presence dot keeps the bottom right). */
.profile-primary-wrap.is-founding { isolation: isolate; }
.profile-primary-wrap.is-founding::before { content: ""; position: absolute; inset: -6px; border-radius: 50%; z-index: -1; background: conic-gradient(#a8711c, #fff6d6, #e0a83a, #6b4210, #f9d77e, #a8711c); animation: fl-spin 8s linear infinite; box-shadow: 0 0 24px rgba(224, 168, 58, .55); }
.profile-primary-wrap.is-founding .profile-primary { border-color: #fff; }
.fl-seal { position: absolute; right: 2px; top: 4px; width: 34px; height: 34px; border-radius: 50%; background: radial-gradient(circle at 50% 35%, #2b1f12, #120c07); box-shadow: 0 0 0 2.5px #f9d77e, 0 0 0 4.5px #fff, 0 4px 12px rgba(224, 168, 58, .6); display: grid; place-items: center; z-index: 2; }
.fl-seal svg { width: 18px; height: 18px; display: block; }
.fl-note { display: inline-block; margin: 10px 0 0; padding: 8px 12px; border-radius: 12px; background: linear-gradient(135deg, #fffaf0, #fff3dc); border: 1px solid #f3dca8; color: #5b4313; font-size: 13px; font-weight: 600; line-height: 1.45; }

/* Listing page host card: the badge has its own line under the photo and name. */
.product-host-card > .fl-badge { justify-self: start; }

@keyframes fl-foil { to { background-position: 220% 0; } }
@keyframes fl-sweep { 0%, 55% { transform: translateX(-120%); } 85%, 100% { transform: translateX(120%); } }
@keyframes fl-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .fl-badge, .fl-badge::after, .profile-primary-wrap.is-founding::before { animation: none; }
  .fl-badge::after { display: none; }
}
