/* ─── ReviewBuddie – Promotion Card: animation engine + React components ──── */

/* ── Inject CSS (keyframes + card layout) ─────────────────────────────────── */
(function(){
  if (document.getElementById('pc-styles')) return;
  const el = document.createElement('style');
  el.id = 'pc-styles';
  el.textContent = `
    @keyframes fY{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
    @keyframes fYs{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
    @keyframes br{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
    @keyframes rCW{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
    @keyframes rCCW{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
    @keyframes dS{from{stroke-dashoffset:220}to{stroke-dashoffset:0}}
    @keyframes spkA{0%,100%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}
    @keyframes scnA{0%,100%{transform:translateY(-28px);opacity:0}50%{transform:translateY(28px);opacity:.9}}
    @keyframes wbA{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
    @keyframes bRA{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
    @keyframes rainA{0%{transform:translateY(-38px);opacity:0}55%,100%{transform:translateY(0);opacity:1}}
    @keyframes dlA{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
    @keyframes pulsA{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.2);opacity:1}}
    @keyframes shimA{0%{transform:translateX(-70px) skewX(-18deg);opacity:0}45%{opacity:.3}100%{transform:translateX(80px) skewX(-18deg);opacity:0}}

    .pc-frame{container-type:inline-size;width:100%;--u:calc(100cqw / 390)}
    .pc-card{background:white;border-radius:calc(var(--u)*28);width:100%;overflow:hidden;position:relative;
      box-shadow:0 calc(var(--u)*4) calc(var(--u)*32) rgba(0,0,0,.09),0 calc(var(--u)*1) calc(var(--u)*4) rgba(0,0,0,.04)}
    .pc-blob-tl{position:absolute;top:calc(var(--u)*-70);right:calc(var(--u)*-70);width:calc(var(--u)*220);height:calc(var(--u)*220);border-radius:50%;opacity:.55;pointer-events:none}
    .pc-blob-br{position:absolute;bottom:calc(var(--u)*-55);left:calc(var(--u)*-55);width:calc(var(--u)*170);height:calc(var(--u)*170);border-radius:50%;opacity:.4;pointer-events:none}
    .pc-inner{padding:calc(var(--u)*36) calc(var(--u)*32) calc(var(--u)*32);display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}
    .pc-logo-row{width:100%;display:flex;justify-content:center;margin-bottom:calc(var(--u)*28)}
    .pc-logo{display:flex;align-items:center;gap:calc(var(--u)*9);min-height:calc(var(--u)*34);justify-content:center}
    /* Uniform brand mark — no container. Logos render greyscale at a fixed max box; text renders as a letterspaced grey wordmark. */
    .pc-logo-img{max-height:calc(var(--u)*36);max-width:calc(var(--u)*170);width:auto;height:auto;object-fit:contain;display:block;filter:grayscale(1) opacity(.72)}
    .pc-logo-ph{width:calc(var(--u)*32);height:calc(var(--u)*32);border-radius:calc(var(--u)*9);background:#E2E8F0;display:flex;align-items:center;justify-content:center;flex-shrink:0}
    .pc-logo-brand{font-size:calc(var(--u)*14);font-weight:700;color:#94A3B8;letter-spacing:calc(var(--u)*3.5);text-transform:uppercase}
    .pc-title{font-size:calc(var(--u)*30);font-weight:800;color:#0F172A;text-align:center;line-height:1.15;letter-spacing:calc(var(--u)*-.8);margin-bottom:calc(var(--u)*12);width:100%}
    .pc-sub{font-size:calc(var(--u)*14);color:#64748B;text-align:center;line-height:1.72;max-width:calc(var(--u)*310);margin-bottom:calc(var(--u)*26);font-weight:400}
    .pc-stage{width:calc(var(--u)*240);height:calc(var(--u)*240);display:flex;align-items:center;justify-content:center;margin-bottom:calc(var(--u)*26)}
    .pc-stage svg{width:calc(var(--u)*240);height:calc(var(--u)*240);overflow:visible}
    .pc-pills{display:flex;gap:calc(var(--u)*8);flex-wrap:wrap;justify-content:center;margin-bottom:calc(var(--u)*26);width:100%}
    .pc-pill{display:flex;align-items:center;gap:calc(var(--u)*6);background:#F8FAFC;border:1px solid #E2E8F0;border-radius:100px;padding:calc(var(--u)*7) calc(var(--u)*13);font-size:calc(var(--u)*12);font-weight:500;color:#475569}
    .pc-pill-icon{width:calc(var(--u)*16);height:calc(var(--u)*16);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
    .pc-div{width:100%;height:1px;background:#F1F5F9;margin-bottom:calc(var(--u)*22)}
    .pc-cta-wrap{width:100%;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*12)}
    .pc-cta{width:100%;padding:calc(var(--u)*17) calc(var(--u)*24);border-radius:calc(var(--u)*14);border:none;color:white;font-size:calc(var(--u)*15);font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:calc(var(--u)*8);letter-spacing:calc(var(--u)*-.2);box-shadow:0 calc(var(--u)*4) calc(var(--u)*16) rgba(0,0,0,.13)}
    .pc-trust{display:flex;align-items:center;gap:calc(var(--u)*5);font-size:calc(var(--u)*11);color:#94A3B8;font-weight:500}
    .pc-powered{font-size:calc(var(--u)*10.5);color:#CBD5E1;font-weight:500;letter-spacing:.02em}
    .pc-powered strong{color:#94A3B8;font-weight:700}
    .pc-social-proof{display:flex;align-items:center;gap:calc(var(--u)*6);font-size:calc(var(--u)*11.5);font-weight:600;color:#64748B;margin-top:calc(var(--u)*-16);margin-bottom:calc(var(--u)*20)}
    .pc-social-proof .st{color:#F59E0B;letter-spacing:calc(var(--u)*1)}
    .pc-quick{font-size:calc(var(--u)*11);font-weight:600;color:#64748B;margin-top:calc(var(--u)*-4)}
    .pc-thumb{position:relative;width:46px;height:46px;border-radius:9px;border:1.5px solid #E2E8F0;background:#F8FAFC;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:2px;flex-shrink:0}
    .pc-thumb:hover{border-color:#BFDBFE;background:white}
    .pc-thumb.on{border-color:var(--accent);border-width:2px;background:white;box-shadow:0 0 0 3px var(--accent-50,#F2EFFD)}
    .pc-thumb svg{width:100%;height:100%;display:block}
    .pc-thumb .pc-ix{position:absolute;bottom:2px;right:3px;font-size:7px;font-weight:700;color:#CBD5E1;line-height:1;pointer-events:none}
    .pc-thumb.on .pc-ix{color:var(--accent)}
  `;
  document.head.appendChild(el);
})();

/* ── Themes ───────────────────────────────────────────────────────────────── */
const TH=[
  {n:"Warranty",      c:"#2563EB",l:"#EFF6FF",m:"#BFDBFE"},
  {n:"Ext. Warranty", c:"#7C3AED",l:"#F5F3FF",m:"#DDD6FE"},
  {n:"Cashback",      c:"#10B981",l:"#ECFDF5",m:"#A7F3D0"},
  {n:"Coupon",        c:"#8B5CF6",l:"#F5F3FF",m:"#DDD6FE"},
  {n:"Gift Card",     c:"#F59E0B",l:"#FFFBEB",m:"#FDE68A"},
  {n:"Product Info",  c:"#6366F1",l:"#EEF2FF",m:"#C7D2FE"},
  {n:"Download",      c:"#06B6D4",l:"#ECFEFF",m:"#A5F3FC"},
];

let _thIdx = 0;
const a = () => TH[_thIdx] || TH[0];

/* ── SVG helpers ──────────────────────────────────────────────────────────── */
const sp=(x,y,d="0s")=>`<g style="animation:spkA 4.5s ease-in-out ${d} infinite"><circle cx="${x}" cy="${y}" r="2.5" fill="${a().c}" opacity=".7"/></g>`;
const gl=(r,dur="4.5s")=>`<circle cx="80" cy="80" r="${r}" fill="${a().c}" opacity=".08"><animate attributeName="r" values="${r-8};${r+10};${r-8}" dur="${dur}" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/><animate attributeName="opacity" values=".06;.18;.06" dur="${dur}" repeatCount="indefinite"/></circle>`;
const rg=(r,spd,dash="4 7",dir="rCW",op=".18")=>`<circle cx="80" cy="80" r="${r}" fill="none" stroke="${a().c}" stroke-width=".9" stroke-opacity="${op}" stroke-dasharray="${dash}" style="animation:${dir} ${spd}s linear infinite;transform-origin:80px 80px"/>`;
const rp=(d="0s")=>`<circle cx="80" cy="80" r="12" fill="none" stroke="${a().c}" stroke-width="1.2" opacity="0"><animate attributeName="r" values="12;64" dur="4.5s" begin="${d}" repeatCount="indefinite"/><animate attributeName="opacity" values=".6;0" dur="4.5s" begin="${d}" repeatCount="indefinite"/></circle>`;
const shield=(x1=52,y1=44,x2=108,q=97)=>`M80 32 L${x2} ${y1} L${x2} 72 Q${x2} ${q} 80 108 Q${x1} ${q} ${x1} 72 L${x1} ${y1}Z`;

