/* BlockFunding uses the shared independent-product card layout. */
.blockfunding-project {
  --card-accent: #d7b18d;
  border-color: #cfaf8e35;
  background: linear-gradient(125deg, #1c1721, #10141d 70%);
}
.product-card .project-content > .blockfunding-description { margin-bottom: 0; }
.blockfunding-copy .blockfunding-context { margin-top: 14px; color: #9f9dac; font-size: 12px; line-height: 1.8; }
.blockfunding-visual { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 12px 8px; background: radial-gradient(ellipse at 50% 50%, #73829c0d, transparent 68%); container: blockfunding / inline-size; }
.blockfunding-overview { display: block; width: 100%; height: 100%; max-width: 360px; flex: none; overflow: visible; }
@media (min-width: 1001px) {
  .independent-products { grid-auto-rows: 1fr; }
}
.blockfunding-overview .bf-flow { stroke-dashoffset: 110; opacity: 0; animation: bf-transfer 12s linear infinite; }
.blockfunding-overview .bf-collect-two { animation-delay: -1s; }
.blockfunding-overview .bf-vote { animation-delay: -8s; }
.blockfunding-overview .bf-release { animation-delay: -4s; }
.blockfunding-overview .bf-progress { stroke-dashoffset: 100; animation: bf-milestone 12s ease-in-out infinite; }
.blockfunding-overview .bf-vote-approved { opacity: .45; animation: bf-approval 12s ease-in-out infinite; }
.blockfunding-project:not(.in-view) .blockfunding-overview *,
.is-background .blockfunding-overview *,
body:has(#case-dialog[open]) .blockfunding-overview * { animation-play-state: paused; }
@keyframes bf-transfer {
  0%, 2% { opacity: 0; stroke-dashoffset: 110; }
  4% { opacity: 1; stroke-dashoffset: 110; }
  23% { opacity: 1; stroke-dashoffset: 0; }
  27%, 100% { opacity: 0; stroke-dashoffset: 0; }
}
@keyframes bf-milestone { 0%, 70% { stroke-dashoffset: 100; } 85%, 95% { stroke-dashoffset: 0; opacity: 1; } 100% { stroke-dashoffset: 0; opacity: 0; } }
@keyframes bf-approval { 0%, 44%, 100% { opacity: .45; } 55%, 90% { opacity: 1; } }
@container blockfunding (max-width: 400px) { .blockfunding-overview .bf-detail { display: none; }.blockfunding-overview text { font-size: 26px; } }
@media (prefers-reduced-motion: reduce) {
  .blockfunding-overview .bf-flow { display: none; animation: none !important; }
  .blockfunding-overview .bf-progress { animation: none !important; stroke-dashoffset: 100; }
  .blockfunding-overview .bf-vote-approved { animation: none !important; opacity: 1; }
}
@media print {
  .blockfunding-project { background: #fff; border-color: #ccc; }
  .blockfunding-copy .blockfunding-context { color: #333; }
}
