/* BI4 Pop Sztár Sonya: kristály K-pop koncert.
   Holografikus dalszöveg-lapok, LED fal, reflektorok, csiszolt drágakövek és neon lila-kék-rózsaszín fények.
   Paletta (--sp0..--sp4): #FAE0F5 · #CFAAFD · #2b2147 · #9E8ABF · #D2BEDE; neon rózsaszín/kék csak szikraként.
   Minden szelektor Sonya-osztályhoz kötött, hogy ne ütközzön más hősök bi4 témájával. */

/* ---------- Papír-mérő (kártya bal alsó sarka) ---------- */
.sonya-paper-meter[data-theme="bi4"]::before {
    border: 1.5px solid #FAE0F5;
    background:
        radial-gradient(circle at 50% 38%, #2b2147 0 38%, transparent 39%),
        conic-gradient(from 0deg, #FAE0F5cc, #CFAAFDcc, #7ad8ff88, #ff7ad988, #D2BEDEcc, #FAE0F5cc);
    box-shadow: 0 0 16px #CFAAFD99, 0 0 28px #ff7ad933, inset 0 0 14px #FAE0F566;
    animation: sonya-bi4-spin 11s linear infinite;
}
/* Reflektor-kúp, ami lassan jobbra-balra söpör a mérő felett. */
.sonya-paper-meter[data-theme="bi4"]::after {
    content: "";
    position: absolute;
    left: 50%;
    top: -14px;
    z-index: -1;
    width: 54px;
    height: 70px;
    margin-left: -27px;
    background: linear-gradient(180deg, #FAE0F5aa, #CFAAFD33 55%, transparent);
    clip-path: polygon(40% 0, 60% 0, 100% 100%, 0 100%);
    transform-origin: 50% 0;
    opacity: .75;
    pointer-events: none;
    animation: sonya-bi4-sweep 4.6s ease-in-out infinite alternate;
}
.sonya-paper-meter[data-theme="bi4"] > img {
    filter: drop-shadow(0 0 5px #FAE0F5) drop-shadow(0 0 10px #CFAAFD) drop-shadow(0 0 14px #ff7ad955);
}
.sonya-paper-meter[data-theme="bi4"] > span {
    border-color: #FAE0F5;
    border-radius: 4px 11px 4px 11px;
    background: linear-gradient(135deg, #2b2147f2, #4b3679f2 60%, #2b2147f2);
    color: #FAE0F5;
    text-shadow: 0 0 6px #ff7ad9;
    box-shadow: 0 0 10px #CFAAFD99, inset 0 0 6px #FAE0F544;
}
/* Keringő kristály-szikrák (négyágú csillag). */
.sonya-paper-meter[data-theme="bi4"] > i {
    width: 8px;
    height: 8px;
    clip-path: polygon(50% 0, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0 50%, 40% 40%);
}
.sonya-paper-meter[data-theme="bi4"] > i:nth-of-type(3n+1) { background: #FAE0F5; }
.sonya-paper-meter[data-theme="bi4"] > i:nth-of-type(3n+2) { background: #7ad8ff; }
.sonya-paper-meter[data-theme="bi4"] > i:nth-of-type(3n) { background: #ff7ad9; }
.sonya-paper-meter[data-theme="bi4"].is-full::before,
.sonya-paper-meter[data-theme="bi4"].is-ready::before {
    box-shadow: 0 0 26px #CFAAFD, 0 0 40px #ff7ad988, inset 0 0 18px #FAE0F5aa;
}
.sonya-paper-meter[data-theme="bi4"].is-full::after { opacity: 1; animation-duration: 2.4s; }

/* ---------- Mérő tooltip: üveg-kristály koncertterem ---------- */
.sonya-paper-tooltip[data-theme="bi4"] {
    border-color: #CFAAFD;
    outline-color: #FAE0F566;
    background:
        radial-gradient(circle at 12% 6%, #FAE0F52e, transparent 38%),
        radial-gradient(circle at 92% 6%, #ff7ad92b, transparent 40%),
        radial-gradient(circle at 70% 104%, #7ad8ff24, transparent 46%),
        repeating-linear-gradient(115deg, transparent 0 26px, #FAE0F508 27px 28px),
        linear-gradient(145deg, #3d2e67, #1d1536 62%, #120d27);
    box-shadow: 0 20px 60px #000b, 0 0 30px #CFAAFD55, 0 0 64px #ff7ad922, inset 0 0 44px #CFAAFD1c;
}
/* LED fal pontrács + reflektor-nyalábok a háttérrétegben. */
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle, #FAE0F520 1px, transparent 1.6px) 0 0 / 11px 11px;
    -webkit-mask-image: linear-gradient(180deg, #000, transparent 72%);
    mask-image: linear-gradient(180deg, #000, transparent 72%);
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        conic-gradient(from 158deg at 14% -10%, transparent 0 9deg, #FAE0F524 9deg 17deg, transparent 17deg),
        conic-gradient(from 192deg at 88% -10%, transparent 0 9deg, #7ad8ff22 9deg 17deg, transparent 17deg),
        conic-gradient(from 176deg at 52% -14%, transparent 0 7deg, #ff7ad91c 7deg 13deg, transparent 13deg);
    transform-origin: 50% 0;
    animation: sonya-bi4-beams 7s ease-in-out infinite alternate;
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx > img,
#sonya-paper-workshop[data-theme="bi4"] .sonya-workshop-vfx > img {
    filter: drop-shadow(0 0 5px #ff7ad9) drop-shadow(0 0 5px #7ad8ff);
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx > b {
    border-color: #CFAAFD40;
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx > b:nth-of-type(2) {
    border-color: #ff7ad933;
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx .sonya-tooltip-motif {
    opacity: .3;
    fill: #CFAAFD;
    color: #FAE0F5;
}
/* Felszálló hangjegyek (tooltip és műhely közös). A glifa CSS-ből jön, így a fordító nem érinti. */
.sonya-bi4-n {
    position: absolute;
    left: calc(6% + var(--i) * 13.5%);
    bottom: -22px;
    font-style: normal;
    font-size: 17px;
    line-height: 1;
    opacity: 0;
    color: #FAE0F5;
    text-shadow: 0 0 8px #ff7ad9, 0 0 14px #CFAAFD;
    animation: sonya-bi4-rise 7s linear infinite;
    animation-delay: calc(var(--i) * -1.05s);
    pointer-events: none;
}
.sonya-bi4-n::before { content: var(--g); }
.sonya-bi4-n:nth-of-type(4n+1) { --g: "♪"; }
.sonya-bi4-n:nth-of-type(4n+2) { --g: "♫"; color: #d6f3ff; text-shadow: 0 0 8px #7ad8ff, 0 0 14px #CFAAFD; }
.sonya-bi4-n:nth-of-type(4n+3) { --g: "♬"; }
.sonya-bi4-n:nth-of-type(4n) { --g: "♩"; color: #ffd6f4; }
#sonya-paper-workshop[data-theme="bi4"] .sonya-bi4-n { --rise: 820px; animation-duration: 12s; }
/* Fejléc: kristály keret az emblémán, színátmenetes cím. */
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__emblem { position: relative; }
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__emblem::before {
    content: "";
    position: absolute;
    inset: -2px -4px;
    background: conic-gradient(from 0deg, #FAE0F5, #CFAAFD, #7ad8ff, #ff7ad9, #FAE0F5);
    clip-path: polygon(50% 0, 100% 27%, 100% 73%, 50% 100%, 0 73%, 0 27%);
    opacity: .28;
    animation: sonya-bi4-spin 14s linear infinite;
}
.sonya-paper-tooltip[data-theme="bi4"] header .sonya-paper-tooltip__emblem img {
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 0 6px #FAE0F5) drop-shadow(0 0 12px #CFAAFD);
}
.sonya-paper-tooltip[data-theme="bi4"] header strong {
    background: linear-gradient(90deg, #FAE0F5, #CFAAFD 52%, #D2BEDE);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-shadow: none;
    filter: drop-shadow(0 0 8px #CFAAFD88);
}
.sonya-paper-tooltip[data-theme="bi4"] header > b { text-shadow: 0 0 12px #ff7ad9aa, 0 0 6px #CFAAFD; }
/* Pecsét-sáv és mérföldkövek: csiszolt üveg lapok. */
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__track span,
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__milestones > span {
    border-radius: 5px 12px 5px 12px;
    border-color: #CFAAFD33;
    background: linear-gradient(135deg, #FAE0F51a, #2b214766 60%, #0003);
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__track .is-filled,
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__milestones .is-reached {
    position: relative;
    overflow: hidden;
    border-color: #FAE0F5;
    background: linear-gradient(135deg, #CFAAFD55, #ff7ad920 70%, #2b214788);
    box-shadow: 0 0 10px #CFAAFD88, inset 0 0 9px #FAE0F544;
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__track .is-filled::after,
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__milestones .is-reached::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, transparent 38%, #ffffff55 50%, transparent 62%);
    transform: translateX(-120%);
    animation: sonya-bi4-shine 3.6s ease-in-out infinite;
    pointer-events: none;
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__track .is-filled img,
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__milestones .is-reached img {
    filter: drop-shadow(0 0 5px #FAE0F5) drop-shadow(0 0 8px #ff7ad988);
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__enemies {
    border-color: #CFAAFD30;
    background: linear-gradient(135deg, #FAE0F510, #0004);
}
.sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__ready {
    border-color: #FAE0F5;
    background: linear-gradient(135deg, #CFAAFD33, #ff7ad91a 70%, #0006);
    box-shadow: 0 0 12px #CFAAFD66;
}
.sonya-paper-tooltip[data-theme="bi4"] footer b { text-shadow: 0 0 8px #CFAAFD99; }

/* ---------- Origami-műhely ---------- */
#sonya-paper-workshop[data-theme="bi4"] {
    border-color: #CFAAFD;
    background:
        radial-gradient(ellipse at 80% 100%, #ff7ad922, transparent 55%),
        radial-gradient(ellipse at 8% 0, #7ad8ff1c, transparent 50%),
        linear-gradient(155deg, #3d2e67, #1d1536 58%, #0f0a22);
    box-shadow: 0 24px 80px #000c, 0 0 36px #CFAAFD55, 0 0 80px #ff7ad91f, inset 0 0 50px #CFAAFD18;
}
#sonya-paper-workshop[data-theme="bi4"]::backdrop {
    background: radial-gradient(circle at 50% 30%, #2b2147d9, #07040fef);
}
#sonya-paper-workshop[data-theme="bi4"] .sonya-workshop-vfx {
    background:
        radial-gradient(circle, #FAE0F515 1px, transparent 1.6px) 0 0 / 14px 14px,
        conic-gradient(from 165deg at 8% -8%, transparent 0 7deg, #FAE0F51e 7deg 12deg, transparent 12deg),
        conic-gradient(from 188deg at 92% -8%, transparent 0 7deg, #7ad8ff1c 7deg 12deg, transparent 12deg),
        conic-gradient(from 177deg at 50% -12%, transparent 0 5deg, #ff7ad918 5deg 9deg, transparent 9deg);
}
#sonya-paper-workshop[data-theme="bi4"] .sonya-workshop-vfx > b { border-color: #CFAAFD40; }
#sonya-paper-workshop[data-theme="bi4"] .sonya-workshop-vfx > .sonya-tooltip-motif { opacity: .12; fill: #CFAAFD; color: #FAE0F5; }
#sonya-paper-workshop[data-theme="bi4"] > .sonya-workshop-header > img {
    filter: drop-shadow(0 0 6px #FAE0F5) drop-shadow(0 0 14px #CFAAFD);
}
#sonya-paper-workshop[data-theme="bi4"] .sonya-workshop-header h2 {
    text-shadow: 0 0 18px #CFAAFD99, 0 0 30px #ff7ad944;
}
#sonya-paper-workshop[data-theme="bi4"] :is(.sonya-workshop-rule, .sonya-workshop-target, .sonya-workshop-ability) {
    border-color: #CFAAFD44;
}

/* ---------- Pecsét-jelvények a kártyán (kristály-csiszolat) ---------- */
.sonya-paper-orbit[data-theme="bi4"] .sonya-paper-mark {
    border-color: #FAE0F5;
    background:
        radial-gradient(circle, #2b2147 0 52%, transparent 53%),
        repeating-conic-gradient(from 15deg at 50% 50%, #FAE0F5 0 22.5deg, #CFAAFD 22.5deg 45deg, #D2BEDE 45deg 67.5deg, #9E8ABF 67.5deg 90deg);
    box-shadow: 0 0 7px #CFAAFD, 0 0 12px #ff7ad944, inset 0 0 6px #FAE0F566;
}
.sonya-paper-orbit[data-theme="bi4"] .sonya-paper-mark::before {
    border: 1px dashed #ff7ad9aa;
    box-shadow: 0 0 5px #7ad8ff88;
    animation: sonya-bi4-spin 7s linear infinite;
}
.sonya-paper-orbit[data-theme="bi4"] .sonya-paper-mark > img {
    filter: drop-shadow(0 0 3px #FAE0F5) drop-shadow(0 0 6px #ff7ad988);
}
.sonya-paper-orbit[data-theme="bi4"].is-full .sonya-paper-mark {
    box-shadow: 0 0 10px #FAE0F5, 0 0 16px #ff7ad9aa, inset 0 0 9px #FAE0F5aa;
}

/* ---------- Hősportré koszorú (5 pecsét): reflektor-nyalábok és neon fény ---------- */
.sonya-paper-wreath[data-theme="bi4"]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        conic-gradient(from 196deg at 50% -10%, transparent 0 20deg, #FAE0F52a 20deg 30deg, transparent 30deg 66deg, #7ad8ff26 66deg 76deg, transparent 76deg 150deg),
        repeating-linear-gradient(100deg, transparent 0 22px, #CFAAFD12 23px 26px, transparent 27px 48px);
    animation: sonya-bi4-glow 2.6s ease-in-out infinite alternate;
}
.sonya-paper-wreath[data-theme="bi4"] > span > img {
    filter: drop-shadow(0 2px 3px #000d) drop-shadow(0 0 5px #ff7ad9) drop-shadow(0 0 4px #7ad8ff);
}

/* ---------- Vásárcsarnok: jobb felső sarok előnézet ---------- */
.vshop-skin-effect-preview.is-sonya-bi4 {
    isolation: isolate;
    border: 1.5px solid #FAE0F5;
    background:
        radial-gradient(circle at 50% 16%, #CFAAFD99, transparent 56%),
        conic-gradient(from 20deg, #3d2e67, #5b4090, #2b2147, #7b5aa6, #3d2e67);
    box-shadow: 0 4px 12px #000b, 0 0 14px #CFAAFD99, 0 0 26px #ff7ad944, inset 0 0 12px #FAE0F55a;
    animation: vshopSkinEffectFloat 3s ease-in-out infinite, sonya-bi4-glow 2.4s ease-in-out infinite alternate;
}
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-orb {
    position: absolute;
    inset: -30%;
    z-index: 0;
    background: conic-gradient(from 0deg, transparent 0 292deg, #FAE0F555 322deg, #7ad8ff33 342deg, transparent 360deg);
    animation: sonya-bi4-spin 5.5s linear infinite;
}
.vshop-skin-effect-preview.is-sonya-bi4[data-theme="bi4"] img {
    z-index: 2;
    inset: 9%;
    width: 82%;
    height: 82%;
    filter: drop-shadow(0 0 4px #FAE0F5) drop-shadow(0 0 9px #CFAAFD) drop-shadow(0 0 12px #ff7ad966);
    animation: sonya-bi4-float 3.4s ease-in-out infinite;
}
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-sp {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 3;
    width: 9px;
    height: 9px;
    margin: -4.5px 0 0 -4.5px;
    background: #FAE0F5;
    clip-path: polygon(50% 0, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0 50%, 40% 40%);
    pointer-events: none;
    animation: sonya-bi4-orbit calc(5s + var(--k) * 1.3s) linear infinite, sonya-bi4-twinkle 1.1s ease-in-out infinite alternate;
    animation-delay: calc(var(--k) * -1.6s), calc(var(--k) * -.37s);
}
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-sp:nth-of-type(2) { background: #7ad8ff; }
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-sp:nth-of-type(3) { background: #ff7ad9; }
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-nt {
    position: absolute;
    bottom: 8%;
    left: calc(20% + var(--k) * 46%);
    z-index: 3;
    font-size: 11px;
    line-height: 1;
    font-weight: 700;
    color: #FAE0F5;
    text-shadow: 0 0 4px #ff7ad9, 0 0 7px #CFAAFD;
    opacity: 0;
    pointer-events: none;
    animation: sonya-bi4-note 2.8s linear infinite;
    animation-delay: calc(var(--k) * -1.4s);
}
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-nt::before { content: var(--g); }
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-nt:nth-of-type(1) { --g: "♪"; }
.vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-nt:nth-of-type(2) { --g: "♫"; }

/* ---------- Kulcskockák ---------- */
@keyframes sonya-bi4-spin { to { rotate: 360deg; } }
@keyframes sonya-bi4-sweep {
    from { transform: rotate(-17deg); opacity: .45; }
    to { transform: rotate(17deg); opacity: .9; }
}
@keyframes sonya-bi4-beams {
    from { transform: rotate(-3deg) scaleY(.96); opacity: .55; }
    to { transform: rotate(3deg) scaleY(1.04); opacity: 1; }
}
@keyframes sonya-bi4-rise {
    0% { opacity: 0; translate: 0 0; rotate: -12deg; }
    12% { opacity: .75; }
    55% { translate: 10px calc(var(--rise, 440px) * -.55); rotate: 10deg; }
    88% { opacity: .5; }
    100% { opacity: 0; translate: -8px calc(var(--rise, 440px) * -1); rotate: -8deg; }
}
@keyframes sonya-bi4-shine {
    0%, 55% { transform: translateX(-120%); }
    100% { transform: translateX(120%); }
}
@keyframes sonya-bi4-glow {
    from { filter: brightness(.95) drop-shadow(0 0 4px #CFAAFD88); opacity: .85; }
    to { filter: brightness(1.18) drop-shadow(0 0 11px #ff7ad9aa); opacity: 1; }
}
@keyframes sonya-bi4-float {
    0%, 100% { transform: translateY(2px) rotate(-6deg) scale(.97); }
    50% { transform: translateY(-4px) rotate(6deg) scale(1.04); }
}
@keyframes sonya-bi4-orbit {
    from { transform: rotate(calc(var(--k) * 120deg)) translateX(calc(var(--vshop-skin-preview-size, 60px) * .37)) rotate(calc(var(--k) * -120deg)); }
    to { transform: rotate(calc(var(--k) * 120deg + 360deg)) translateX(calc(var(--vshop-skin-preview-size, 60px) * .37)) rotate(calc(var(--k) * -120deg - 360deg)); }
}
@keyframes sonya-bi4-twinkle {
    from { scale: .45; opacity: .55; }
    to { scale: 1.15; opacity: 1; }
}
@keyframes sonya-bi4-note {
    0% { opacity: 0; transform: translateY(0) rotate(-10deg); }
    20% { opacity: 1; }
    80% { opacity: .7; }
    100% { opacity: 0; transform: translateY(-40px) rotate(12deg); }
}

/* ---------- Csökkentett mozgás / kikapcsolt VFX ---------- */
@media (prefers-reduced-motion: reduce) {
    .sonya-paper-meter[data-theme="bi4"]::before,
    .sonya-paper-meter[data-theme="bi4"]::after,
    .sonya-paper-meter[data-theme="bi4"] *,
    .sonya-paper-tooltip[data-theme="bi4"] *,
    .sonya-paper-tooltip[data-theme="bi4"] *::before,
    .sonya-paper-tooltip[data-theme="bi4"] *::after,
    .sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx::after,
    #sonya-paper-workshop[data-theme="bi4"] *,
    .sonya-paper-orbit[data-theme="bi4"] .sonya-paper-mark::before,
    .sonya-paper-wreath[data-theme="bi4"]::before,
    .vshop-skin-effect-preview.is-sonya-bi4,
    .vshop-skin-effect-preview.is-sonya-bi4 * { animation: none !important; }
    .sonya-bi4-n { display: none; }
    .sonya-paper-meter[data-theme="bi4"]::after { transform: none; }
    .vshop-skin-effect-preview.is-sonya-bi4 .sonya-bi4-nt { opacity: .85; }
}
body.v3-vfx-disabled .sonya-paper-meter[data-theme="bi4"]::before,
body.v3-vfx-disabled .sonya-paper-meter[data-theme="bi4"]::after,
body.v3-vfx-disabled .sonya-paper-meter[data-theme="bi4"] *,
body.v3-vfx-disabled .sonya-paper-tooltip[data-theme="bi4"] *,
body.v3-vfx-disabled .sonya-paper-tooltip[data-theme="bi4"] *::before,
body.v3-vfx-disabled .sonya-paper-tooltip[data-theme="bi4"] *::after,
body.v3-vfx-disabled .sonya-paper-tooltip[data-theme="bi4"] .sonya-paper-tooltip__vfx::after,
body.v3-vfx-disabled .sonya-paper-orbit[data-theme="bi4"] .sonya-paper-mark::before,
body.v3-vfx-disabled .sonya-paper-wreath[data-theme="bi4"]::before,
.sonya-paper-meter[data-theme="bi4"].sonya-no-motion::before,
.sonya-paper-meter[data-theme="bi4"].sonya-no-motion::after,
.sonya-paper-tooltip[data-theme="bi4"].sonya-no-motion::before,
.sonya-paper-tooltip[data-theme="bi4"].sonya-no-motion::after { animation: none !important; }
body.v3-vfx-disabled .sonya-bi4-n { display: none; }

/* ===== BI4 Pop Sztár: általános csatatéri skin-overlay (.v3-skin-effect--bi4) =====
   Minden bi4 skines hős kártyáján: neon lila-kék-rózsaszín koncertfény, felszálló
   hangjegyek, kristályszikrák és drágakő-szilánkok. */
.v3-skin-effect--bi4::before {
    background:
        radial-gradient(ellipse at 50% -6%, rgba(207,170,253,.30), transparent 52%),
        repeating-linear-gradient(90deg, transparent 0 15px, rgba(250,224,245,.06) 16px, transparent 17px);
}
.v3-skin-effect--bi4::after {
    height: 26%;
    background: linear-gradient(180deg, transparent, rgba(255,122,217,.13), rgba(122,216,255,.10), transparent);
    animation: sonyaBi4Scan 5.6s linear infinite;
}
@keyframes sonyaBi4Scan { from { transform: translateY(-120%); } to { transform: translateY(440%); } }
.v3-skin-effect--bi4 .v3-skin-particle { --particle-color: #CFAAFD; }
.v3-skin-effect--bi4 .v3-skin-particle:nth-child(3n+2) { --particle-color: #ff7ad9; }
.v3-skin-effect--bi4 .v3-skin-particle:nth-child(3n) { --particle-color: #7ad8ff; }
.v3-skin-effect--bi4 .v3-skin-particle:nth-child(5n) { --particle-color: #FAE0F5; }
.v3-skin-particle--bi4-spark { width: 5px; height: 5px; clip-path: polygon(50% 0, 62% 38%, 100% 50%, 62% 62%, 50% 100%, 38% 62%, 0 50%, 38% 38%); }
.v3-skin-particle--bi4-gem { width: 7px; height: 11px; clip-path: polygon(50% 0, 100% 36%, 50% 100%, 0 36%); }
.v3-skin-particle--bi4-note { width: 6px; height: 6px; border-radius: 50%; }
.v3-skin-effect--bi4 .v3-skin-motif { filter: drop-shadow(0 0 4px currentColor) drop-shadow(0 0 8px rgba(207,170,253,.55)) drop-shadow(0 0 1px #fff); }
@media (prefers-reduced-motion: reduce) {
    .v3-skin-effect--bi4::after { animation: none; opacity: 0; }
}
body.v3-vfx-disabled .v3-skin-effect--bi4 { display: none; }

/* BI4 Fejlesztett Pop Sztár Sonya: aranyozott dalszövegek, kristályok és VIP gála. */
.sonya-paper-meter[data-theme="bi4vip"]::before {
    border: 1px solid #FCDEB1; border-radius: 16px 34px;
    background: repeating-conic-gradient(from 25deg,#FCDEB120 0 12deg,transparent 13deg 38deg),radial-gradient(circle,#BE936861,#673418 67%,#20100b);
    box-shadow: 0 0 18px #FCDEB170,inset 0 0 15px #EDD7AF40;
    animation: sonya-vip-polish 3.8s ease-in-out infinite alternate;
}
.sonya-paper-meter[data-theme="bi4vip"]::after {
    content: "VIP"; position:absolute; top:-8px; left:35px; z-index:2;
    color:#FEFAFE; font:900 10px/1.2 Georgia,serif; letter-spacing:3px;
    text-shadow:0 0 7px #FCDEB1,0 2px 3px #673418;
}
.sonya-paper-meter[data-theme="bi4vip"] > img { filter:drop-shadow(0 0 6px #FEFAFE) drop-shadow(0 0 12px #FCDEB1); }
.sonya-paper-meter[data-theme="bi4vip"] > span { color:#FEFAFE;border-color:#FCDEB1;background:#673418;box-shadow:0 0 8px #FCDEB180; }
.sonya-paper-meter[data-theme="bi4vip"] > i { background:#FCDEB1;clip-path:polygon(50% 0,100% 33%,50% 100%,0 33%);box-shadow:0 0 6px #FEFAFE;width:7px;height:12px; }
.sonya-paper-meter[data-theme="bi4vip"].is-full::before,
.sonya-paper-meter[data-theme="bi4vip"].is-ready::before {box-shadow:0 0 25px #FCDEB1,inset 0 0 24px #FEFAFE65;}
.sonya-paper-tooltip[data-theme="bi4vip"],#sonya-paper-workshop[data-theme="bi4vip"] {
    color:#FEFAFE; border-color:#FCDEB1;
    background:radial-gradient(ellipse at 12% 0,#EDD7AF33,transparent 44%),radial-gradient(ellipse at 90% 90%,#CFAAFD12,transparent 50%),repeating-linear-gradient(115deg,transparent 0 28px,#FCDEB108 29px 30px),linear-gradient(145deg,#673418,#301c14 60%,#130d0a);
    box-shadow:0 20px 70px #000b,0 0 32px #FCDEB14d,inset 0 0 36px #EDD7AF13;
}
#sonya-paper-workshop[data-theme="bi4vip"]::backdrop {background:radial-gradient(circle at 50% 30%,#673418a0,#080606e8);}
.sonya-paper-tooltip[data-theme="bi4vip"] .sonya-paper-tooltip__vfx::before,
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-vfx::before {
    content:"";position:absolute;inset:0;
    background:radial-gradient(circle,#FEFAFE35 1px,transparent 1.6px) 0 0/17px 19px;
    mask-image:linear-gradient(#000,transparent 80%);
}
.sonya-paper-tooltip[data-theme="bi4vip"] .sonya-paper-tooltip__vfx::after,
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-vfx::after {
    content:"";position:absolute;inset:0;transform-origin:50% 0;
    background:conic-gradient(from 152deg at 6% -7%,transparent 0 8deg,#FCDEB125 9deg 16deg,transparent 17deg),conic-gradient(from 193deg at 94% -7%,transparent 0 8deg,#FEFAFE21 9deg 16deg,transparent 17deg);
    animation:sonya-bi4-beams 7s ease-in-out infinite alternate;
}
[data-theme="bi4vip"] :is(.sonya-paper-tooltip__vfx,.sonya-workshop-vfx) > img {filter:drop-shadow(0 0 5px #EDD7AF) drop-shadow(0 0 9px #FCDEB1);}
[data-theme="bi4vip"] :is(.sonya-paper-tooltip__vfx,.sonya-workshop-vfx) > b {border-color:#FCDEB145;}
[data-theme="bi4vip"] .sonya-tooltip-motif {color:#FCDEB1;fill:#EDD7AF;opacity:.36;filter:drop-shadow(0 0 5px #FCDEB1);}
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-vfx > .sonya-tooltip-motif {opacity:.15;}
.sonya-vip-jewel {position:absolute;left:calc(3% + var(--i)*12.5%);bottom:-30px;width:24px;height:30px;font:24px/1 Georgia,serif;font-style:normal;color:#FCDEB1;opacity:0;text-shadow:0 0 10px #FCDEB1;animation:sonya-bi4-rise 9s linear infinite;animation-delay:calc(var(--i)*-1.15s);pointer-events:none;}
.sonya-vip-jewel svg {width:24px;height:30px;filter:drop-shadow(0 0 5px #FEFAFE88);}
.sonya-vip-jewel:nth-of-type(3n+2) {color:#FEFAFE;}
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-vip-jewel {--rise:820px;animation-duration:13s;}
.sonya-paper-tooltip[data-theme="bi4vip"] header strong,
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-header h2 {color:#FEFAFE;text-shadow:0 0 12px #FCDEB180;}
.sonya-paper-tooltip[data-theme="bi4vip"] header :is(small,em),
#sonya-paper-workshop[data-theme="bi4vip"] :is(.sonya-workshop-ledger-title,.sonya-workshop-header) small {color:#EDD7AF;}
.sonya-paper-tooltip[data-theme="bi4vip"] header img,
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-header > img {filter:drop-shadow(0 0 7px #FCDEB1) drop-shadow(0 0 14px #FEFAFE80);}
[data-theme="bi4vip"] :is(.sonya-paper-tooltip__track span,.sonya-paper-tooltip__milestones > span,.sonya-workshop-rule,.sonya-workshop-target,.sonya-workshop-ability) {border-color:#BE936877;background:linear-gradient(135deg,#EDD7AF17,#67341835,#0003);border-radius:6px 14px;}
[data-theme="bi4vip"] :is(.sonya-paper-tooltip__track .is-filled,.sonya-paper-tooltip__milestones .is-reached,.sonya-workshop-target.is-full) {position:relative;overflow:hidden;border-color:#FCDEB1;background:linear-gradient(130deg,#EDD7AF30,#BE936822);box-shadow:0 0 8px #FCDEB150,inset 0 0 8px #FEFAFE1f;}
[data-theme="bi4vip"] :is(.sonya-paper-tooltip__track .is-filled,.sonya-workshop-target.is-full)::after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,#FEFAFE55 50%,transparent 65%);animation:sonya-bi4-shine 4.8s ease-in-out infinite;}
.sonya-paper-tooltip[data-theme="bi4vip"] :is(footer b,.sonya-paper-tooltip__enemies b,.sonya-paper-tooltip__milestones b),
#sonya-paper-workshop[data-theme="bi4vip"] :is(.sonya-workshop-stats b,.sonya-workshop-target > b,.sonya-workshop-section-label) {color:#FCDEB1;}
.sonya-paper-tooltip[data-theme="bi4vip"] .sonya-paper-tooltip__ready,
#sonya-paper-workshop[data-theme="bi4vip"] .sonya-workshop-charge.is-ready {border-color:#FCDEB1;background:#BE936828;box-shadow:0 0 15px #FCDEB14a;}
.sonya-paper-orbit[data-theme="bi4vip"] .sonya-paper-mark {border-color:#FCDEB1;background:repeating-conic-gradient(#BE9368 0 20deg,#EDD7AF 20deg 40deg,#673418 40deg 60deg);box-shadow:0 0 8px #FCDEB1,inset 0 0 12px #673418;}
.sonya-paper-orbit[data-theme="bi4vip"] .sonya-paper-mark::before {border:1px dashed #FCDEB1;animation:sonya-bi4-spin 12s linear infinite;}
.sonya-paper-orbit[data-theme="bi4vip"] .sonya-paper-mark > img {filter:drop-shadow(0 0 4px #FEFAFE) drop-shadow(0 0 7px #FCDEB1);}
.sonya-paper-wreath[data-theme="bi4vip"]::before {content:"";position:absolute;inset:0;background:conic-gradient(from 190deg at 50% -10%,transparent 0 18deg,#FCDEB130 19deg 28deg,transparent 29deg 67deg,#FEFAFE22 68deg 76deg,transparent 77deg);animation:sonya-vip-polish 3s ease-in-out infinite alternate;}
.sonya-paper-wreath[data-theme="bi4vip"] > span > img {filter:drop-shadow(0 2px 3px #000b) drop-shadow(0 0 7px #FCDEB1);}
@keyframes sonya-vip-polish {from{filter:brightness(.96);opacity:.8;}to{filter:brightness(1.15) drop-shadow(0 0 5px #FCDEB160);opacity:1;}}
@media (prefers-reduced-motion:reduce) {
    [data-theme="bi4vip"].sonya-paper-meter::before,[data-theme="bi4vip"] *,[data-theme="bi4vip"] *::before,[data-theme="bi4vip"] *::after {animation:none!important;}
    .sonya-vip-jewel {display:none;}
}
body.v3-vfx-disabled [data-theme="bi4vip"] *,body.v3-vfx-disabled [data-theme="bi4vip"] *::before,body.v3-vfx-disabled [data-theme="bi4vip"] *::after,
[data-theme="bi4vip"].sonya-no-motion *,[data-theme="bi4vip"].sonya-no-motion *::before,[data-theme="bi4vip"].sonya-no-motion *::after,
[data-theme="bi4vip"].sonya-no-motion::before,body.v3-vfx-disabled [data-theme="bi4vip"].sonya-paper-meter::before {animation:none!important;}
body.v3-vfx-disabled .sonya-vip-jewel,[data-theme="bi4vip"].sonya-no-motion .sonya-vip-jewel {display:none;}