/* ── 70 animations (10 per type) ──────────────────────────────────────────── */
const ICONS = {
"Warranty":()=>[
`${gl(46)}${rg(60,10)}${rg(50,15,"3 5","rCCW","0.2")}<g style="animation:rCW 8s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="20" r="3.5" fill="${a().c}" opacity=".9"/></g><g style="animation:rCCW 13s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="28" r="2" fill="${a().c}" opacity=".6"/><circle cx="132" cy="80" r="1.8" fill="${a().c}" opacity=".5"/></g><g style="animation:fY 4.5s ease-in-out infinite,br 5s ease-in-out infinite;transform-origin:80px 76px"><path d="${shield()}" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><path d="M82 36 L106 47 L106 70 Q106 93 82 103" stroke="white" stroke-width="1" fill="none" opacity=".4" stroke-linecap="round"/><path d="M67 72 L76 82 L95 60" stroke="${a().c}" stroke-width="3.5" fill="none" stroke-linecap="round" stroke-linejoin="round" style="stroke-dasharray:55;stroke-dashoffset:55;animation:dS 1.2s ease-out .5s forwards"/></g>${sp(118,42,".6s")}${sp(34,62,"1.5s")}${sp(120,112,"2.4s")}`,
`${gl(42,"5s")}<circle cx="80" cy="80" r="58" fill="none" stroke="#E2E8F0" stroke-width="3"/><circle cx="80" cy="80" r="58" fill="none" stroke="${a().c}" stroke-width="3" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="364"><animate attributeName="stroke-dashoffset" values="364;0;364" dur="5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle>${rg(46,13,"2 4","rCCW","0.2")}<g style="animation:fY 4.5s ease-in-out infinite,br 5s ease-in-out infinite;transform-origin:80px 76px"><path d="M80 40 L104 52 L104 72 Q104 92 80 100 Q56 92 56 72 L56 52Z" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><path d="M68 70 L76 79 L94 59" stroke="${a().c}" stroke-width="3" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(26,28,".5s")}${sp(130,32,"1.8s")}`,
`${rp("0s")}${rp(".9s")}${gl(36,"4.5s")}<circle cx="80" cy="80" r="34" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><ellipse cx="68" cy="67" rx="8" ry="5" fill="white" opacity=".6"/><g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 76px"><path d="M80 50 L96 58 L96 70 Q96 82 80 88 Q64 82 64 70 L64 58Z" fill="${a().c}" opacity=".25" stroke="${a().c}" stroke-width="1.5"/><path d="M70 68 L76 75 L92 55" stroke="${a().c}" stroke-width="3.2" fill="none" stroke-linecap="round" stroke-linejoin="round" style="stroke-dasharray:55;stroke-dashoffset:55;animation:dS 1.2s ease-out .4s forwards"/></g>${sp(116,34,".5s")}${sp(28,116,"1.8s")}`,
`${gl(40,"5s")}${rg(54,18,"4 7","rCW","0.12")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 78px"><path d="M80 28 L108 42 L108 70 L80 84Z" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><path d="M52 42 L80 28 L80 84 L52 70Z" fill="${a().l}" stroke="${a().c}" stroke-width="1"/><path d="M52 42 L80 84 L80 110 L52 68Z" fill="${a().m}" opacity=".5" stroke="${a().c}" stroke-width="1"/><path d="M108 42 L80 84 L80 110 L108 68Z" fill="${a().c}" opacity=".3" stroke="${a().c}" stroke-width="1"/><path d="M52 42 L80 28 L108 42 L80 54Z" fill="white" opacity=".7" stroke="${a().c}" stroke-width="1"/><path d="M70 54 L78 63 L90 48" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(28,36,".5s")}${sp(130,114,"2s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="26" y="36" width="108" height="76" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="26" y="36" width="108" height="22" rx="8" fill="${a().l}"/><line x1="40" y1="74" x2="122" y2="74" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round"/><line x1="40" y1="83" x2="122" y2="83" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".6"/><circle cx="104" cy="88" r="13" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><path d="M99 88 L103 92 L110 82" stroke="${a().c}" stroke-width="2.2" fill="none" stroke-linecap="round" stroke-linejoin="round"/><path d="M50 112 L46 126 L56 121 L62 130 L66 112" fill="${a().c}" opacity=".7"/><path d="M82 112 L86 126 L76 121 L70 130 L66 112" fill="${a().c}" opacity=".7"/></g>${sp(20,36,".4s")}${sp(134,40,"1.6s")}`,
`${gl(38,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 76px"><path d="M20 76 Q20 42 80 38 Q140 42 140 76Z" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><path d="M24 76 Q24 46 80 44" stroke="white" stroke-width="1.2" fill="none" opacity=".5" stroke-linecap="round"/><line x1="80" y1="76" x2="80" y2="108" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/><path d="M80 108 Q80 118 90 118 Q100 118 100 108" stroke="${a().c}" stroke-width="2" fill="none" stroke-linecap="round"/><path d="M42 76 L80 52 L118 76" fill="${a().c}" opacity=".18"/></g>${sp(24,40,".7s")}${sp(132,46,"2s")}${sp(22,112,"3s")}`,
`${gl(40,"5s")}<circle cx="80" cy="80" r="56" fill="none" stroke="#E2E8F0" stroke-width="2.5"/><circle cx="80" cy="80" r="56" fill="none" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="352"><animate attributeName="stroke-dashoffset" values="352;0;352" dur="5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="54" y="42" width="52" height="9" rx="4.5" fill="${a().c}" opacity=".9"/><rect x="54" y="109" width="52" height="9" rx="4.5" fill="${a().c}" opacity=".9"/><path d="M58 51 L80 76 L102 51Z" fill="${a().l}" stroke="${a().m}" stroke-width="1"/><path d="M58 109 L80 84 L102 109Z" fill="${a().c}" opacity=".7" stroke="${a().c}" stroke-width="1"/><circle cx="80" cy="80" r="5" fill="${a().c}" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 80px"/></g>${sp(24,36,".5s")}${sp(134,118,"1.8s")}`,
`${gl(42,"4.5s")}${rg(54,18,"4 7","rCW","0.12")}<g style="animation:fYs 5s ease-in-out infinite;transform-origin:80px 80px"><path d="M72 32 L48 44 L48 66 Q48 84 72 92 Q96 84 96 66 L96 44Z" fill="${a().m}" stroke="${a().c}" stroke-width="1.2" opacity=".6"/><path d="M88 38 L64 50 L64 70 Q64 88 88 96 Q112 88 112 70 L112 50Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.8"/><path d="M78 68 L85 76 L100 56" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" stroke-linejoin="round" style="stroke-dasharray:50;stroke-dashoffset:50;animation:dS 1.2s ease-out .4s forwards"/></g>${sp(26,38,".6s")}${sp(128,42,"1.9s")}${sp(28,118,"3.1s")}`,
`${rp("0s")}${rp(".9s")}${gl(34,"4.5s")}<g style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"><path d="M80 20 L86 38 L106 38 L90 50 L97 68 L80 56 L63 68 L70 50 L54 38 L74 38Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><circle cx="80" cy="80" r="26" fill="white" stroke="${a().c}" stroke-width="1.5"/><circle cx="80" cy="80" r="26" fill="${a().l}" opacity=".4"/><path d="M66 80 L75 90 L96 68" stroke="${a().c}" stroke-width="3.2" fill="none" stroke-linecap="round" stroke-linejoin="round" style="stroke-dasharray:55;stroke-dashoffset:55;animation:dS 1s ease-out .4s forwards"/></g>${sp(120,38,".6s")}${sp(24,50,"1.8s")}`,
`${gl(40,"5s")}<clipPath id="wfc"><path d="M80 26 L110 40 L110 72 Q110 100 80 112 Q50 100 50 72 L50 40Z"/></clipPath><path d="M80 26 L110 40 L110 72 Q110 100 80 112 Q50 100 50 72 L50 40Z" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><rect x="50" y="26" width="60" height="86" fill="${a().m}" opacity=".6" clip-path="url(#wfc)"><animate attributeName="y" values="112;26;112" dur="5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></rect><path d="M80 26 L110 40 L110 72 Q110 100 80 112 Q50 100 50 72 L50 40Z" fill="none" stroke="${a().c}" stroke-width="2" style="animation:fY 5s ease-in-out infinite"/><path d="M67 74 L76 83 L96 60" stroke="${a().c}" stroke-width="3.2" fill="none" stroke-linecap="round" stroke-linejoin="round" style="animation:fY 5s ease-in-out infinite"/>${rg(54,16,"3 6","rCCW","0.12")}${sp(26,36,".5s")}${sp(130,46,"1.7s")}${sp(24,116,"3s")}`,
],

"Ext. Warranty":()=>[
`${gl(42,"5s")}${rg(56,10)}${rg(44,16,"3 5","rCCW","0.2")}<g style="animation:rCW 8s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="24" r="3.5" fill="${a().c}" opacity=".8"/></g><g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 76px"><path d="${shield()}" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><g style="animation:pulsA 5s ease-in-out infinite;transform-origin:80px 68px"><line x1="80" y1="56" x2="80" y2="80" stroke="${a().c}" stroke-width="4" stroke-linecap="round"/><line x1="68" y1="68" x2="92" y2="68" stroke="${a().c}" stroke-width="4" stroke-linecap="round"/></g><rect x="90" y="34" width="34" height="30" rx="5" fill="white" stroke="${a().m}" stroke-width="1.2"/><rect x="90" y="34" width="34" height="11" rx="5" fill="${a().l}"/><circle cx="100" cy="56" r="3" fill="${a().m}" style="animation:pulsA 5s ease-in-out .3s infinite;transform-origin:100px 56px"/><circle cx="110" cy="56" r="3" fill="${a().c}" style="animation:pulsA 5s ease-in-out .6s infinite;transform-origin:110px 56px"/></g>${sp(22,40,".6s")}${sp(28,118,"2s")}`,
`${gl(38,"5s")}<circle cx="80" cy="80" r="62" fill="none" stroke="#E2E8F0" stroke-width="2.5"/><circle cx="80" cy="80" r="62" fill="none" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="389"><animate attributeName="stroke-dashoffset" values="389;0;389" dur="5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><circle cx="80" cy="80" r="48" fill="none" stroke="#E2E8F0" stroke-width="2"/><circle cx="80" cy="80" r="48" fill="none" stroke="${a().m}" stroke-width="2" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="301"><animate attributeName="stroke-dashoffset" values="301;0;301" dur="4s" begin=".5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><g style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 78px"><path d="M80 54 L96 62 L96 76 Q96 90 80 96 Q64 90 64 76 L64 62Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.8"/><path d="M71 74 L78 81 L92 63" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(24,18,".4s")}${sp(134,128,"2s")}`,
`${gl(40,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><path d="${shield()}" fill="${a().l}" stroke="${a().m}" stroke-width="1.5" opacity=".6"/><circle cx="64" cy="70" r="26" fill="white" stroke="${a().c}" stroke-width="2"/><circle cx="64" cy="70" r="26" fill="${a().l}" opacity=".3"/><circle cx="64" cy="70" r="2.5" fill="${a().c}"/><line x1="64" y1="70" x2="64" y2="53" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" style="animation:rCW 6s linear infinite;transform-origin:64px 70px"/><line x1="64" y1="70" x2="76" y2="74" stroke="${a().m}" stroke-width="2" stroke-linecap="round" style="animation:rCW 60s linear infinite;transform-origin:64px 70px"/><circle cx="96" cy="46" r="14" fill="${a().c}" stroke="white" stroke-width="2"/><line x1="96" y1="39" x2="96" y2="53" stroke="white" stroke-width="2.5" stroke-linecap="round"/><line x1="89" y1="46" x2="103" y2="46" stroke="white" stroke-width="2.5" stroke-linecap="round"/></g>${sp(24,38,".7s")}${sp(130,38,"2s")}${sp(26,116,"3.2s")}`,
`${gl(38,"5s")}<g style="animation:rCW 11s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="30" r="4" fill="${a().c}" opacity=".9"/><circle cx="123" cy="55" r="3" fill="${a().c}" opacity=".6"/><circle cx="123" cy="105" r="3" fill="${a().c}" opacity=".6"/><circle cx="80" cy="130" r="4" fill="${a().c}" opacity=".9"/><circle cx="37" cy="105" r="3" fill="${a().c}" opacity=".6"/><circle cx="37" cy="55" r="3" fill="${a().c}" opacity=".6"/><circle cx="80" cy="80" r="50" fill="none" stroke="${a().m}" stroke-width="1" opacity=".5" stroke-dasharray="4 6"/></g><g style="animation:br 5s ease-in-out infinite;transform-origin:80px 80px"><path d="M80 22 L86 40 L106 40 L90 52 L97 70 L80 58 L63 70 L70 52 L54 40 L74 40Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><circle cx="80" cy="80" r="24" fill="white" stroke="${a().c}" stroke-width="1.5"/><path d="M68 80 L76 88 L95 68" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(22,36,".5s")}${sp(134,118,"1.8s")}`,
`${gl(40,"5s")}${rg(52,14,"4 7","rCCW","0.15")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><path d="${shield()}" fill="${a().l}" stroke="${a().m}" stroke-width="1.5"/><path d="M44 80 Q44 63 57 63 Q70 63 80 80 Q90 97 103 97 Q116 97 116 80 Q116 63 103 63 Q90 63 80 80 Q70 97 57 97 Q44 97 44 80Z" stroke="${a().c}" stroke-width="2.8" fill="none" style="stroke-dasharray:160;stroke-dashoffset:160;animation:dS 2s ease-out .3s forwards"/></g>${sp(26,32,".5s")}${sp(128,42,"1.5s")}${sp(24,122,"2.8s")}`,
`${gl(38,"4.5s")}<circle cx="80" cy="80" r="56" fill="none" stroke="#E2E8F0" stroke-width="2.5"/><circle cx="80" cy="80" r="56" fill="none" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="352"><animate attributeName="stroke-dashoffset" values="352;0;352" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><circle cx="80" cy="80" r="42" fill="none" stroke="#E2E8F0" stroke-width="2"/><circle cx="80" cy="80" r="42" fill="none" stroke="${a().m}" stroke-width="2" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="264"><animate attributeName="stroke-dashoffset" values="264;0;264" dur="3.5s" begin=".5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><circle cx="80" cy="80" r="28" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><path d="M80 56 L96 64 L96 78 Q96 90 80 96 Q64 90 64 78 L64 64Z" fill="${a().c}" opacity=".8"/><path d="M71 76 L78 83 L92 65" stroke="white" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/>${sp(26,20,".4s")}${sp(132,42,"1.6s")}`,
`${gl(36,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><rect x="20" y="56" width="120" height="56" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><circle cx="44" cy="67" r="9" fill="${a().l}" stroke="${a().m}" stroke-width="1.2"/><circle cx="80" cy="67" r="9" fill="${a().m}" stroke="${a().c}" stroke-width="1.2"/><circle cx="116" cy="67" r="9" fill="${a().c}" stroke="${a().c}" stroke-width="1.2"/><path d="M111 67 L115 71 L122 63" stroke="white" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"/><line x1="53" y1="67" x2="71" y2="67" stroke="${a().m}" stroke-width="1.2" opacity=".5"/><line x1="89" y1="67" x2="107" y2="67" stroke="${a().c}" stroke-width="1.2" opacity=".5"/><line x1="28" y1="84" x2="66" y2="84" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".35"/><line x1="74" y1="84" x2="112" y2="84" stroke="${a().c}" stroke-width="1.5" stroke-linecap="round" opacity=".45"/></g>${sp(22,36,".5s")}${sp(134,36,"1.5s")}${sp(22,120,"2.5s")}`,
`${gl(40,"5s")}${rg(52,14,"4 7","rCCW","0.15")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 76px"><path d="${shield()}" fill="${a().l}" stroke="${a().c}" stroke-width="1.8"/><g style="animation:pulsA 5s ease-in-out infinite;transform-origin:80px 68px"><line x1="80" y1="55" x2="80" y2="81" stroke="${a().c}" stroke-width="4.5" stroke-linecap="round"/><line x1="67" y1="68" x2="93" y2="68" stroke="${a().c}" stroke-width="4.5" stroke-linecap="round"/></g><circle cx="108" cy="42" r="16" fill="${a().c}" stroke="white" stroke-width="2"/><line x1="108" y1="35" x2="108" y2="49" stroke="white" stroke-width="2.8" stroke-linecap="round"/><line x1="101" y1="42" x2="115" y2="42" stroke="white" stroke-width="2.8" stroke-linecap="round"/></g>${sp(24,30,".7s")}${sp(30,120,"2s")}`,
`${gl(40,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 76px"><path d="${shield()}" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><clipPath id="ewc"><path d="${shield()}"/></clipPath><rect x="52" y="32" width="56" height="80" fill="${a().c}" opacity=".35" clip-path="url(#ewc)"><animate attributeName="y" values="112;32;112" dur="5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></rect><path d="${shield()}" fill="none" stroke="${a().c}" stroke-width="2"/><path d="M67 73 L76 82 L96 59" stroke="${a().c}" stroke-width="3" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(24,34,".4s")}${sp(134,48,"1.8s")}${sp(26,118,"3s")}`,
`${gl(38,"5s")}<g style="animation:rCCW 18s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="24" r="3" fill="${a().c}" opacity=".7"/><circle cx="124" cy="52" r="2.5" fill="${a().c}" opacity=".5"/><circle cx="124" cy="108" r="2.5" fill="${a().c}" opacity=".5"/><circle cx="80" cy="136" r="3" fill="${a().c}" opacity=".7"/><circle cx="36" cy="108" r="2.5" fill="${a().c}" opacity=".5"/><circle cx="36" cy="52" r="2.5" fill="${a().c}" opacity=".5"/><line x1="80" y1="24" x2="124" y2="52" stroke="${a().m}" stroke-width=".8" opacity=".35"/><line x1="124" y1="52" x2="124" y2="108" stroke="${a().m}" stroke-width=".8" opacity=".35"/><line x1="124" y1="108" x2="80" y2="136" stroke="${a().m}" stroke-width=".8" opacity=".35"/><line x1="80" y1="136" x2="36" y2="108" stroke="${a().m}" stroke-width=".8" opacity=".35"/><line x1="36" y1="108" x2="36" y2="52" stroke="${a().m}" stroke-width=".8" opacity=".35"/><line x1="36" y1="52" x2="80" y2="24" stroke="${a().m}" stroke-width=".8" opacity=".35"/></g><g style="animation:br 5s ease-in-out infinite;transform-origin:80px 78px"><path d="M80 40 L104 52 L104 70 Q104 88 80 96 Q56 88 56 70 L56 52Z" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><path d="M70 68 L77 76 L93 57" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(24,34,".5s")}${sp(132,48,"1.7s")}`,
],

"Cashback":()=>[
`${gl(40,"4.5s")}${rg(54,9)}${rg(44,14,"3 5","rCCW","0.2")}<g style="animation:rCW 7s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="22" r="11" fill="${a().l}" stroke="${a().c}" stroke-width="1.8"/><text x="80" y="27" text-anchor="middle" font-size="11" font-weight="700" fill="${a().c}" font-family="system-ui">₹</text></g><g style="animation:rCCW 11s linear infinite;transform-origin:80px 80px"><circle cx="80" cy="28" r="9" fill="${a().m}" stroke="${a().c}" stroke-width="1.2"/></g><circle cx="80" cy="80" r="30" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><text x="80" y="88" text-anchor="middle" font-size="24" font-weight="800" fill="${a().c}" font-family="system-ui" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 80px">₹</text>${sp(28,32,".5s")}${sp(130,42,"1.8s")}${sp(24,118,"3s")}`,
`${gl(38,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 88px"><rect x="28" y="64" width="104" height="60" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="28" y="64" width="104" height="22" rx="10" fill="${a().l}"/><rect x="96" y="80" width="34" height="28" rx="7" fill="${a().l}" stroke="${a().c}" stroke-width="1.2"/><circle cx="113" cy="94" r="8" fill="${a().c}" opacity=".7"/><rect x="38" y="108" width="52" height="5" rx="2.5" fill="#E2E8F0"/><rect x="38" y="108" width="0" height="5" rx="2.5" fill="${a().c}"><animate attributeName="width" values="0;42;42" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></rect></g><circle cx="42" cy="50" r="9" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:fYs 4.5s ease-in-out infinite"/><text x="42" y="54" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" style="animation:fYs 4.5s ease-in-out infinite">₹</text><circle cx="80" cy="42" r="9" fill="${a().m}" stroke="${a().c}" stroke-width="1.5" style="animation:fYs 4.5s ease-in-out .35s infinite"/><text x="80" y="46" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" style="animation:fYs 4.5s ease-in-out .35s infinite">₹</text>${sp(22,70,"1s")}${sp(130,70,"2.3s")}`,
`${rp("0s")}${rp(".9s")}${gl(36,"4.5s")}<circle cx="80" cy="80" r="36" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><text x="80" y="92" text-anchor="middle" font-size="40" font-weight="900" fill="${a().c}" font-family="system-ui" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 80px">%</text>${sp(24,28,".5s")}${sp(134,28,"1.7s")}${sp(26,124,"3s")}`,
`${gl(34,"4s")}<g style="animation:fY 4s ease-in-out infinite;transform-origin:80px 88px"><line x1="26" y1="112" x2="134" y2="112" stroke="#E2E8F0" stroke-width="1.5"/><rect x="34" y="92" width="13" height="20" rx="3" fill="${a().m}" style="animation:wbA 1.4s ease-in-out infinite;transform-origin:40px 112px"/><rect x="54" y="76" width="13" height="36" rx="3" fill="${a().c}" opacity=".6" style="animation:wbA 1.4s ease-in-out .2s infinite;transform-origin:60px 112px"/><rect x="74" y="60" width="13" height="52" rx="3" fill="${a().c}" style="animation:wbA 1.4s ease-in-out .4s infinite;transform-origin:80px 112px"/><rect x="94" y="70" width="13" height="42" rx="3" fill="${a().c}" opacity=".7" style="animation:wbA 1.4s ease-in-out .6s infinite;transform-origin:100px 112px"/><rect x="114" y="84" width="13" height="28" rx="3" fill="${a().m}" style="animation:wbA 1.4s ease-in-out .8s infinite;transform-origin:120px 112px"/><polyline points="34,92 54,76 74,60 94,70 114,84" fill="none" stroke="${a().c}" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" opacity=".7"/><circle cx="74" cy="50" r="10" fill="${a().c}" style="animation:pulsA 4s ease-in-out infinite;transform-origin:74px 50px"/><text x="74" y="55" text-anchor="middle" font-size="10" font-weight="700" fill="white" font-family="system-ui">₹</text></g>${sp(22,36,".7s")}${sp(132,42,"2s")}`,
`${gl(38,"4.5s")}${rg(52,16,"3 6","rCCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="50" y="22" width="60" height="106" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="54" y="30" width="52" height="90" rx="8" fill="#F8FAFC"/><circle cx="80" cy="120" r="4" fill="#E2E8F0"/><text x="80" y="72" text-anchor="middle" font-size="26" font-weight="800" fill="${a().c}" font-family="system-ui" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 68px">₹</text><rect x="60" y="86" width="40" height="5" rx="2.5" fill="#E2E8F0"/><rect x="60" y="86" width="0" height="5" rx="2.5" fill="${a().c}"><animate attributeName="width" values="0;40;0" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></rect></g>${sp(24,32,".5s")}${sp(128,32,"1.8s")}`,
`${gl(34,"4s")}<g style="animation:fY 4s ease-in-out infinite;transform-origin:80px 80px"><ellipse cx="80" cy="102" rx="30" ry="7" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><rect x="50" y="90" width="60" height="12" fill="${a().l}"/><ellipse cx="80" cy="90" rx="30" ry="7" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><rect x="50" y="78" width="60" height="12" fill="${a().l}"/><ellipse cx="80" cy="78" rx="30" ry="7" fill="${a().m}" stroke="${a().c}" stroke-width="1.2"/><rect x="50" y="66" width="60" height="12" fill="${a().l}"/><ellipse cx="80" cy="66" rx="30" ry="7" fill="${a().l}" stroke="${a().c}" stroke-width="1.2"/><rect x="50" y="54" width="60" height="12" fill="${a().l}"/><ellipse cx="80" cy="54" rx="30" ry="7" fill="white" stroke="${a().c}" stroke-width="1.5"/><text x="80" y="59" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">₹</text></g>${sp(24,36,".5s")}${sp(132,38,"1.7s")}`,
`${gl(38,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="18" y="50" width="124" height="76" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="18" y="50" width="124" height="22" rx="10" fill="${a().l}"/><circle cx="38" cy="63" r="10" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><circle cx="38" cy="63" r="6" fill="${a().c}" opacity=".7"/><rect x="28" y="84" width="56" height="6" rx="3" fill="#E2E8F0"/><rect x="28" y="84" width="0" height="6" rx="3" fill="${a().c}"><animate attributeName="width" values="0;56;56;0" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1;.4 0 .6 1"/></rect></g>${sp(20,40,".5s")}${sp(136,42,"1.7s")}`,
`${rp("0s")}${gl(34,"5s")}<g style="animation:br 5s ease-in-out infinite;transform-origin:80px 80px"><circle cx="80" cy="80" r="32" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><text x="80" y="88" text-anchor="middle" font-size="20" font-weight="800" fill="${a().c}" font-family="system-ui">₹</text></g>${sp(120,38,".6s")}${sp(122,116,"2s")}`,
`${gl(32,"4s")}<circle cx="36" cy="26" r="9" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:rainA 4s ease-in-out infinite"/><text x="36" y="30" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" style="animation:rainA 4s ease-in-out infinite">₹</text><circle cx="80" cy="18" r="10" fill="${a().m}" stroke="${a().c}" stroke-width="1.5" style="animation:rainA 4s ease-in-out .3s infinite"/><text x="80" y="22" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui" style="animation:rainA 4s ease-in-out .3s infinite">₹</text><circle cx="124" cy="26" r="9" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:rainA 4s ease-in-out .6s infinite"/><text x="124" y="30" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" style="animation:rainA 4s ease-in-out .6s infinite">₹</text><rect x="20" y="98" width="120" height="40" rx="8" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><rect x="20" y="98" width="120" height="16" rx="8" fill="${a().m}" opacity=".6"/>`,
`${gl(38,"4.5s")}${rg(54,12,"4 7","rCCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="14" y="48" width="132" height="80" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="14" y="48" width="132" height="26" rx="12" fill="${a().l}"/><rect x="14" y="64" width="132" height="10" fill="${a().m}" opacity=".4"/><rect x="26" y="86" width="32" height="20" rx="4" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><circle cx="110" cy="96" r="12" fill="${a().c}" opacity=".8" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:110px 96px"/></g>${sp(22,36,".5s")}${sp(134,38,"1.7s")}${sp(26,136,"2.9s")}`,
],

"Coupon":()=>[
`${gl(40,"5s")}${rg(56,12,"4 7","rCCW","0.12")}<g style="animation:fY 5s ease-in-out infinite,bRA 5s ease-in-out infinite;transform-origin:80px 80px"><path d="M12 62 L12 98 Q12 102 16 102 L60 102 Q60 95 68 95 Q76 95 76 102 L144 102 Q148 102 148 98 L148 62 Q148 58 144 58 L76 58 Q76 65 68 65 Q60 65 60 58 L16 58 Q12 58 12 62Z" fill="white" stroke="${a().c}" stroke-width="1.8"/><line x1="76" y1="58" x2="76" y2="102" stroke="${a().c}" stroke-width="1.2" stroke-dasharray="4 3" opacity=".5"/><text x="42" y="85" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">COUPON</text><line x1="90" y1="72" x2="136" y2="72" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round"/></g>${sp(22,34,".5s")}${sp(130,36,"1.7s")}${sp(24,120,"2.9s")}`,
`${gl(38,"5s")}<g style="animation:bRA 5s ease-in-out infinite,fY 5s ease-in-out infinite;transform-origin:80px 30px"><path d="M34 34 L34 128 Q34 134 40 134 L120 134 Q126 134 126 128 L126 34 Q126 28 120 28 L56 28 L34 34Z" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="34" y="34" width="92" height="30" fill="${a().l}" opacity=".5"/><text x="82" y="58" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">EXCLUSIVE</text><text x="82" y="122" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">OFFER</text></g>${sp(22,30,".7s")}${sp(136,50,"2s")}`,
`${gl(38,"4.5s")}${rg(52,12,"4 7","rCW","0.15")}<circle cx="80" cy="80" r="36" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><text x="80" y="92" text-anchor="middle" font-size="44" font-weight="900" fill="${a().c}" font-family="system-ui" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 80px">%</text>${rp("0s")}${sp(24,28,".5s")}${sp(132,30,"1.6s")}${sp(26,128,"2.8s")}`,
`${gl(40,"4s")}<rect x="28" y="28" width="104" height="104" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><g fill="none" stroke="${a().c}" stroke-width="2.8" stroke-linecap="round" stroke-linejoin="round"><path d="M38 50 L38 38 L50 38"/><path d="M110 38 L122 38 L122 50"/><path d="M38 110 L38 122 L50 122"/><path d="M110 122 L122 122 L122 110"/></g><rect x="42" y="42" width="26" height="26" rx="3" fill="${a().l}" stroke="${a().m}" stroke-width="1"/><rect x="47" y="47" width="16" height="16" rx="2" fill="${a().c}" opacity=".6"/><rect x="92" y="42" width="26" height="26" rx="3" fill="${a().l}" stroke="${a().m}" stroke-width="1"/><rect x="97" y="47" width="16" height="16" rx="2" fill="${a().c}" opacity=".6"/><rect x="42" y="92" width="26" height="26" rx="3" fill="${a().l}" stroke="${a().m}" stroke-width="1"/><rect x="47" y="97" width="16" height="16" rx="2" fill="${a().c}" opacity=".6"/><clipPath id="qcl"><rect x="28" y="28" width="104" height="104" rx="10"/></clipPath><rect x="28" y="78" width="104" height="10" rx="3" fill="${a().l}" clip-path="url(#qcl)" style="animation:scnA 3s ease-in-out infinite"/>`,
`${gl(38,"4.5s")}<circle cx="80" cy="80" r="50" fill="none" stroke="${a().m}" stroke-width="3" stroke-dasharray="5 4" style="animation:rCW 8s linear infinite;transform-origin:80px 80px"/><circle cx="80" cy="80" r="40" fill="none" stroke="${a().c}" stroke-width="1.5" stroke-dasharray="3 3" style="animation:rCCW 6s linear infinite;transform-origin:80px 80px"/><circle cx="80" cy="80" r="32" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><text x="80" y="72" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" letter-spacing="1">SPECIAL</text><text x="80" y="84" text-anchor="middle" font-size="13" font-weight="800" fill="${a().c}" font-family="system-ui">OFFER</text><text x="80" y="96" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" letter-spacing="1">LIMITED</text>${sp(26,26,".5s")}${sp(130,128,"2s")}`,
`${gl(38,"5s")}<g style="animation:br 5s ease-in-out infinite;transform-origin:80px 80px"><path d="M80 14 L86 34 L108 28 L98 48 L120 50 L103 64 L114 84 L92 80 L88 102 L80 82 L72 102 L68 80 L46 84 L57 64 L40 50 L62 48 L52 28 L74 34Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><circle cx="80" cy="80" r="22" fill="white" stroke="${a().m}" stroke-width="1"/><text x="80" y="86" text-anchor="middle" font-size="14" font-weight="900" fill="${a().c}" font-family="system-ui">DEAL!</text></g>${sp(20,32,".5s")}${sp(138,30,"1.5s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="18" y="50" width="124" height="76" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="18" y="50" width="124" height="22" rx="10" fill="${a().l}"/><circle cx="34" cy="96" r="11" fill="#F8FAFC" stroke="${a().m}" stroke-width="1.5"/><circle cx="60" cy="96" r="11" fill="#F8FAFC" stroke="${a().m}" stroke-width="1.5"/><circle cx="86" cy="96" r="11" fill="#F8FAFC" stroke="${a().m}" stroke-width="1.5"/><circle cx="112" cy="96" r="11" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:112px 96px"/><path d="M107 96 L111 100 L118 92" stroke="${a().c}" stroke-width="2.2" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(20,40,".5s")}${sp(136,42,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="18" y="60" width="124" height="36" rx="6" fill="white" stroke="${a().c}" stroke-width="1.5"/><line x1="18" y1="78" x2="142" y2="78" stroke="${a().m}" stroke-width="1.5" stroke-dasharray="7 5" opacity=".6"/><text x="80" y="72" text-anchor="middle" font-size="8" font-weight="600" fill="${a().c}" font-family="system-ui" opacity=".8">✦ CUT HERE ✦</text><text x="80" y="90" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">SAVE MORE</text><circle cx="18" cy="78" r="10" fill="${a().c}"/></g>${sp(24,34,".6s")}${sp(130,36,"1.8s")}${sp(26,120,"3s")}`,
`${gl(36,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><rect x="20" y="50" width="120" height="76" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="20" y="50" width="120" height="22" rx="10" fill="${a().l}"/><text x="80" y="65" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui" letter-spacing="1">LOYALTY COUPON</text><line x1="92" y1="74" x2="128" y2="74" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".5"/><line x1="92" y1="82" x2="122" y2="82" stroke="${a().m}" stroke-width="1" stroke-linecap="round" opacity=".4"/></g>${sp(20,36,".5s")}${sp(136,38,"1.7s")}${sp(22,132,"3s")}`,
`${gl(38,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><rect x="20" y="50" width="120" height="76" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="20" y="50" width="120" height="22" rx="10" fill="${a().l}"/><line x1="80" y1="50" x2="80" y2="126" stroke="${a().m}" stroke-width="1.2" opacity=".3"/><path d="M80 50 Q70 36 60 40 Q56 44 64 48 Q72 49 80 50Z" fill="${a().c}" opacity=".7"/><path d="M80 50 Q90 36 100 40 Q104 44 96 48 Q88 49 80 50Z" fill="${a().c}" opacity=".7"/><circle cx="80" cy="50" r="5" fill="${a().c}" stroke="white" stroke-width="1.5"/></g>${sp(20,36,".5s")}${sp(136,38,"1.7s")}`,
],

"Gift Card":()=>[
`${gl(40,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 82px"><rect x="12" y="50" width="136" height="80" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="12" y="50" width="136" height="26" rx="12" fill="${a().l}"/><rect x="12" y="64" width="136" height="12" fill="${a().m}" opacity=".35"/><path d="M80 50 Q70 36 60 40 Q56 44 66 48 Q73 49 80 50Z" fill="${a().c}" opacity=".7"/><path d="M80 50 Q90 36 100 40 Q104 44 94 48 Q87 49 80 50Z" fill="${a().c}" opacity=".7"/><circle cx="80" cy="50" r="5.5" fill="${a().c}" stroke="white" stroke-width="1.5"/><rect x="24" y="86" width="32" height="20" rx="4" fill="${a().m}" stroke="${a().c}" stroke-width="1"/><text x="105" y="110" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text></g>${sp(22,36,".5s")}${sp(134,36,"1.7s")}`,
`${gl(34,"5s")}<g style="animation:fYs 5s ease-in-out infinite;transform-origin:80px 100px"><rect x="30" y="84" width="100" height="52" rx="6" fill="${a().l}" stroke="${a().c}" stroke-width="1.2"/><rect x="26" y="70" width="108" height="20" rx="5" fill="${a().c}" opacity=".7" stroke="${a().c}" stroke-width="1"/><rect x="74" y="70" width="12" height="66" fill="white" opacity=".3"/></g><g style="animation:rainA 5s ease-in-out infinite;transform-origin:80px 64px"><rect x="46" y="32" width="68" height="42" rx="6" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="46" y="32" width="68" height="14" rx="6" fill="${a().l}"/></g><path d="M80 70 Q68 52 58 56 Q54 60 64 64 Q72 65 80 70Z" fill="${a().c}" opacity=".8"/><path d="M80 70 Q92 52 102 56 Q106 60 96 64 Q88 65 80 70Z" fill="${a().c}" opacity=".8"/><circle cx="80" cy="70" r="6" fill="${a().c}" stroke="white" stroke-width="1.5"/>${sp(24,30,".5s")}${sp(132,30,"1.5s")}`,
`${gl(40,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 82px"><rect x="22" y="52" width="116" height="74" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="22" y="52" width="116" height="22" rx="10" fill="${a().l}"/><text x="80" y="68" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text><text x="80" y="94" text-anchor="middle" font-size="9" font-weight="600" fill="${a().c}" font-family="system-ui" opacity=".8">★  ★  ★  ★  ★</text></g>${sp(22,34,".5s")}${sp(132,38,"1.8s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 82px"><rect x="18" y="60" width="124" height="76" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><path d="M18 60 L80 94 L142 60" stroke="${a().m}" stroke-width="1.8" fill="none" stroke-linejoin="round"/><rect x="38" y="36" width="84" height="50" rx="6" fill="white" stroke="#E2E8F0" stroke-width="1.2"/><rect x="38" y="36" width="84" height="16" rx="6" fill="${a().l}"/><text x="80" y="49" text-anchor="middle" font-size="8" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text></g>${sp(20,28,".5s")}${sp(138,30,"1.7s")}`,
`${gl(38,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><ellipse cx="48" cy="54" rx="16" ry="22" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><ellipse cx="80" cy="48" rx="14" ry="18" fill="${a().m}" stroke="${a().c}" stroke-width="1.5"/><ellipse cx="112" cy="54" rx="16" ry="22" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><line x1="48" y1="76" x2="54" y2="92" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round"/><line x1="80" y1="66" x2="80" y2="92" stroke="${a().c}" stroke-width="1.5" stroke-linecap="round"/><line x1="112" y1="76" x2="106" y2="92" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round"/><rect x="34" y="92" width="92" height="32" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><text x="80" y="115" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text></g>${sp(20,28,".6s")}${sp(136,26,"1.9s")}`,
`${gl(38,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 82px"><rect x="20" y="50" width="120" height="76" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="20" y="50" width="120" height="22" rx="10" fill="${a().l}"/><text x="80" y="65" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text><text x="80" y="88" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">REDEEM NOW</text></g>`,
`${gl(40,"5s")}${rg(54,16,"4 7","rCCW","0.12")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 82px"><rect x="10" y="46" width="140" height="86" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="10" y="46" width="140" height="28" rx="12" fill="${a().l}"/><text x="80" y="63" text-anchor="middle" font-size="8" font-weight="700" fill="${a().c}" font-family="system-ui" letter-spacing="1.5">★ PREMIUM GIFT ★</text><text x="112" y="112" text-anchor="middle" font-size="9" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT CARD</text></g>${sp(20,34,".5s")}${sp(136,36,"1.7s")}`,
`${gl(38,"4.5s")}${rg(54,14,"4 7","rCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="18" y="48" width="124" height="80" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="18" y="48" width="124" height="22" rx="12" fill="${a().l}"/><text x="80" y="64" text-anchor="middle" font-size="8" font-weight="700" fill="${a().c}" font-family="system-ui" letter-spacing="1">E-GIFT CARD</text><circle cx="108" cy="89" r="14" fill="${a().c}" opacity=".8" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:108px 89px"/><text x="108" y="94" text-anchor="middle" font-size="14" font-weight="800" fill="white" font-family="system-ui">✓</text></g>${sp(20,36,".5s")}${sp(136,38,"1.8s")}`,
`${gl(38,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 82px"><rect x="18" y="48" width="124" height="80" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="18" y="48" width="124" height="22" rx="12" fill="${a().l}"/><line x1="80" y1="48" x2="80" y2="128" stroke="${a().m}" stroke-width="1.2" opacity=".2"/><path d="M80 48 Q68 32 56 36 Q52 40 62 44 Q71 45 80 48Z" fill="${a().c}" opacity=".75"/><path d="M80 48 Q92 32 104 36 Q108 40 98 44 Q89 45 80 48Z" fill="${a().c}" opacity=".75"/><circle cx="80" cy="48" r="6" fill="${a().c}" stroke="white" stroke-width="1.5"/><text x="48" y="80" text-anchor="middle" font-size="10" font-weight="700" fill="${a().c}" font-family="system-ui">GIFT</text><text x="48" y="94" text-anchor="middle" font-size="8" font-weight="600" fill="${a().c}" font-family="system-ui" opacity=".7">CARD</text></g>${sp(18,34,".5s")}${sp(136,36,"1.7s")}`,
`${gl(38,"5s")}${rg(56,14,"4 7","rCW","0.12")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><rect x="14" y="48" width="132" height="82" rx="12" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><rect x="14" y="48" width="132" height="22" rx="12" fill="${a().c}" opacity=".7"/><rect x="24" y="78" width="42" height="26" rx="5" fill="white" opacity=".5" stroke="${a().c}" stroke-width=".8"/><text x="104" y="86" text-anchor="middle" font-size="8" font-weight="700" fill="${a().c}" font-family="system-ui">REWARD</text><text x="104" y="98" text-anchor="middle" font-size="8" font-weight="600" fill="${a().c}" font-family="system-ui" opacity=".7">GIFT CARD</text></g>${sp(20,36,".5s")}${sp(136,38,"1.7s")}`,
],

"Product Info":()=>[
`${gl(38,"4.5s")}${rg(52,12,"4 7","rCW","0.15")}<circle cx="80" cy="80" r="36" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><circle cx="80" cy="65" r="4" fill="${a().c}" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 65px"/><line x1="80" y1="73" x2="80" y2="93" stroke="${a().c}" stroke-width="3.5" stroke-linecap="round"/>${rp("0s")}${sp(26,28,".5s")}${sp(130,30,"1.7s")}${sp(26,124,"3s")}`,
`${gl(34,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:78px 82px"><circle cx="64" cy="62" r="30" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><circle cx="64" cy="62" r="22" fill="white" stroke="${a().m}" stroke-width="1"/><circle cx="58" cy="55" r="4" fill="${a().c}" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:58px 55px"/><line x1="58" y1="63" x2="58" y2="74" stroke="${a().c}" stroke-width="3" stroke-linecap="round"/><line x1="88" y1="86" x2="112" y2="110" stroke="${a().c}" stroke-width="6" stroke-linecap="round"/><line x1="88" y1="86" x2="112" y2="110" stroke="white" stroke-width="3" stroke-linecap="round" opacity=".4"/></g>${sp(20,26,".4s")}${sp(128,30,"1.6s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="28" y="34" width="104" height="102" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="52" y="24" width="56" height="24" rx="6" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><line x1="40" y1="64" x2="120" y2="64" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".4"/><line x1="40" y1="76" x2="120" y2="76" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".35"/><line x1="40" y1="88" x2="100" y2="88" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".3"/><circle cx="108" cy="112" r="15" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:108px 112px"/><circle cx="108" cy="108" r="3" fill="${a().c}" opacity=".9"/><line x1="108" y1="113" x2="108" y2="121" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/></g>${sp(22,24,".5s")}${sp(132,28,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="22" y="26" width="116" height="116" rx="6" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="22" y="26" width="22" height="116" rx="6" fill="${a().l}"/><line x1="52" y1="48" x2="126" y2="48" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".4"/><line x1="52" y1="62" x2="126" y2="62" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".35"/><line x1="52" y1="76" x2="126" y2="76" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".3"/><circle cx="110" cy="114" r="16" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:110px 114px"/><circle cx="110" cy="110" r="3" fill="${a().c}" opacity=".9"/><line x1="110" y1="115" x2="110" y2="123" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/></g>${sp(20,20,".5s")}${sp(132,22,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 76px"><path d="M18 30 Q18 24 24 24 L136 24 Q142 24 142 30 L142 90 Q142 96 136 96 L56 96 L38 116 L38 96 L24 96 Q18 96 18 90Z" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><circle cx="80" cy="50" r="5" fill="${a().c}" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 50px"/><line x1="80" y1="58" x2="80" y2="78" stroke="${a().c}" stroke-width="3.5" stroke-linecap="round"/></g>${sp(20,16,".5s")}${sp(138,18,"1.7s")}${sp(24,120,"3s")}`,
`${gl(36,"5s")}${rg(54,16,"4 7","rCCW","0.12")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 72px"><path d="M80 26 L116 44 L116 82 L80 100 L44 82 L44 44Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><path d="M80 26 L116 44 L80 62 L44 44Z" fill="${a().m}" opacity=".6"/><circle cx="80" cy="46" r="4" fill="${a().c}" style="animation:pulsA 5s ease-in-out infinite;transform-origin:80px 46px"/><line x1="80" y1="53" x2="80" y2="67" stroke="${a().c}" stroke-width="3" stroke-linecap="round"/></g>${sp(24,16,".5s")}${sp(132,20,"1.7s")}${sp(26,116,"3s")}`,
`${gl(34,"4s")}<g style="animation:fY 4s ease-in-out infinite;transform-origin:80px 86px"><rect x="22" y="36" width="116" height="98" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="22" y="36" width="116" height="20" rx="8" fill="${a().l}"/><rect x="34" y="90" width="12" height="36" rx="3" fill="${a().m}" style="animation:wbA 1.3s ease-in-out infinite;transform-origin:40px 126px"/><rect x="52" y="74" width="12" height="52" rx="3" fill="${a().c}" opacity=".6" style="animation:wbA 1.3s ease-in-out .2s infinite;transform-origin:58px 126px"/><rect x="70" y="64" width="12" height="62" rx="3" fill="${a().c}" style="animation:wbA 1.3s ease-in-out .4s infinite;transform-origin:76px 126px"/><rect x="88" y="70" width="12" height="56" rx="3" fill="${a().c}" opacity=".7" style="animation:wbA 1.3s ease-in-out .6s infinite;transform-origin:94px 126px"/><rect x="106" y="80" width="12" height="46" rx="3" fill="${a().m}" style="animation:wbA 1.3s ease-in-out .8s infinite;transform-origin:112px 126px"/><line x1="22" y1="126" x2="138" y2="126" stroke="#E2E8F0" stroke-width="1.2"/></g>${sp(20,24,".5s")}${sp(134,26,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><path d="M30 20 L30 128 Q30 134 36 134 L124 134 Q130 134 130 128 L130 48 L100 20Z" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><path d="M100 20 L100 48 L130 48" fill="${a().l}" stroke="${a().m}" stroke-width="1.2"/><line x1="44" y1="70" x2="116" y2="70" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".4"/><line x1="44" y1="82" x2="116" y2="82" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".35"/><circle cx="108" cy="108" r="16" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:108px 108px"/><path d="M100 108 L105 113 L117 100" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>${sp(22,14,".5s")}${sp(132,22,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 76px"><path d="M28 26 L28 94 Q28 102 36 102 L82 102 Q90 102 90 94 L90 26 Q90 18 82 18 L48 18 L28 26Z" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><circle cx="44" cy="34" r="8" fill="#F8FAFC" stroke="${a().m}" stroke-width="1.5"/><line x1="36" y1="62" x2="82" y2="62" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".4"/><line x1="36" y1="72" x2="82" y2="72" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".35"/><circle cx="104" cy="94" r="20" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:104px 94px"/><circle cx="104" cy="88" r="3" fill="${a().c}" opacity=".9"/><line x1="104" y1="94" x2="104" y2="104" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/></g>${sp(20,12,".5s")}${sp(132,28,"1.7s")}${sp(22,116,"3s")}`,
`${gl(38,"5s")}${rg(54,16,"4 7","rCCW","0.12")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><rect x="44" y="38" width="72" height="84" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="44" y="38" width="72" height="22" rx="8" fill="${a().l}"/><line x1="56" y1="76" x2="104" y2="76" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".35"/><line x1="56" y1="86" x2="104" y2="86" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".3"/><line x1="56" y1="96" x2="88" y2="96" stroke="${a().m}" stroke-width="1.2" stroke-linecap="round" opacity=".25"/></g><circle cx="56" cy="52" r="5" fill="${a().c}" style="animation:pulsA 5s ease-in-out .4s infinite;transform-origin:56px 52px"/><circle cx="104" cy="60" r="5" fill="${a().c}" style="animation:pulsA 5s ease-in-out 1s infinite;transform-origin:104px 60px"/><circle cx="80" cy="48" r="5" fill="${a().c}" style="animation:pulsA 5s ease-in-out 1.8s infinite;transform-origin:80px 48px"/>${sp(24,116,".5s")}${sp(136,110,"2s")}`,
],

"Download":()=>[
`${gl(38,"4.5s")}${rg(56,12,"4 7","rCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 78px"><path d="M34 78 Q28 78 28 68 Q28 54 44 54 Q46 42 58 42 Q66 34 78 38 Q88 30 100 42 Q114 42 114 56 Q114 66 104 70Z" fill="${a().l}" stroke="${a().c}" stroke-width="2"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="70" x2="80" y2="94" stroke="${a().c}" stroke-width="3" stroke-linecap="round"/><path d="M68 88 L80 102 L92 88" stroke="${a().c}" stroke-width="3" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g><line x1="62" y1="108" x2="98" y2="108" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/></g>${sp(24,28,".5s")}${sp(128,24,"1.7s")}${sp(22,120,"2.9s")}`,
`${gl(38,"4.5s")}<circle cx="80" cy="80" r="58" fill="none" stroke="#E2E8F0" stroke-width="2.5"/><circle cx="80" cy="80" r="58" fill="none" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="364"><animate attributeName="stroke-dashoffset" values="364;0;364" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1"/></circle><g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 70px"><path d="M36 72 Q30 72 30 62 Q30 48 46 48 Q48 38 60 38 Q68 30 80 34 Q90 26 102 38 Q116 38 116 52 Q116 62 104 66Z" fill="${a().l}" stroke="${a().m}" stroke-width="1.5"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="64" x2="80" y2="84" stroke="${a().c}" stroke-width="2.8" stroke-linecap="round"/><path d="M70 80 L80 92 L90 80" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g><line x1="64" y1="98" x2="96" y2="98" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/></g>${sp(24,24,".5s")}${sp(132,26,"1.7s")}`,
`${gl(36,"4.5s")}${rg(54,14,"3 6","rCCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="28" y="36" width="104" height="100" rx="8" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="60" y="22" width="16" height="22" rx="5" fill="${a().c}" stroke="white" stroke-width="1.5"/><circle cx="68" cy="33" r="3" fill="white" opacity=".8"/><circle cx="68" cy="74" r="13" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:68px 74px"/><path d="M62 74 L67 79 L76 68" stroke="${a().c}" stroke-width="2.2" fill="none" stroke-linecap="round" stroke-linejoin="round"/><rect x="28" y="104" width="104" height="6" rx="3" fill="#E2E8F0"/><rect x="28" y="104" width="0" height="6" rx="3" fill="${a().c}"><animate attributeName="width" values="0;80;104;0" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1;.4 0 .6 1"/></rect></g>${sp(20,20,".5s")}${sp(130,18,"1.7s")}`,
`${rp("0s")}${rp(".9s")}${gl(34,"4.5s")}<circle cx="80" cy="80" r="34" fill="${a().l}" stroke="${a().c}" stroke-width="2" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="64" x2="80" y2="82" stroke="${a().c}" stroke-width="3.5" stroke-linecap="round"/><path d="M70 78 L80 90 L90 78" stroke="${a().c}" stroke-width="3.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/><line x1="68" y1="96" x2="92" y2="96" stroke="${a().c}" stroke-width="3" stroke-linecap="round"/></g>${sp(26,28,".5s")}${sp(130,30,"1.7s")}`,
`${gl(38,"4.5s")}${rg(54,16,"3 6","rCW","0.12")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><rect x="48" y="18" width="64" height="110" rx="12" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><rect x="52" y="26" width="56" height="90" rx="8" fill="#F8FAFC"/><circle cx="80" cy="120" r="4" fill="#E2E8F0"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="42" x2="80" y2="62" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/><path d="M72 58 L80 68 L88 58" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/><line x1="66" y1="76" x2="94" y2="76" stroke="${a().m}" stroke-width="2" stroke-linecap="round" opacity=".6"/></g></g>${sp(26,12,".5s")}${sp(130,12,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><path d="M18 58 Q18 30 80 30 Q142 30 142 58" stroke="${a().c}" stroke-width="2.8" fill="none" stroke-linecap="round" style="stroke-dasharray:130;stroke-dashoffset:130;animation:dS 4.5s ease-out .2s infinite alternate"/><path d="M30 72 Q30 50 80 50 Q130 50 130 72" stroke="${a().m}" stroke-width="2.5" fill="none" stroke-linecap="round" style="stroke-dasharray:100;stroke-dashoffset:100;animation:dS 4.5s ease-out .5s infinite alternate"/><path d="M44 86 Q44 68 80 68 Q116 68 116 86" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" style="stroke-dasharray:74;stroke-dashoffset:74;animation:dS 4.5s ease-out .8s infinite alternate"/><circle cx="80" cy="110" r="8" fill="${a().c}" style="animation:pulsA 4.5s ease-in-out infinite;transform-origin:80px 110px"/></g>${sp(24,18,".5s")}${sp(132,20,"1.7s")}`,
`${gl(36,"5s")}<g style="animation:fY 5s ease-in-out infinite;transform-origin:80px 80px"><path d="M80 32 L116 50 L116 84 L80 102 L44 84 L44 50Z" fill="${a().l}" stroke="${a().c}" stroke-width="1.5"/><path d="M80 32 L116 50 L80 68 L44 50Z" fill="${a().m}" opacity=".6" stroke="${a().c}" stroke-width="1"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="52" x2="80" y2="62" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/><path d="M74 58 L80 65 L86 58" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g></g>${sp(22,20,".5s")}${sp(134,24,"1.7s")}${sp(24,116,"3s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 80px"><path d="M30 18 L30 130 Q30 136 36 136 L124 136 Q130 136 130 130 L130 48 L100 18Z" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><path d="M100 18 L100 48 L130 48" fill="${a().l}" stroke="${a().m}" stroke-width="1.2"/><line x1="44" y1="68" x2="116" y2="68" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".35"/><line x1="44" y1="80" x2="116" y2="80" stroke="${a().m}" stroke-width="1.5" stroke-linecap="round" opacity=".3"/><g style="animation:dlA 2s ease-in-out infinite"><path d="M80 102 L83 110 L92 110 L85 116 L88 124 L80 118 L72 124 L75 116 L68 110 L77 110Z" fill="${a().c}" opacity=".8" stroke="${a().m}" stroke-width=".8"/></g></g>${sp(22,12,".5s")}${sp(130,16,"1.7s")}`,
`${gl(36,"4.5s")}<g style="animation:fY 4.5s ease-in-out infinite;transform-origin:80px 84px"><rect x="16" y="60" width="128" height="82" rx="10" fill="white" stroke="#E2E8F0" stroke-width="1.5"/><path d="M16 60 L80 96 L144 60" stroke="${a().m}" stroke-width="1.8" fill="none" stroke-linejoin="round"/><g style="animation:dlA 2s ease-in-out infinite"><line x1="80" y1="26" x2="80" y2="54" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round"/><path d="M70 50 L80 60 L90 50" stroke="${a().c}" stroke-width="2.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g></g>${sp(20,18,".5s")}${sp(136,20,"1.7s")}`,
`${rp("0s")}${rp(".9s")}${gl(36,"4.5s")}<circle cx="80" cy="80" r="56" fill="none" stroke="#E2E8F0" stroke-width="2.5"/><circle cx="80" cy="80" r="56" fill="none" stroke="${a().c}" stroke-width="2.5" stroke-linecap="round" transform="rotate(-90 80 80)" stroke-dasharray="352"><animate attributeName="stroke-dashoffset" values="352;0;0;352" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1;.4 0 .6 1"/></circle><circle cx="80" cy="80" r="34" fill="${a().l}" stroke="${a().c}" stroke-width="1.5" style="animation:br 4.5s ease-in-out infinite;transform-origin:80px 80px"/><path d="M62 80 L74 93 L100 64" stroke="${a().c}" stroke-width="4" fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="70" stroke-dashoffset="70"><animate attributeName="stroke-dashoffset" values="70;0;0;70" dur="4.5s" repeatCount="indefinite" calcMode="spline" keySplines=".4 0 .6 1;.4 0 .6 1;.4 0 .6 1"/></path>${sp(26,20,".5s")}${sp(130,22,"1.7s")}${sp(24,128,"3s")}`,
],
};

