.profile-avatar-control{isolation:isolate}
.profile-avatar-wrap.has-custom-profile-frame{border-width:0!important;border-color:transparent!important;box-shadow:none!important;background:radial-gradient(circle at 32% 22%,#7151aa,#21182e 62%,#111015) padding-box!important;transform:scale(1.19)}
.profile-avatar-wrap.has-custom-profile-frame #profile-avatar,.profile-avatar-wrap.has-custom-profile-frame #profile-avatar-video{padding:0;object-fit:cover;object-position:center;border-radius:50%}
.profile-avatar-frame{position:absolute;z-index:3;inset:-22%;display:block;pointer-events:none;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--frame-accent,#ae6aff) 42%,transparent)) drop-shadow(0 0 14px color-mix(in srgb,var(--frame-accent,#ae6aff) 23%,transparent));animation:none}
.profile-avatar-wrap.frame-mushoku-tensei .profile-avatar-frame,.current-frame-avatar.frame-mushoku-tensei .profile-frame-overlay{filter:none}
#profile-avatar-frame[data-frame="mushoku-tensei"],#current-frame-overlay[data-frame="mushoku-tensei"]{filter:none!important}
.profile-avatar-frame[hidden]{display:none}
.profile-avatar-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none}
.profile-avatar-frame img:nth-child(2){opacity:0;mix-blend-mode:screen;filter:none;animation:none}
.profile-avatar-frame:after{display:none;animation:none}
.profile-frame-overlay{position:absolute;inset:-22%;width:144%;height:144%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--frame-accent,#ae6aff) 40%,transparent));animation:none}
.profile-frame-overlay[hidden]{display:none}
.current-frame-avatar{overflow:visible!important}
.current-frame-avatar .profile-frame-overlay{inset:-22%;width:144%;height:144%;z-index:2}
.profile-avatar-frame .profile-avatar-frame-detail,.current-frame-avatar .profile-avatar-frame-detail{position:absolute;inset:0;width:100%;height:100%;z-index:3;object-fit:contain;pointer-events:none;opacity:.58;mix-blend-mode:normal;filter:none;will-change:transform,filter;transform-origin:var(--frame-origin,50% 50%)}
.profile-avatar-frame .profile-avatar-frame-detail[data-detail="mushoku-staff-assembly"],.current-frame-avatar .profile-avatar-frame-detail[data-detail="mushoku-staff-assembly"]{opacity:1}
.profile-avatar-frame .profile-avatar-frame-detail[data-detail="mushoku-charm"],.current-frame-avatar .profile-avatar-frame-detail[data-detail="mushoku-charm"]{opacity:1}
.current-frame-avatar .profile-avatar-frame-detail{inset:-22%;width:144%;height:144%}
.current-frame-avatar #current-frame-img,.current-frame-avatar>#current-frame-monogram{border-radius:50%}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="rune"]{animation:frame-rune 3.9s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="rune"]{animation:frame-rune 3.9s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="crystal"]{animation:frame-crystal 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="crystal"]{animation:frame-crystal 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="pendant"]{animation:frame-pendant 4.4s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="pendant"]{animation:frame-pendant 4.4s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="skyline"]{animation:frame-skyline 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="skyline"]{animation:frame-skyline 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="foliage"]{animation:frame-foliage 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="foliage"]{animation:frame-foliage 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="robe"]{animation:frame-robe 3.7s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="robe"]{animation:frame-robe 3.7s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="staff-assembly"],.current-frame-avatar .profile-avatar-frame-detail[data-motion="staff-assembly"]{animation:frame-staff-assembly 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="mushoku-cloth"],.current-frame-avatar .profile-avatar-frame-detail[data-motion="mushoku-cloth"]{animation:frame-mushoku-cloth 4.6s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="mushoku-pendant"],.current-frame-avatar .profile-avatar-frame-detail[data-motion="mushoku-pendant"]{animation:frame-mushoku-pendant 4.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="book-pages"]{animation:frame-book-pages 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="book-pages"]{animation:frame-book-pages 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="map-glint"]{animation:frame-map-glint 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="map-glint"]{animation:frame-map-glint 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="relic"]{animation:frame-relic 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="relic"]{animation:frame-relic 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="windmill"]{animation:frame-windmill 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="windmill"]{animation:frame-windmill 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="saw-track"]{animation:frame-saw-track 1.15s linear infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="saw-track"]{animation:frame-saw-track 1.15s linear infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="saw-machine"]{animation:frame-saw-machine 2.4s cubic-bezier(.45,0,.55,1) infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="saw-machine"]{animation:frame-saw-machine 2.4s cubic-bezier(.45,0,.55,1) infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="engine"]{animation:frame-engine 2.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="engine"]{animation:frame-engine 2.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="red-sun"]{animation:frame-red-sun 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="red-sun"]{animation:frame-red-sun 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="chain-link"]{animation:frame-chain-link 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="chain-link"]{animation:frame-chain-link 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="paper-corner"]{animation:frame-paper-corner 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="paper-corner"]{animation:frame-paper-corner 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="city-lights"]{animation:frame-city-lights 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="city-lights"]{animation:frame-city-lights 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="metal-recoil"]{animation:frame-metal-recoil 2.4s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="metal-recoil"]{animation:frame-metal-recoil 2.4s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="embers"]{animation:frame-embers 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="embers"]{animation:frame-embers 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="bomb-metal"]{animation:frame-bomb-metal 3.9s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="bomb-metal"]{animation:frame-bomb-metal 3.9s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="film-run"]{animation:frame-film-run 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="film-run"]{animation:frame-film-run 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="petal-drift"]{animation:frame-petal-drift 3.9s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="petal-drift"]{animation:frame-petal-drift 3.9s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="flower-bloom"]{animation:frame-flower-bloom 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="flower-bloom"]{animation:frame-flower-bloom 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="metal-glint"]{animation:frame-metal-glint 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="metal-glint"]{animation:frame-metal-glint 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="roof-mist"]{animation:frame-roof-mist 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="roof-mist"]{animation:frame-roof-mist 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="lantern"]{animation:frame-lantern 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="lantern"]{animation:frame-lantern 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="scroll-edge"]{animation:frame-scroll-edge 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="scroll-edge"]{animation:frame-scroll-edge 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="tassel"]{animation:frame-tassel 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="tassel"]{animation:frame-tassel 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="butterfly"]{animation:frame-butterfly 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="butterfly"]{animation:frame-butterfly 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="silk-bow"]{animation:frame-silk-bow 3.7s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="silk-bow"]{animation:frame-silk-bow 3.7s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="glass-glint"]{animation:frame-glass-glint 3.9s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="glass-glint"]{animation:frame-glass-glint 3.9s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="silk-ribbon"]{animation:frame-silk-ribbon 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="silk-ribbon"]{animation:frame-silk-ribbon 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="star-pulse"]{animation:frame-star-pulse 3.8s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="star-pulse"]{animation:frame-star-pulse 3.8s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="cloud-drift"]{animation:frame-cloud-drift 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="cloud-drift"]{animation:frame-cloud-drift 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="moon-glow"]{animation:frame-moon-glow 4.2s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="moon-glow"]{animation:frame-moon-glow 4.2s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="mascot-breath"]{animation:frame-mascot-breath 4.0s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="mascot-breath"]{animation:frame-mascot-breath 4.0s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="fabric-wave"]{animation:frame-fabric-wave 4.1s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="fabric-wave"]{animation:frame-fabric-wave 4.1s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="cyber-glitch"]{animation:frame-cyber-glitch 5.1s steps(1,end) infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="cyber-glitch"]{animation:frame-cyber-glitch 5.1s steps(1,end) infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="electric-cable"]{animation:frame-electric-cable 3.4s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="electric-cable"]{animation:frame-electric-cable 3.4s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="neon-sign"]{animation:frame-neon-sign 3.8s steps(1,end) infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="neon-sign"]{animation:frame-neon-sign 3.8s steps(1,end) infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="blade-glint"]{animation:frame-blade-glint 3.7s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="blade-glint"]{animation:frame-blade-glint 3.7s ease-in-out infinite var(--frame-delay,0s)}
.profile-avatar-frame .profile-avatar-frame-detail[data-motion="neon-pulse"]{animation:frame-neon-pulse 3.7s ease-in-out infinite var(--frame-delay,0s)}
.current-frame-avatar .profile-avatar-frame-detail[data-motion="neon-pulse"]{animation:frame-neon-pulse 3.7s ease-in-out infinite var(--frame-delay,0s)}

.shop-frame-filters{display:flex;gap:7px;margin:0 0 15px;padding:0 0 13px;border-bottom:1px solid #ffffff10}
.shop-frame-filters button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 13px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff05;color:#a7a0ad;font:700 11px Inter,system-ui,sans-serif;cursor:pointer}
.shop-frame-filters button span{color:#91889d;font-size:9px}
.shop-frame-filters button.is-active{border-color:#994eef66;background:#7a35b51f;color:#ead8ff}
.shop-frame-filters button:focus-visible,.shop-frame-equip:focus-visible{outline:2px solid #c28aff;outline-offset:3px}
.shop-frame-status{min-height:15px;margin:0 0 10px;color:#a994c0;font-size:10px}
.shop-frame-status.is-error{color:#ff91a0}
.shop-frame-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shop-frame-card{--frame-accent:#a66aff;position:relative;min-width:0;overflow:hidden;border:1px solid #ffffff14;border-radius:17px;background:linear-gradient(155deg,color-mix(in srgb,var(--frame-accent) 8%,#16141a),#0e0d10 72%);box-shadow:inset 0 0 34px color-mix(in srgb,var(--frame-accent) 4%,transparent);transition:border-color .24s,box-shadow .24s}
.shop-frame-card:hover{border-color:color-mix(in srgb,var(--frame-accent) 52%,#ffffff18);box-shadow:inset 0 0 38px color-mix(in srgb,var(--frame-accent) 7%,transparent),0 18px 34px -25px var(--frame-accent)}
.shop-frame-card.is-equipped{border-color:color-mix(in srgb,var(--frame-accent) 48%,#ffffff1c)}
.shop-frame-artwork{position:relative;display:grid;aspect-ratio:1.18;place-items:center;overflow:hidden;border-bottom:1px solid #ffffff11;background:radial-gradient(ellipse at 50% 53%,color-mix(in srgb,var(--frame-accent) 14%,transparent),transparent 65%),#0d0c10;isolation:isolate}
.shop-frame-avatar{position:absolute;z-index:0;width:70%;height:auto;aspect-ratio:1;max-width:100%;border:0;border-radius:50%;background:none;object-fit:cover;object-position:center;box-shadow:none}
.shop-frame-art-image{position:absolute;z-index:1;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:none}
.shop-frame-art-glow{position:absolute;z-index:2;width:100%;height:100%;object-fit:contain;opacity:0;mix-blend-mode:screen;filter:none;pointer-events:none;animation:none}
.shop-frame-art-detail{position:absolute;z-index:3;width:100%;height:100%;object-fit:contain;opacity:.58;mix-blend-mode:normal;filter:none;pointer-events:none;will-change:transform,filter;transform-origin:var(--frame-origin,50% 50%)}
.shop-frame-art-detail[data-detail="mushoku-charm"]{opacity:1}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="rune"]{animation:frame-rune 3.9s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="crystal"]{animation:frame-crystal 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="pendant"]{animation:frame-pendant 4.4s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="skyline"]{animation:frame-skyline 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="foliage"]{animation:frame-foliage 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="robe"]{animation:frame-robe 3.7s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="staff-assembly"]{animation:frame-staff-assembly 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="mushoku-pendant"]{animation:frame-mushoku-pendant 4.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="book-pages"]{animation:frame-book-pages 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="map-glint"]{animation:frame-map-glint 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="relic"]{animation:frame-relic 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="windmill"]{animation:frame-windmill 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="saw-track"]{animation:frame-saw-track 1.15s linear infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="saw-machine"]{animation:frame-saw-machine 2.4s cubic-bezier(.45,0,.55,1) infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="engine"]{animation:frame-engine 2.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="red-sun"]{animation:frame-red-sun 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="chain-link"]{animation:frame-chain-link 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="paper-corner"]{animation:frame-paper-corner 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="city-lights"]{animation:frame-city-lights 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="metal-recoil"]{animation:frame-metal-recoil 2.4s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="embers"]{animation:frame-embers 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="bomb-metal"]{animation:frame-bomb-metal 3.9s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="film-run"]{animation:frame-film-run 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="petal-drift"]{animation:frame-petal-drift 3.9s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="flower-bloom"]{animation:frame-flower-bloom 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="metal-glint"]{animation:frame-metal-glint 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="roof-mist"]{animation:frame-roof-mist 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="lantern"]{animation:frame-lantern 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="scroll-edge"]{animation:frame-scroll-edge 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="tassel"]{animation:frame-tassel 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="butterfly"]{animation:frame-butterfly 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="silk-bow"]{animation:frame-silk-bow 3.7s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="glass-glint"]{animation:frame-glass-glint 3.9s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="silk-ribbon"]{animation:frame-silk-ribbon 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="star-pulse"]{animation:frame-star-pulse 3.8s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="cloud-drift"]{animation:frame-cloud-drift 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="moon-glow"]{animation:frame-moon-glow 4.2s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="mascot-breath"]{animation:frame-mascot-breath 4.0s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="fabric-wave"]{animation:frame-fabric-wave 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="cyber-glitch"]{animation:frame-cyber-glitch 5.1s steps(1,end) infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="electric-cable"]{animation:frame-electric-cable 3.4s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="neon-sign"]{animation:frame-neon-sign 3.8s steps(1,end) infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="blade-glint"]{animation:frame-blade-glint 3.7s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card:hover .shop-frame-art-detail[data-motion="neon-pulse"]{animation:frame-neon-pulse 3.7s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card[data-frame="mushoku-tensei"] .shop-frame-art-detail[data-motion="staff-assembly"]{animation:frame-staff-assembly 4.1s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-card[data-frame="mushoku-tensei"] .shop-frame-art-detail[data-motion="mushoku-cloth"]{animation:frame-mushoku-cloth 4.6s ease-in-out infinite var(--frame-delay,0s)}
.shop-frame-sheen{display:none}
.shop-frame-copy{display:grid;gap:8px;padding:14px 15px 15px}
.shop-frame-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#817a89;font-size:8px;font-weight:850;letter-spacing:.12em}
.shop-frame-meta b{padding:5px 7px;border:1px solid color-mix(in srgb,var(--frame-accent) 38%,transparent);border-radius:6px;background:color-mix(in srgb,var(--frame-accent) 9%,transparent);color:color-mix(in srgb,var(--frame-accent) 72%,white);font-size:7px;letter-spacing:.08em}
.shop-frame-copy h3{min-height:34px;margin:3px 0 0;color:#f2edf6;font:14px/1.3 "Dela Gothic One",Inter,sans-serif;letter-spacing:-.025em}
.shop-frame-copy>p{min-height:14px;margin:0;color:#908998;font-size:9px}
.shop-frame-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;padding-top:10px;border-top:1px solid #ffffff10}
.shop-frame-price{display:grid;gap:3px}.shop-frame-price b{color:#ded5e7;font-size:10px}.shop-frame-price small{color:#77717d;font-size:8px}
.shop-frame-equip{min-height:36px;padding:0 14px;border:1px solid color-mix(in srgb,var(--frame-accent) 62%,#ffffff1a);border-radius:9px;background:color-mix(in srgb,var(--frame-accent) 23%,#151219);color:#fff;font:750 10px Inter,system-ui,sans-serif;cursor:pointer;transition:filter .2s ease,transform .2s ease,background .2s ease;box-shadow:0 3px 14px color-mix(in srgb,var(--frame-accent) 13%,transparent)}
.shop-frame-equip:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.2)}
.shop-frame-equip:disabled{cursor:default;opacity:.72}
.shop-frame-card.is-equipped .shop-frame-equip{border-color:#5bd5a755;background:#163027;color:#9aebc5}

@keyframes frame-rune{0%,100%{transform:rotate(0);filter:brightness(1) drop-shadow(0 0 2px #e4bdff)}45%{transform:rotate(1.2deg);filter:brightness(1.9) drop-shadow(0 0 13px #bc7dff)}78%{transform:rotate(-.55deg);filter:brightness(1.16)}}
@keyframes frame-crystal{0%,100%{transform:translateY(0) rotate(0);filter:brightness(1) drop-shadow(0 0 2px #61c9ff)}52%{transform:translateY(-.5%) rotate(1.2deg);filter:brightness(2.15) drop-shadow(0 0 20px #78dfff)}}
@keyframes frame-pendant{0%,100%{transform:rotate(0)}32%{transform:rotate(4deg)}68%{transform:rotate(-2.8deg)}}
@keyframes frame-skyline{0%,100%{transform:translateY(0);filter:brightness(1)}38%{transform:translateY(-.3%);filter:brightness(1.35)}45%{filter:brightness(1.72) drop-shadow(0 0 8px #ffe6a2)}52%{transform:translateY(0);filter:brightness(1.02)}}
@keyframes frame-foliage{0%,100%{transform:rotate(0)}38%{transform:rotate(3deg)}72%{transform:rotate(-1.9deg)}}
@keyframes frame-robe{0%,100%{transform:skewX(0) translateY(0)}38%{transform:skewX(.8deg) translateY(-.45%)}72%{transform:skewX(-.5deg) translateY(.25%)}}
@keyframes frame-staff-assembly{0%,100%{transform:rotate(0deg);filter:brightness(1)}25%{transform:rotate(.62deg)}50%{transform:rotate(0deg);filter:brightness(1.02)}75%{transform:rotate(-.62deg)}}
@keyframes frame-mushoku-cloth{0%,100%{transform:translate(0,0) rotate(0deg)}25%{transform:translate(.025%,-.015%) rotate(.72deg)}50%{transform:translate(.02%,-.025%) rotate(.08deg)}75%{transform:translate(-.02%,.012%) rotate(-.72deg)}}
@keyframes frame-mushoku-pendant{0%,100%{transform:rotate(0deg)}28%{transform:rotate(3.8deg)}58%{transform:rotate(-2.6deg)}82%{transform:rotate(.8deg)}}
@keyframes frame-book-pages{0%,100%{transform:translateY(0) rotate(0);filter:brightness(1)}48%{transform:translateY(-.55%) rotate(.35deg);filter:brightness(1.28)}72%{transform:translateY(.2%) rotate(-.18deg)}}
@keyframes frame-map-glint{0%,100%{transform:rotate(0);filter:brightness(1)}42%{transform:rotate(.5deg);filter:brightness(1.6) drop-shadow(0 0 8px #ffe1a0)}58%{transform:rotate(-.2deg);filter:brightness(1.08)}}
@keyframes frame-relic{0%,100%{transform:rotate(0)}42%{transform:rotate(1.6deg)}78%{transform:rotate(-1deg)}}
@keyframes frame-windmill{0%,100%{transform:rotate(0)}50%{transform:rotate(2.2deg);filter:brightness(1.35)}}
@keyframes frame-saw-track{0%,100%{filter:brightness(1);transform:translate(0,0)}18%{filter:brightness(1.8) drop-shadow(0 0 9px #ff4035);transform:translate(.16%,-.05%)}30%{filter:brightness(1.1);transform:translate(-.1%,.04%)}58%{filter:brightness(1.62) drop-shadow(0 0 7px #ff4035)}72%{filter:brightness(1)}}
@keyframes frame-saw-machine{0%,100%{transform:translate(0,0) rotate(0);filter:brightness(1)}12%{transform:translate(0,-.75%) rotate(1.05deg);filter:brightness(1.22) drop-shadow(0 0 4px #ff5142)}22%{transform:translate(0,.3%) rotate(-.45deg);filter:brightness(1.08)}34%{transform:translate(0,0) rotate(0);filter:brightness(1)}58%{transform:translate(0,-.55%) rotate(.75deg);filter:brightness(1.15)}72%{transform:translate(0,.22%) rotate(-.32deg);filter:brightness(1.04)}86%{transform:translate(0,0) rotate(0);filter:brightness(1)}}
@keyframes frame-engine{0%,100%{transform:translate(0,0);filter:brightness(1)}22%{transform:translate(.15%,0);filter:brightness(1.52) drop-shadow(0 0 7px #fa392f)}50%{transform:translate(-.12%,.05%);filter:brightness(1.1)}}
@keyframes frame-red-sun{0%,100%{filter:brightness(1) drop-shadow(0 0 1px #ff382f)}50%{filter:brightness(1.48) drop-shadow(0 0 11px #ff392f)}}
@keyframes frame-chain-link{0%,100%{transform:rotate(0);filter:brightness(1)}26%{transform:rotate(4deg);filter:brightness(1.85) drop-shadow(0 0 9px #ff5750)}56%{transform:rotate(-2.7deg);filter:brightness(1.12)}}
@keyframes frame-paper-corner{0%,100%{transform:rotate(0)}38%{transform:rotate(1.5deg) translateY(-.4%)}72%{transform:rotate(-.9deg) translateY(.2%)}}
@keyframes frame-city-lights{0%,100%{transform:translateY(0);filter:brightness(1)}41%{filter:brightness(1.35)}46%{transform:translateY(-.3%);filter:brightness(1.8) drop-shadow(0 0 8px #ff5142)}51%{transform:translateY(0);filter:brightness(1.02)}}
@keyframes frame-metal-recoil{0%,100%{transform:translate(0,0) rotate(0);filter:brightness(1)}36%{transform:translate(.6%,-.35%) rotate(1deg);filter:brightness(1.35)}40%{transform:translate(-.45%,.2%) rotate(-.6deg)}48%{transform:translate(0,0) rotate(0)}}
@keyframes frame-embers{0%,100%{filter:brightness(.9);transform:translateY(0)}38%{filter:brightness(1.95) drop-shadow(0 0 8px #ff452f);transform:translateY(-1.1%)}76%{filter:brightness(1.08);transform:translateY(.45%)}}
@keyframes frame-bomb-metal{0%,100%{transform:rotate(0);filter:brightness(1)}48%{transform:rotate(1.8deg);filter:brightness(1.85) drop-shadow(0 0 13px #ca70ff)}}
@keyframes frame-film-run{0%,100%{filter:brightness(1);transform:translateX(0) rotate(0)}36%{filter:brightness(1.75) drop-shadow(0 0 9px #ff56dc);transform:translateX(1.1%) rotate(.75deg)}52%{filter:brightness(1.08);transform:translateX(-.3%) rotate(-.2deg)}}
@keyframes frame-petal-drift{0%,100%{transform:translate(0,0) rotate(0);filter:brightness(1)}34%{transform:translate(2.2%,-1.8%) rotate(9deg);filter:brightness(1.45) drop-shadow(0 0 5px #ff62cf)}70%{transform:translate(-.8%,.4%) rotate(-4deg);filter:brightness(1.08)}}
@keyframes frame-flower-bloom{0%,100%{transform:rotate(0);filter:brightness(1)}40%{transform:rotate(5deg);filter:brightness(1.8) drop-shadow(0 0 10px #f04bc8)}75%{transform:rotate(-2.6deg);filter:brightness(1.08)}}
@keyframes frame-metal-glint{0%,100%{transform:rotate(0);filter:brightness(1)}44%{transform:rotate(.8deg);filter:brightness(1.82) drop-shadow(0 0 12px #ffd8a0)}}
@keyframes frame-roof-mist{0%,100%{transform:translateY(0);filter:brightness(1)}46%{transform:translateY(-.25%);filter:brightness(1.42) drop-shadow(0 0 7px #9ad9c2)}}
@keyframes frame-lantern{0%,100%{transform:rotate(0);filter:brightness(1) drop-shadow(0 0 2px #ffbd68)}32%{transform:rotate(3.6deg);filter:brightness(1.82) drop-shadow(0 0 16px #ffc36d)}70%{transform:rotate(-2.2deg);filter:brightness(1.08)}}
@keyframes frame-scroll-edge{0%,100%{transform:rotate(0)}38%{transform:rotate(1.7deg) translateY(-.35%)}70%{transform:rotate(-1deg)}}
@keyframes frame-tassel{0%,100%{transform:rotate(0)}34%{transform:rotate(5deg) translateY(.65%)}68%{transform:rotate(-3deg)}}
@keyframes frame-butterfly{0%,100%{transform:rotate(0) scaleX(1);filter:brightness(1)}25%{transform:rotate(3deg) scaleX(.78);filter:brightness(1.4)}50%{transform:rotate(0) scaleX(1.12);filter:brightness(1.8) drop-shadow(0 0 8px #73f3ce)}75%{transform:rotate(-2.5deg) scaleX(.84);filter:brightness(1.1)}}
@keyframes frame-silk-bow{0%,100%{transform:skewX(0)}38%{transform:skewX(1deg) translateY(-.35%)}72%{transform:skewX(-.6deg)}}
@keyframes frame-glass-glint{0%,100%{transform:translateY(0);filter:brightness(1)}42%{transform:translateY(-.25%);filter:brightness(1.8) drop-shadow(0 0 10px #8cebd2)}}
@keyframes frame-silk-ribbon{0%,100%{transform:skewX(0) translateY(0)}36%{transform:skewX(.9deg) translateY(-.65%)}72%{transform:skewX(-.5deg) translateY(.3%)}}
@keyframes frame-star-pulse{0%,100%{filter:brightness(1) drop-shadow(0 0 1px #d4aeff)}48%{filter:brightness(2.25) drop-shadow(0 0 18px #c998ff)}}
@keyframes frame-cloud-drift{0%,100%{transform:translate(0,0);filter:brightness(1)}42%{transform:translate(.9%,-.4%);filter:brightness(1.3)}78%{transform:translate(-.5%,.2%);filter:brightness(1.08)}}
@keyframes frame-moon-glow{0%,100%{transform:rotate(0);filter:brightness(1) drop-shadow(0 0 2px #ffe19a)}52%{transform:rotate(1deg);filter:brightness(1.85) drop-shadow(0 0 15px #ffe19a)}}
@keyframes frame-mascot-breath{0%,100%{transform:translateY(0) scale(1);filter:brightness(1)}50%{transform:translateY(-.4%) scale(1.018);filter:brightness(1.28) drop-shadow(0 0 7px #b27cff)}}
@keyframes frame-fabric-wave{0%,100%{transform:skewX(0) translateY(0)}38%{transform:skewX(.75deg) translateY(-.5%)}74%{transform:skewX(-.45deg) translateY(.25%)}}
@keyframes frame-cyber-glitch{0%,100%{transform:translateX(0);filter:brightness(1)}44%{transform:translateX(-.14%);filter:drop-shadow(2px 0 #23eaff) drop-shadow(-2px 0 #ff2eea) brightness(1.28)}52%{transform:translateX(.1%);filter:hue-rotate(10deg) brightness(1.18)}62%{transform:translateX(0);filter:brightness(1.04)}}
@keyframes frame-electric-cable{0%,100%{transform:translate(0,0);filter:brightness(1) drop-shadow(0 0 1px #25e8ff)}48%{transform:translate(.08%,0);filter:brightness(1.72) drop-shadow(0 0 11px #25e8ff)}}
@keyframes frame-neon-sign{0%,82%,100%{transform:translateX(0);filter:brightness(1) drop-shadow(0 0 2px #ff2eea)}84%{filter:brightness(1.7) drop-shadow(0 0 12px #ff2eea);transform:translateX(.16%)}86%{filter:brightness(.82);transform:translateX(-.1%)}89%{filter:brightness(1.4);transform:translateX(0)}}
@keyframes frame-blade-glint{0%,100%{transform:translateX(0);filter:brightness(1)}46%{transform:translateX(.12%);filter:brightness(1.48) drop-shadow(0 0 7px #d8ff48)}}
@keyframes frame-neon-pulse{0%,100%{filter:brightness(1) drop-shadow(0 0 1px #e8ff35)}50%{filter:brightness(1.85) drop-shadow(0 0 14px #e8ff35)}}
@media(max-width:850px){.shop-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.shop-frame-grid{grid-template-columns:1fr;gap:10px}.shop-frame-card{display:grid;grid-template-columns:42% minmax(0,1fr);min-height:150px}.shop-frame-artwork{height:100%;aspect-ratio:auto;border-right:1px solid #ffffff11;border-bottom:0}.shop-frame-copy{align-content:center;padding:12px}.shop-frame-copy h3{min-height:0;font-size:12px}.shop-frame-copy>p{font-size:8px}.shop-frame-meta{font-size:7px}.shop-frame-footer{margin-top:2px}}
@media(prefers-reduced-motion:reduce){.profile-avatar-frame,.profile-frame-overlay,.profile-avatar-frame:after,.profile-avatar-frame img:nth-child(2),.profile-avatar-frame-detail,.shop-frame-card:hover .shop-frame-art-image,.shop-frame-card:hover .shop-frame-art-glow,.shop-frame-card:hover .shop-frame-art-detail,.shop-frame-card:hover .shop-frame-sheen{animation:none!important;transition:none!important}}

.shop-badge-card{grid-column:auto;display:flex;flex-direction:column;min-height:0}
.shop-badge-card .shop-badge-artwork{position:relative;display:block;width:100%;height:auto;min-height:0;flex:0 0 auto;aspect-ratio:900/243;overflow:hidden;border:0;border-radius:16px 16px 0 0;background:transparent;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.shop-badge-card[data-badge="observer"] .shop-badge-artwork{aspect-ratio:720/239}
.shop-badge-card[data-badge="reincarnated"] .shop-badge-artwork{aspect-ratio:720/227}
.shop-badge-stage{position:absolute;inset:0;width:auto;height:auto;display:block;isolation:isolate;background:transparent}
.shop-badge-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.shop-badge-details{z-index:1;filter:drop-shadow(0 0 11px color-mix(in srgb,var(--badge-glow,#f53bff) 24%,transparent))}
.shop-badge-card[data-badge="observer"] .shop-badge-glitch{z-index:2;opacity:.07;mix-blend-mode:screen;mask-image:repeating-linear-gradient(to bottom,#000 0 3px,transparent 3px 18px);-webkit-mask-image:repeating-linear-gradient(to bottom,#000 0 3px,transparent 3px 18px);pointer-events:none}
.shop-badge-card[data-badge="observer"] .shop-badge-glitch-magenta{filter:grayscale(1) brightness(1.35) sepia(1) saturate(5) hue-rotate(275deg);transform:translateX(-1px);animation:observer-glitch-magenta 1.8s ease-in-out infinite}
.shop-badge-card[data-badge="observer"] .shop-badge-glitch-cyan{filter:grayscale(1) brightness(1.4) sepia(1) saturate(5) hue-rotate(155deg);transform:translateX(1px);animation:observer-glitch-cyan 1.8s ease-in-out -.9s infinite}
@keyframes observer-glitch-magenta{0%,54%,100%{opacity:.07;transform:translateX(-1px)}62%{opacity:.2;transform:translateX(-3px)}70%{opacity:.42;transform:translateX(4px)}78%{opacity:.18;transform:translateX(-2px)}88%{opacity:.07;transform:translateX(-1px)}}
@keyframes observer-glitch-cyan{0%,54%,100%{opacity:.06;transform:translateX(1px)}62%{opacity:.18;transform:translateX(3px)}70%{opacity:.38;transform:translateX(-4px)}78%{opacity:.16;transform:translateX(2px)}88%{opacity:.06;transform:translateX(1px)}}
.shop-badge-stage:before,.profile-anime-badge:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(ellipse 1px 7px at 13% 42%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%),radial-gradient(ellipse 7px 1px at 13% 42%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%),radial-gradient(ellipse 1px 6px at 47% 22%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%),radial-gradient(ellipse 6px 1px at 47% 22%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%),radial-gradient(ellipse 1px 8px at 86% 48%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%),radial-gradient(ellipse 8px 1px at 86% 48%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%);opacity:.55;filter:drop-shadow(0 0 3px var(--badge-glow,#f53bff));animation:oshinoko-glint-pulse 3.2s ease-in-out infinite}
.shop-badge-stage:after,.profile-anime-badge:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(ellipse 1px 6px at 23% 75%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%),radial-gradient(ellipse 6px 1px at 23% 75%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%),radial-gradient(ellipse 1px 7px at 73% 23%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%),radial-gradient(ellipse 7px 1px at 73% 23%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 78%,#fff) 38%,transparent 100%),radial-gradient(ellipse 1px 6px at 82% 74%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%),radial-gradient(ellipse 6px 1px at 82% 74%,#fff 0 18%,color-mix(in srgb,var(--badge-glow,#f53bff) 72%,#fff) 38%,transparent 100%);opacity:.35;filter:drop-shadow(0 0 3px var(--badge-glow,#f53bff));animation:oshinoko-glint-pulse 4.1s ease-in-out -1.6s infinite}
.shop-badge-word,.profile-anime-badge-word{z-index:3}
@keyframes oshinoko-glint-pulse{0%,100%{opacity:.24;filter:brightness(.9) drop-shadow(0 0 2px var(--badge-glow,#e45cff))}42%{opacity:.88;filter:brightness(1.45) drop-shadow(0 0 7px var(--badge-glow,#ff8cff))}58%{opacity:.58;filter:brightness(1.1) drop-shadow(0 0 4px var(--badge-glow,#f05bff))}}
.shop-badge-card[data-badge="netrunner"],.profile-anime-badge[data-badge="netrunner"]{--badge-glow:#caff20}
.shop-badge-card[data-badge="observer"],.profile-anime-badge[data-badge="observer"]{--badge-glow:#ff286f}
.shop-badge-card[data-badge="reincarnated"],.profile-anime-badge[data-badge="reincarnated"]{--badge-glow:#ffd083}
.shop-badge-card .shop-frame-copy{align-items:flex-start;justify-content:center;padding:13px 15px 15px;text-align:left}
.shop-badge-card .shop-frame-meta{width:100%;justify-content:space-between}
.shop-badge-card .shop-frame-meta b{border-color:color-mix(in srgb,var(--frame-accent) 34%,transparent);background:color-mix(in srgb,var(--frame-accent) 9%,transparent);color:color-mix(in srgb,var(--frame-accent) 34%,#fff)}
.shop-badge-card .shop-frame-copy h3{min-height:0;font-size:14px}
.shop-badge-card .shop-frame-copy>p{font-size:9px}
.shop-badge-card .shop-frame-footer{justify-content:flex-start;margin-top:4px}
.shop-badge-card .shop-frame-price{text-align:left}
@media(max-width:560px){.shop-badge-card{grid-column:1;display:flex;flex-direction:column}.shop-badge-card .shop-badge-artwork{height:auto;aspect-ratio:900/243;border:0}.shop-badge-card .shop-frame-copy{padding:12px}.shop-badge-card .shop-frame-copy h3{font-size:12px}}

.profile-copy .profile-handle-line{margin-bottom:6px}
.profile-anime-badge-line{display:block;margin:2px 0 12px;line-height:0}
.profile-anime-badge-line[hidden]{display:none!important}
.profile-anime-badge{position:relative;display:inline-block;width:128px;height:35px;flex:0 0 128px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;vertical-align:middle;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;isolation:isolate}
.profile-anime-badge[hidden]{display:none!important}
.profile-anime-badge img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
.profile-anime-badge-details{z-index:1}
.profile-anime-badge-word{z-index:2}
@media(max-width:640px){.profile-anime-badge{width:120px;height:33px;flex-basis:120px}}
@media(prefers-reduced-motion:reduce){.shop-badge-stage:before,.shop-badge-stage:after,.profile-anime-badge:before,.profile-anime-badge:after{animation:none!important;opacity:.48}}
@media(prefers-reduced-motion:reduce){.shop-badge-card[data-badge="observer"] .shop-badge-glitch{animation:none;opacity:.07}}
