/* USAGI 3.0 — strictly visual, scoped styles */
body{--v30-shine:color-mix(in srgb,var(--v21-glow) 65%,white)}
body .topbar select,body .btn,body .quick-tabs a,body .usagi-friend{position:relative;transition:transform .22s ease,filter .22s ease,box-shadow .22s ease!important}
body .btn:active,body .quick-tabs a:active,body .usagi-friend:active{transform:scale(.965)!important;filter:brightness(1.09)}
body .quick-tabs a,body .btn{box-shadow:inset 0 2px 2px #ffffff80,0 4px 10px #36204628!important}
body .usagi-friend{box-shadow:inset 0 2px 5px #ffffffbd,0 6px 14px #36204617!important}
body .usagi-friend.is-selected{box-shadow:0 0 0 2px var(--v21-edge),0 8px 23px var(--v21-glow)!important}
body .panel,body .usagi-friends,body .usagi-live-preview{backdrop-filter:blur(6px)}
.v30-season{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}
.v30-season span{position:absolute;top:-20%;left:var(--left);font-size:var(--sz);opacity:0;animation:v30Fall var(--dur) linear infinite;animation-delay:var(--delay);filter:drop-shadow(0 1px 2px #fff9)}
.v30-greeting{position:fixed;z-index:10000;right:12px;bottom:22px;display:flex;align-items:center;gap:10px;max-width:min(310px,85vw);background:linear-gradient(120deg,var(--v21-card),#fff);border:2px solid var(--v21-edge);box-shadow:0 8px 25px #3b214b30;border-radius:24px;padding:9px 14px;color:var(--v21-text);font-weight:750;pointer-events:none;animation:v30Hello 3.7s ease both}
.v30-greeting img{width:53px;height:53px;object-fit:cover;border-radius:16px;animation:v30Wave .65s ease-in-out 3}
.v30-touch{position:absolute;z-index:12;left:var(--left);top:var(--top);pointer-events:none;font-size:25px;animation:v30Burst 1.1s ease-out forwards}
.v30-celebrate{position:fixed;z-index:10001;left:50%;top:25%;transform:translateX(-50%);pointer-events:none;font-size:34px;animation:v30Celebrate 1.7s ease-out forwards;text-shadow:0 2px 10px #fff}
body .hero.v30-pet .usagi-hero-bunny{animation:v30Pet .65s ease-in-out!important}
@keyframes v30Fall{0%{transform:translate3d(0,-20px,0) rotate(0);opacity:0}10%{opacity:.85}90%{opacity:.85}100%{transform:translate3d(var(--drift),310px,0) rotate(300deg);opacity:0}}
@keyframes v30Hello{0%{transform:translateX(120%);opacity:0}15%,75%{transform:translateX(0);opacity:1}100%{transform:translateX(120%);opacity:0}}
@keyframes v30Wave{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(9deg)}}
@keyframes v30Burst{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}100%{transform:translate(-50%,-160%) scale(1.8) rotate(25deg);opacity:0}}
@keyframes v30Pet{0%,100%{transform:rotate(0) scale(1)}30%{transform:rotate(-4deg) scale(1.04)}65%{transform:rotate(4deg) scale(.98)}}
@keyframes v30Celebrate{0%{opacity:0;transform:translate(-50%,35px) scale(.5)}30%,65%{opacity:1;transform:translate(-50%,-10px) scale(1.1)}100%{opacity:0;transform:translate(-50%,-65px) scale(1.3)}}
@media(prefers-reduced-motion:reduce){.v30-season,.v30-greeting,.v30-touch,.v30-celebrate{display:none!important}body .hero.v30-pet .usagi-hero-bunny{animation:none!important}}