/* ── Promotion presets ────────────────────────────────────────────────────── */
const PROMOS=[
  { id:"warranty",    lb:"Warranty",      th:0, cta:"Claim My Warranty",
    pills:[{ic:"shield",lb:"Extended Protection"},{ic:"check",lb:"100% Free"},{ic:"bolt",lb:"Quick Setup"}],
    copies:[
      {t:"Secure Your *Purchase!*",  s:"Register your product today and enjoy *free extended warranty* coverage. Peace of mind in just a few clicks."},
      {t:"Protection *Activated.*",  s:"Lock in your coverage before it expires. Your *warranty registration* takes less than a minute."},
      {t:"We've Got You *Covered.*", s:"Relax — your product is in safe hands. Claim your *complimentary warranty* and never worry again."},
    ],
  },
  { id:"extwarranty", lb:"Ext. Warranty", th:1, cta:"Claim Extended Warranty",
    pills:[{ic:"shield",lb:"2× Coverage"},{ic:"check",lb:"Parts & Labour"},{ic:"bolt",lb:"Priority Support"}],
    copies:[
      {t:"Double Your *Coverage!*",      s:"Extend your protection beyond the standard plan. Get access to *premium extended warranty* benefits."},
      {t:"Go Beyond *Standard.*",        s:"Don't stop at the basics. Upgrade now to *extended protection* with priority support included."},
      {t:"Twice the *Peace of Mind.*",   s:"Enjoy years of worry-free ownership with *extended warranty coverage* on parts and labour."},
    ],
  },
  { id:"cashback",    lb:"Cashback",      th:2, cta:"Claim My Cashback",
    pills:[{ic:"rupee",lb:"Instant Cashback"},{ic:"check",lb:"Zero Minimum"},{ic:"bolt",lb:"Auto-credited"}],
    copies:[
      {t:"Earn Cash *Back!*",         s:"Every review earns real money back. Stack rewards and enjoy your *instant cashback credit* automatically."},
      {t:"Get Paid To *Review.*",     s:"Share your honest feedback and we'll send *instant cashback* straight to your account."},
      {t:"Your Reward Is *Waiting.*", s:"A little thank-you for your trust. Claim your *cashback reward* — no minimums, no catch."},
    ],
  },
  { id:"coupon",      lb:"Coupon",        th:3, cta:"Claim My Coupon",
    pills:[{ic:"tag",lb:"Instant Unlock"},{ic:"check",lb:"Multiple Uses"},{ic:"bolt",lb:"No Expiry"}],
    copies:[
      {t:"Your Coupon *Awaits!*",       s:"Unlock exclusive savings instantly. Access your *exclusive discount coupon* with a single click."},
      {t:"Unlock Instant *Savings.*",   s:"Tap to reveal a *special discount* reserved just for you. Use it before it's gone."},
      {t:"A Little Gift *For You.*",    s:"Thanks for being a valued customer. Here's an *exclusive coupon* to enjoy on your next order."},
    ],
  },
  { id:"giftcard",    lb:"Gift Card",     th:4, cta:"Claim My Gift Card",
    pills:[{ic:"gift",lb:"Instant Delivery"},{ic:"check",lb:"No Fees"},{ic:"bolt",lb:"Use Anywhere"}],
    copies:[
      {t:"Your Gift Card *Is Ready!*", s:"A premium gift card loaded and waiting for you. Unwrap your *free gift card reward* right now."},
      {t:"Claim Your *Gift Card.*",    s:"It's loaded, it's yours, and it's *ready to spend*. Grab your gift card in seconds."},
      {t:"Something Special *Inside.*",s:"We saved you a treat. Unwrap your *gift card reward* and spend it however you like."},
    ],
  },
  { id:"productinfo", lb:"Product Info",  th:5, cta:"Explore Product Info",
    pills:[{ic:"info",lb:"Full Details"},{ic:"check",lb:"Expert Tips"},{ic:"bolt",lb:"Instant Access"}],
    copies:[
      {t:"Discover Your *Product!*",  s:"Everything you need to know, right here. Explore *complete product details* and expert usage tips."},
      {t:"Know Your *Product.*",      s:"Get the most from your purchase with *setup guides*, tips, and answers in one place."},
      {t:"Here's How It *Works.*",    s:"We've put together *everything you need* — guides, care tips, and expert advice, just for you."},
    ],
  },
  { id:"download",    lb:"Download",      th:6, cta:"Get My Download",
    pills:[{ic:"cloud",lb:"Instant Access"},{ic:"check",lb:"High Quality"},{ic:"bolt",lb:"Lifetime Access"}],
    copies:[
      {t:"Download Your *Reward!*",   s:"Your digital reward is packaged and ready. Click below to grab your *instant digital download* now."},
      {t:"Grab Your *Files.*",        s:"Your content is ready to go. Start your *instant download* and enjoy lifetime access."},
      {t:"It's All *Yours.*",         s:"Thanks for your purchase! Download your *digital bonus* — high quality, yours to keep forever."},
    ],
  },
];

