/* Claim-page decoration only. Existing controls, sizes and carousel motion stay native. */
body.receive-page-route-v15 .order_container.receive-page-sync-v15 .receive-heading-v15.sgc-matching-heading-v1::before {
  background-image: linear-gradient(90deg, #ff615b, #ffb447, #e6cf47, #62bc86, #58a5d5, #9a78d4, #ed78ae, #ff615b) !important;
  background-size: 300% 100%;
  background-repeat: no-repeat;
  pointer-events: none;
  animation: sgc-claim-rainbow-flow-v17 12s linear infinite;
}

/* Keep the original 4px border and its inner surface; this is also the static fallback. */
body.receive-page-route-v15 .order_container.receive-page-sync-v15 > .choujiang-box .choujiang .phoneImg {
  border-color: transparent !important;
  background-image: linear-gradient(#fff4dd, #fff4dd), linear-gradient(90deg, #ff615b, #ffb447, #e6cf47, #62bc86, #58a5d5, #9a78d4, #ed78ae, #ff615b) !important;
  background-origin: padding-box, border-box !important;
  background-clip: padding-box, border-box !important;
  background-size: 100% 100%, 300% 100% !important;
  background-repeat: no-repeat !important;
}

/* The native relative parent avoids the carousel's overflow clip. Its verified
   14px padding and mounted 119px frame remain authoritative and unchanged. */
@supports selector(:has(*)) and ((mask-composite: exclude) or (-webkit-mask-composite: xor)) {
  body.receive-page-route-v15 .order_container.receive-page-sync-v15 > .choujiang-box .choujiang:has(> .phoneImg.sgc-claim-products-mounted)::before {
    content: '';
    position: absolute;
    top: 14px;
    right: 14px;
    left: 14px;
    height: 119px;
    padding: 4px;
    box-sizing: border-box;
    border-radius: 9px;
    z-index: 1;
    pointer-events: none;
    background-image: linear-gradient(90deg, #ff615b, #ffb447, #e6cf47, #62bc86, #58a5d5, #9a78d4, #ed78ae, #ff615b);
    background-size: 300% 100%;
    background-repeat: no-repeat;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    animation: sgc-claim-rainbow-flow-v17 12s linear infinite;
  }
}

@keyframes sgc-claim-rainbow-flow-v17 {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

@media (prefers-reduced-motion: reduce) {
  body.receive-page-route-v15 .order_container.receive-page-sync-v15 .receive-heading-v15.sgc-matching-heading-v1::before,
  body.receive-page-route-v15 .order_container.receive-page-sync-v15 > .choujiang-box .choujiang:has(> .phoneImg.sgc-claim-products-mounted)::before {
    animation: none !important;
    background-position: 50% 50%;
  }
}

@media (forced-colors: active) {
  body.receive-page-route-v15 .order_container.receive-page-sync-v15 .receive-heading-v15.sgc-matching-heading-v1::before {
    animation: none !important;
    background-image: none !important;
    background-color: Highlight !important;
  }

  body.receive-page-route-v15 .order_container.receive-page-sync-v15 > .choujiang-box .choujiang .phoneImg {
    border-color: Highlight !important;
    background-image: none !important;
    background-color: Canvas !important;
  }

  body.receive-page-route-v15 .order_container.receive-page-sync-v15 > .choujiang-box .choujiang:has(> .phoneImg.sgc-claim-products-mounted)::before {
    content: none;
    animation: none !important;
  }
}
