.wardrobe-portrait{position:relative;display:inline-block;width:min(100%,220px);vertical-align:top;line-height:0}.adventure-zoe .wardrobe-portrait>img{display:block;width:100%;height:auto;margin:0}.wardrobe-portrait [data-wardrobe-overlay]{position:absolute;inset:0;pointer-events:none}.wardrobe-layers{display:block;width:100%;height:100%;overflow:hidden;pointer-events:none}.wardrobe-layers *{animation:none!important;transition:none!important}

/* Small, fixed particle budget, independent of cosmetic SVG layers. */
.portrait-magic{position:absolute;width:1px;height:1px;pointer-events:none}
.portrait-magic i{position:absolute;display:block;animation-play-state:paused!important}
.magic-in-view:not(.magic-hidden) .portrait-magic i{animation-play-state:running!important}
.portrait-magic-core{width:7px;height:7px;left:-3.5px;top:-3.5px;border-radius:50%;background:#fffbe4;box-shadow:0 0 7px 2px #fff,0 0 18px 7px #65efca99;animation:portrait-glow 3s ease-in-out infinite}
.portrait-magic-ring{width:24px;height:24px;left:-12px;top:-12px;border:1px solid #b0ffe6;border-radius:50%;animation:portrait-ring 3.6s ease-out infinite}
.portrait-magic-spark{width:3px;height:3px;background:#fff1b7;box-shadow:0 0 6px #8affdf;animation:portrait-spark 3s ease-out infinite;--spark-x:18px;--spark-y:-24px}
.portrait-magic-spark:nth-child(4){--spark-x:-20px;--spark-y:-14px;animation-delay:-1s}
.portrait-magic-spark:nth-child(5){--spark-x:8px;--spark-y:-32px;animation-delay:-2s}
@keyframes portrait-glow{50%{transform:scale(1.4);opacity:.8}}
@keyframes portrait-ring{0%{transform:scale(.2);opacity:0}20%{opacity:.8}100%{transform:scale(1.7);opacity:0}}
@keyframes portrait-spark{0%{transform:translate(0,0);opacity:0}20%{opacity:1}100%{transform:translate(var(--spark-x),var(--spark-y));opacity:0}}
@media(prefers-reduced-motion:reduce){.portrait-magic i{animation:none!important}.portrait-magic-ring,.portrait-magic-spark{display:none!important}}