/* ── Pill icon SVG strings ────────────────────────────────────────────────── */
function pIcon(k, c) {
  const map = {
    shield: `<path d="M4.5 1.5 L1 3 L1 6 Q1 9 4.5 10.5 Q8 9 8 6 L8 3Z" fill="${c}" opacity=".3" stroke="${c}" stroke-width=".8"/><path d="M2.5 5.5 L3.8 6.8 L6.8 3.5" stroke="${c}" stroke-width="1.2" fill="none" stroke-linecap="round" stroke-linejoin="round"/>`,
    check:  `<path d="M1.5 5 L3.8 7.3 L8 2.5" stroke="${c}" stroke-width="1.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/>`,
    bolt:   `<path d="M5.5 1L2 5.5H5L3.5 9.5L8.5 4H5.5Z" fill="${c}"/>`,
    rupee:  `<text x="4.5" y="8" text-anchor="middle" font-size="8" font-weight="700" fill="${c}" font-family="system-ui">₹</text>`,
    tag:    `<path d="M1 4.5L1 7.5Q1 8.5 2 8.5L5.2 8.5Q5.8 8.5 6.4 7.8L8.5 5.5Q9 5 8.5 4.5L6.4 2.2Q5.8 1.5 5.2 1.5L2 1.5Q1 1.5 1 2.5Z" stroke="${c}" stroke-width="1" fill="none"/><circle cx="3.2" cy="4.5" r=".9" fill="${c}"/>`,
    gift:   `<rect x="1" y="5" width="8.5" height="5.5" rx="1" stroke="${c}" stroke-width="1" fill="none"/><path d="M5.25 5Q3.8 3.5 3 4Q2 4.5 3 5.2Q4 5.8 5.25 5Z" fill="${c}" opacity=".8"/><path d="M5.25 5Q6.7 3.5 7.5 4Q8.5 4.5 7.5 5.2Q6.5 5.8 5.25 5Z" fill="${c}" opacity=".8"/>`,
    info:   `<circle cx="5" cy="5" r="4" stroke="${c}" stroke-width="1" fill="none"/><circle cx="5" cy="3" r=".7" fill="${c}"/><line x1="5" y1="4.5" x2="5" y2="7.5" stroke="${c}" stroke-width="1.2" stroke-linecap="round"/>`,
    cloud:  `<path d="M1.8 6.5Q1 6.5 1 5.5Q1 3.8 2.6 3.8Q2.8 2.5 4.2 2.5Q5.1 1.8 6.3 2.2Q7.2 1.8 8.2 2.8Q9.2 2.8 9.2 4Q9.2 5.2 8.3 5.5Z" stroke="${c}" stroke-width=".9" fill="none"/>`,
  };
  return map[k] || `<circle cx="5" cy="5" r="3.5" fill="${c}" opacity=".6"/>`;
}

/* ── PromoCard React component ────────────────────────────────────────────── */
const PromoCardBase = ({ promoIdx=0, themeIdx=0, animIdx=0, brand="Your Brand", logo=null, title="", subtitle="", features=["","",""], cta="" }) => {
  _thIdx = themeIdx;
  const t = TH[themeIdx] || TH[0];
  const p = PROMOS[promoIdx] || PROMOS[0];
  const icons = ICONS[p.lb] ? ICONS[p.lb]() : [];
  const svgInner = icons[Math.min(animIdx, icons.length - 1)] || '';

  // Title: *word* → em on second line
  const titleEl = React.useMemo(() => {
    const m = title.match(/\*(.+?)\*/);
    if (!m) return React.createElement('span', null, title);
    const before = title.slice(0, m.index).trim();
    return React.createElement(React.Fragment, null,
      before ? React.createElement(React.Fragment, null, before, React.createElement('br')) : null,
      React.createElement('em', { style: { fontStyle:'normal', color: t.c } }, m[1])
    );
  }, [title, t.c]);

  // Subtitle: *word* → strong
  const subEl = React.useMemo(() => {
    const m = subtitle.match(/\*(.+?)\*/);
    if (!m) return React.createElement('span', null, subtitle);
    return React.createElement(React.Fragment, null,
      subtitle.slice(0, m.index),
      React.createElement('strong', { style: { color: t.c, fontWeight: 600 } }, m[1]),
      subtitle.slice(m.index + m[0].length)
    );
  }, [subtitle, t.c]);

  const displayPills = features.map((lb, j) => ({
    lb: lb || (p.pills[j] ? p.pills[j].lb : ''),
    ic: p.pills[j] ? p.pills[j].ic : 'check',
  })).filter(x => x.lb);

  return (
    React.createElement('div', { className: 'pc-frame' },
      React.createElement('div', { className: 'pc-card' },
        React.createElement('div', { className: 'pc-blob-tl', style: { background: t.l } }),
        React.createElement('div', { className: 'pc-blob-br', style: { background: t.l } }),
        React.createElement('div', { className: 'pc-inner' },
          /* Logo — hidden when brand === '__none__' (seller chose "Don't show a brand") */
          brand !== '__none__' && React.createElement('div', { className: 'pc-logo-row' },
            React.createElement('div', { className: 'pc-logo' },
              logo
                ? React.createElement('img', { className: 'pc-logo-img', src: logo, alt: 'brand' })
                : React.createElement('span', { className: 'pc-logo-brand' }, brand || 'Your Brand')
            )
          ),
          /* Title */
          React.createElement('h1', { className: 'pc-title' }, titleEl),
          /* SVG stage */
          React.createElement('div', { className: 'pc-stage' },
            React.createElement('svg', { viewBox:'0 0 160 160', xmlns:'http://www.w3.org/2000/svg', dangerouslySetInnerHTML:{ __html: svgInner } })
          ),
          /* Subtitle — below the animation image */
          React.createElement('p', { className: 'pc-sub' }, subEl),
          /* Pills */
          displayPills.length > 0 && React.createElement('div', { className: 'pc-pills' },
            displayPills.map((pill, j) =>
              React.createElement('div', { key: j, className: 'pc-pill' },
                React.createElement('div', { className: 'pc-pill-icon', style: { background: t.l },
                  dangerouslySetInnerHTML: { __html: `<svg viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">${pIcon(pill.ic, t.c)}</svg>` }
                }),
                pill.lb
              )
            )
          ),
          /* Divider */
          React.createElement('div', { className: 'pc-div' }),
          /* Trust line — above the CTA, next to the action it reassures */
          React.createElement('div', { className: 'pc-trust', style:{marginBottom:'calc(var(--u)*12)'} },
            React.createElement('svg', { width:'11', height:'11', viewBox:'0 0 12 12', fill:'none' },
              React.createElement('rect', { x:'1', y:'5', width:'10', height:'7', rx:'1.5', stroke:'#94A3B8', strokeWidth:'1.2' }),
              React.createElement('path', { d:'M4 5V3.5C4 2.12 4.9 1 6 1C7.1 1 8 2.12 8 3.5V5', stroke:'#94A3B8', strokeWidth:'1.2', strokeLinecap:'round' })
            ),
            'Your information is safe and secure.'
          ),
          /* CTA */
          React.createElement('div', { className: 'pc-cta-wrap' },
            React.createElement('button', { className: 'pc-cta', style: { background: t.c } },
              React.createElement('span', null, cta || p.cta),
              React.createElement('svg', { width:'18', height:'18', viewBox:'0 0 18 18', fill:'none' },
                React.createElement('path', { d:'M3 9H15M15 9L10 4M15 9L10 14', stroke:'white', strokeWidth:'2.2', strokeLinecap:'round', strokeLinejoin:'round' })
              )
            ),
            React.createElement('div', { className: 'pc-powered' },
              'Powered by ', React.createElement('strong', null, 'ReviewBuddie')
            )
          )
        )
      )
    )
  );
};

/* ── AnimPicker React component ───────────────────────────────────────────── */
const AnimPicker = ({ promoIdx=0, themeIdx=0, value=0, onChange }) => {
  _thIdx = themeIdx;
  const p = PROMOS[promoIdx] || PROMOS[0];
  const icons = ICONS[p.lb] ? ICONS[p.lb]() : [];
  return React.createElement('div', { style: { display:'flex', flexWrap:'wrap', gap:6 } },
    icons.map((svg, i) =>
      React.createElement('button', {
        key: i,
        className: 'pc-thumb' + (i === value ? ' on' : ''),
        onClick: () => onChange(i),
        title: 'Animation ' + (i + 1),
      },
        React.createElement('svg', { viewBox:'0 0 160 160', xmlns:'http://www.w3.org/2000/svg', dangerouslySetInnerHTML: { __html: svg } }),
        React.createElement('span', { className: 'pc-ix' }, i + 1)
      )
    )
  );
};

/* PromoCard = base + optional v2 decorations (overridden by promo-card-v2.jsx when loaded) */
var PromoCard = PromoCardBase;
Object.assign(window, { PromoCard, PromoCardBase, AnimPicker, PROMOS_DATA: PROMOS, TH_DATA: TH,
  __promoHelpers: { a, gl, rg, sp, rp, shield, ICONS } });
