/* =======================================
   KENJIRO (heroId 73) – PENGEFÖLÉNY
   =======================================
   Paletta (skin szerint, a JS írja felül inline változókkal):
   --kj-c1 fő, --kj-c2 fény (penge-él), --kj-c3 lágy, --kj-c4 mély, --kj-c5 kiemelő,
   --kj-petal szirom / szikra. --kj-power: Pengefölény-erősség 0..1.
   Alap:    #1A3C65 #76B2FF #8492BD #020007 #350A18 – éjkék acél, sakura.
   Űrhajós: #44DEFF #FA8232 #FAA055 #FCF639 #FB2F00 – rakéták, csillagok.
   VIP:     #CCAA8F #6D431E #C08A41 #D699E3 #B4783C – csillogás, fényívek.
   Emoji nincs (felhasználói kérés). */

.kenjiro-blade-meter,
.kenjiro-blade-tooltip,
.kenjiro-card-fx,
.v3-card[data-kj-theme],
#kenjiro-blade-workshop,
.kenjiro-ability-vfx {
    --kj-c1: #1A3C65; --kj-c2: #76B2FF; --kj-c3: #8492BD; --kj-c4: #020007; --kj-c5: #350A18;
    --kj-petal: #F2B9D0;
    --kj-power: 0;
}

/* ---------------------------------------
   Vektoros motívumok (SVG)
   --------------------------------------- */
.kj-petal, .kj-rocket { display: block; width: 100%; height: 100%; overflow: visible; }
.kj-petal__body { fill: var(--kj-petal); }
.kj-petal__vein { fill: none; stroke: color-mix(in srgb, var(--kj-petal) 55%, #fff); stroke-width: .6; stroke-linecap: round; opacity: .7; }
.kj-petal { filter: drop-shadow(0 0 2px color-mix(in srgb, var(--kj-petal) 70%, transparent)); }
.kj-rocket__body { fill: color-mix(in srgb, #fff 82%, var(--kj-c1)); stroke: var(--kj-c1); stroke-width: .6; }
.kj-rocket__fin { fill: var(--kj-c2); }
.kj-rocket__window { fill: var(--kj-c1); stroke: #fff; stroke-width: .5; }
.kj-rocket__flame { fill: var(--kj-c4); filter: drop-shadow(0 0 2px var(--kj-c5)); animation: kjFlame .25s ease-in-out infinite alternate; transform-origin: 6px 18px; }

/* ---------------------------------------
   Mechanika-ikon a kártyán (Flower Virágernyő mintájú, körvonalas)
   --------------------------------------- */
.kenjiro-blade-meter {
    position: absolute; left: 40px; bottom: 5px; z-index: 19;
    width: 100px; height: 88px; padding: 0; border: 0;
    background: transparent; color: #fff; cursor: pointer; isolation: isolate;
    filter: drop-shadow(0 7px 9px #000d);
}
.kenjiro-blade-meter:focus-visible { outline: 2px solid var(--kj-c2); outline-offset: 2px; border-radius: 50%; }
/* Körvonalas, teljes kitöltésű háttér (nem kék keret). */
.kenjiro-blade-meter::before {
    position: absolute; inset: 8px 12px 6px; z-index: -1; content: "";
    border: 1.5px solid color-mix(in srgb, var(--kj-c2) 75%, transparent);
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--kj-c2) calc(18% + var(--kj-power) * 26%), transparent), transparent 62%),
        radial-gradient(circle, color-mix(in srgb, var(--kj-c5) 55%, transparent), color-mix(in srgb, var(--kj-c4) 94%, #000));
    box-shadow:
        0 0 calc(10px + var(--kj-power) * 16px) color-mix(in srgb, var(--kj-c2) calc(40% + var(--kj-power) * 40%), transparent),
        inset 0 0 18px color-mix(in srgb, #000 55%, var(--kj-c1));
    animation: kjMeterBreath 2.8s ease-in-out infinite alternate;
}
.kenjiro-blade-meter__bg { position: absolute; inset: 8px 12px 6px; z-index: 0; overflow: hidden; border-radius: 50%; pointer-events: none; }
.kenjiro-blade-meter__bg i.is-petal {
    position: absolute; top: -10px; left: calc(10% + var(--p-i) * 14%); width: 8px; height: 8px;
    opacity: 0; animation: kjPetalFall calc(4.4s - var(--kj-power) * 1.6s) linear infinite;
    animation-delay: calc(var(--p-i) * -.73s);
}
.kenjiro-blade-meter__bg i.is-wind {
    position: absolute; left: -40%; top: calc(26% + var(--w-i) * 22%); width: 60%; height: 1.5px; border-radius: 2px;
    background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--kj-c3) 80%, #fff), transparent);
    opacity: 0; animation: kjWindPass calc(2.6s - var(--kj-power) * .9s) ease-in infinite;
    animation-delay: calc(var(--w-i) * -.9s);
}
.kenjiro-blade-meter__aura, .kenjiro-blade-meter__aura i { position: absolute; inset: 0; border-radius: 50%; pointer-events: none; }
.kenjiro-blade-meter__aura { opacity: calc(.45 + var(--kj-power) * .55); }
.kenjiro-blade-meter__aura i { inset: 4px 10px; border: 1px dashed color-mix(in srgb, var(--kj-c2) 70%, transparent); animation: kjSpin 10s linear infinite; }
.kenjiro-blade-meter__aura i:nth-child(2) { inset: 13px 19px; border-style: solid; border-color: color-mix(in srgb, var(--kj-c3) 55%, transparent); animation-direction: reverse; animation-duration: 7s; }
.kenjiro-blade-meter__aura i:nth-child(3) {
    inset: -4px 2px; border: 0;
    background: radial-gradient(circle, transparent 54%, color-mix(in srgb, var(--kj-c2) calc(var(--kj-power) * 55%), transparent) 64%, transparent 74%);
    animation: kjAuraPulse 2s ease-in-out infinite alternate;
}
/* Kitartás: acél őrgyűrű. */
.kenjiro-blade-meter__guard { position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: 0; transform: scale(.7); transition: opacity .4s, transform .5s cubic-bezier(.16,.85,.22,1); }
.kenjiro-blade-meter__guard i { position: absolute; inset: 2px 8px; border: 2px solid color-mix(in srgb, #dfe6f0 80%, var(--kj-c2)); border-radius: 50%; clip-path: polygon(0 0, 46% 0, 54% 100%, 100% 100%, 100% 0); animation: kjSpin 3s linear infinite; }
.kenjiro-blade-meter__guard i:nth-child(2) { inset: -5px 1px; border-style: dashed; border-color: var(--kj-c3); animation-duration: 5s; animation-direction: reverse; }
.kenjiro-blade-meter.is-steadfast .kenjiro-blade-meter__guard { opacity: 1; transform: scale(1); }
.kenjiro-blade-meter__katana {
    position: absolute; z-index: 3; left: 12px; top: 0; width: 76px; height: 76px; object-fit: contain;
    filter:
        drop-shadow(0 0 5px var(--kj-c2))
        drop-shadow(0 0 calc(7px + var(--kj-power) * 12px) color-mix(in srgb, var(--kj-c2) calc(35% + var(--kj-power) * 50%), transparent));
    animation: kjKatanaFloat 3.4s ease-in-out infinite;
}
.kenjiro-blade-meter[data-kj-tier="high"] .kenjiro-blade-meter__katana { animation: kjKatanaFloat 3.4s ease-in-out infinite, kjKatanaGleam 1.6s ease-in-out infinite alternate; }
.kenjiro-blade-meter__value {
    position: absolute; z-index: 6; right: 0; bottom: 0;
    display: flex; align-items: center; gap: 3px; min-width: 44px; padding: 3px 7px 3px 4px;
    border: 1px solid var(--kj-c2); border-radius: 11px;
    background: color-mix(in srgb, var(--kj-c4) 86%, var(--kj-c1));
    box-shadow: 0 0 10px color-mix(in srgb, var(--kj-c2) 60%, transparent);
}
.kenjiro-blade-meter__value img { width: 16px; height: 16px; object-fit: contain; filter: drop-shadow(0 0 4px var(--kj-c2)); }
.kenjiro-blade-meter__value b { font: 900 12px/1 Montserrat, sans-serif; }
.kenjiro-blade-meter__counter {
    position: absolute; z-index: 6; left: 2px; bottom: 2px; width: 24px; height: 24px; padding: 2px;
    border: 1px solid var(--kj-c2); border-radius: 50%;
    background: radial-gradient(circle, color-mix(in srgb, var(--kj-c2) 35%, transparent), var(--kj-c4) 75%);
    opacity: 0; transform: scale(.5); transition: opacity .3s, transform .35s cubic-bezier(.2,1.6,.4,1);
}
.kenjiro-blade-meter__counter img { display: block; width: 100%; height: 100%; object-fit: contain; }
.kenjiro-blade-meter.is-counter .kenjiro-blade-meter__counter { opacity: 1; transform: scale(1); animation: kjCounterPulse 1.1s ease-in-out infinite alternate; }
.kenjiro-blade-meter.is-gain .kenjiro-blade-meter__value { animation: kjCountPop .7s cubic-bezier(.2,1.6,.4,1); }
.kenjiro-blade-meter.is-loss .kenjiro-blade-meter__value { animation: kjLossFlash .7s ease-out; }
.kenjiro-blade-meter.is-flash .kenjiro-blade-meter__katana { animation: kjKatanaFloat 3.4s ease-in-out infinite, kjFlash .6s ease-out; }
/* Téma-motívumok a mérőn. */
.kenjiro-blade-meter[data-kj-motif="space"] .kenjiro-blade-meter__bg i.is-wind { background: linear-gradient(90deg, transparent, var(--kj-c2), var(--kj-c4), transparent); }
.kenjiro-blade-meter[data-kj-motif="vip"]::before {
    background:
        linear-gradient(115deg, transparent 35%, color-mix(in srgb, #fff 32%, transparent) 50%, transparent 65%) 0 0 / 250% 100%,
        radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--kj-c1) calc(22% + var(--kj-power) * 26%), transparent), transparent 62%),
        radial-gradient(circle, color-mix(in srgb, var(--kj-c2) 55%, transparent), color-mix(in srgb, #1b0f06 94%, #000));
    animation: kjMeterBreath 2.8s ease-in-out infinite alternate, kjShimmer 3.2s linear infinite;
}

/* ---------------------------------------
   Kártya-VFX: szél, sakura-szirmok, acélszikrák
   --------------------------------------- */
.kenjiro-card-fx {
    position: absolute; z-index: 31; pointer-events: none; transform: translate(-50%, -50%);
    overflow: hidden; border-radius: 16px; contain: paint;
    --kj-w: 200px; --kj-h: 300px; opacity: 0; transition: opacity .65s;
}
.kenjiro-card-fx.is-steadfast:not(.is-fallen) { opacity: 1; }
.kenjiro-card-fx__petals { position: absolute; inset: 0; }
.kenjiro-card-fx__petal {
    position: absolute; left: var(--p-x); top: -24px; width: 12px; height: 16px; opacity: 0;
    filter: drop-shadow(0 0 3px color-mix(in srgb, var(--kj-petal) 60%, transparent));
    animation: kjSakuraCurrent 6.8s linear infinite; animation-delay: calc(var(--p-i) * -.37s);
}
.kenjiro-card-fx__petal:nth-child(3n) { width: 16px; height: 20px; animation-duration: 8.2s; }
.kenjiro-card-fx__petal svg { width: 100%; height: 100%; overflow: visible; }
.kenjiro-card-fx__petal.is-rocket { width: 14px; height: 28px; animation-name: kjOrbitalRocket; }
.kenjiro-card-fx__petal.is-sparkle { top: var(--p-y); width: 19px; height: 19px; animation-name: kjGoldenGlitter; }
.kenjiro-card-fx__petal.is-sparkle svg path, .kj-motif.is-sparkle svg path, .kj-motif.is-star svg path { fill: var(--kj-petal); filter: drop-shadow(0 0 3px #fff); }
.kenjiro-card-fx.is-fallen { opacity: 0; }
.kenjiro-card-fx:not(.is-steadfast) *, .kenjiro-card-fx.is-fallen * { animation-play-state: paused !important; }
@keyframes kjSakuraCurrent {
    0% { opacity: 0; transform: translate(0, 0) rotate(-50deg); }
    12% { opacity: .85; }
    50% { transform: translate(-14px, calc(var(--kj-h) * .5)) rotate(100deg); }
    85% { opacity: .85; }
    100% { opacity: 0; transform: translate(10px, calc(var(--kj-h) + 44px)) rotate(250deg); }
}
@keyframes kjOrbitalRocket { 0% { opacity: 0; transform: translate(-12px, calc(var(--kj-h) + 44px)) rotate(12deg); } 20%, 75% { opacity: .85; } 100% { opacity: 0; transform: translate(12px, -40px) rotate(12deg); } }
@keyframes kjGoldenGlitter { 0%, 100% { opacity: 0; transform: scale(.2) rotate(0); } 35%, 65% { opacity: .9; transform: scale(1.1) rotate(90deg); } }

/* ---------------------------------------
   Lebegő motívumok (szirom, szél, rakéta, csillag, VIP felirat)
   --------------------------------------- */
.kj-motif { position: absolute; display: block; width: 11px; height: 11px; opacity: 0; pointer-events: none; }
.kj-motif svg { display: block; width: 100%; height: 100%; overflow: visible; }
.kj-motif.is-wind { width: 60px; height: 1.5px; border-radius: 2px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--kj-c3) 75%, #fff), transparent); }
.kj-motif.is-rocket { width: 10px; height: 20px; }
.kj-motif.is-vip-text {
    width: auto; height: auto; padding: 1px 5px; border: 1px solid color-mix(in srgb, var(--kj-c1) 70%, transparent); border-radius: 5px;
    background: linear-gradient(100deg, var(--kj-c2), var(--kj-c3), var(--kj-c1)); color: #fff8ec;
    font: 900 8px/1.2 Montserrat, sans-serif; font-style: normal; letter-spacing: .14em;
    box-shadow: 0 0 8px color-mix(in srgb, var(--kj-c4) 60%, transparent);
}

/* Téma-díszítés (tooltip / műhely háttér). */
.kj-decor { position: absolute; inset: 0; pointer-events: none; }
.kj-decor i { position: absolute; display: block; }
.kj-decor.is-sakura i {
    right: -30px; top: -30px; width: 170px; height: 170px; border-radius: 50%;
    background: radial-gradient(circle, color-mix(in srgb, var(--kj-petal) 22%, transparent), transparent 65%);
}
.kj-decor.is-sakura i:nth-child(2) { right: auto; top: auto; left: -50px; bottom: -60px; width: 200px; height: 200px; background: radial-gradient(circle, color-mix(in srgb, var(--kj-c2) 16%, transparent), transparent 65%); }
.kj-decor.is-space i {
    inset: 0;
    background:
        radial-gradient(1px 1px at 12% 22%, #fff, transparent),
        radial-gradient(1px 1px at 38% 74%, #fff, transparent),
        radial-gradient(1.5px 1.5px at 66% 18%, var(--kj-c1), transparent),
        radial-gradient(1px 1px at 84% 58%, #fff, transparent),
        radial-gradient(1.5px 1.5px at 22% 88%, var(--kj-c4), transparent),
        radial-gradient(1px 1px at 52% 44%, #fff, transparent),
        radial-gradient(1px 1px at 92% 90%, #fff, transparent);
    opacity: .6;
}
.kj-decor.is-space i:nth-child(2) {
    inset: auto -10% -40% -10%; height: 70%; opacity: .5;
    background: radial-gradient(ellipse at 50% 100%, color-mix(in srgb, var(--kj-c2) 30%, transparent), transparent 60%);
}
/* VIP fényívek. */
.kj-decor.is-vip i {
    left: 50%; top: 50%; width: 140%; aspect-ratio: 1; border-radius: 50%;
    border: 1px solid transparent; border-top-color: color-mix(in srgb, #fff 55%, var(--kj-c1)); border-right-color: color-mix(in srgb, var(--kj-c4) 45%, transparent);
    transform: translate(-50%, -50%) rotate(0deg);
    animation: kjArcSpin 9s linear infinite;
}
.kj-decor.is-vip i:nth-child(2) { width: 110%; animation-duration: 6.5s; animation-direction: reverse; border-top-color: color-mix(in srgb, var(--kj-c3) 70%, #fff); }
.kj-decor.is-vip i:nth-child(3) { width: 80%; animation-duration: 12s; border-top-color: color-mix(in srgb, var(--kj-c4) 70%, #fff); }

/* ---------------------------------------
   Prémium tooltip (full-bleed, saját körvonal)
   --------------------------------------- */
body.v3-body > .item-tooltip-floating:has(.kenjiro-blade-tooltip),
body.v3-body > .v3-floating-tooltip:has(.kenjiro-blade-tooltip) {
    width: min(440px, calc(100vw - 20px)) !important; max-width: 440px !important; max-height: none !important;
    padding: 0 !important; border: 0 !important; border-radius: 20px;
    background: transparent !important; box-shadow: none !important; overflow: visible !important;
}
.item-tooltip-floating .item-tooltip-desc:has(.kenjiro-blade-tooltip) { margin: 0 !important; color: inherit; font-size: inherit; line-height: inherit; }
.kenjiro-blade-tooltip {
    position: relative; isolation: isolate; box-sizing: border-box; display: block; width: 100%;
    padding: 17px; overflow: hidden;
    border: 2px solid var(--kj-c2); border-radius: 20px;
    outline: 1px solid color-mix(in srgb, var(--kj-petal) 45%, transparent); outline-offset: -6px;
    background:
        radial-gradient(circle at 10% 6%, color-mix(in srgb, var(--kj-c2) 22%, transparent), transparent 36%),
        radial-gradient(circle at 92% 90%, color-mix(in srgb, var(--kj-c5) 40%, transparent), transparent 48%),
        linear-gradient(150deg, color-mix(in srgb, var(--kj-c1) 60%, #04060c), #03040a 55%, color-mix(in srgb, var(--kj-c4) 80%, var(--kj-c5)));
    box-shadow: 0 24px 70px #000e, 0 0 26px color-mix(in srgb, var(--kj-c2) 40%, transparent), inset 0 0 48px #0008;
    color: #fff; font-family: Outfit, sans-serif; text-align: left;
}
.kenjiro-blade-tooltip[data-kj-motif="space"] {
    background:
        radial-gradient(circle at 10% 6%, color-mix(in srgb, var(--kj-c1) 26%, transparent), transparent 36%),
        radial-gradient(circle at 92% 90%, color-mix(in srgb, var(--kj-c2) 30%, transparent), transparent 48%),
        linear-gradient(150deg, #06121c, #04070d 55%, #1c0a04);
}
.kenjiro-blade-tooltip[data-kj-motif="vip"] {
    background:
        radial-gradient(circle at 10% 6%, color-mix(in srgb, var(--kj-c1) 26%, transparent), transparent 36%),
        radial-gradient(circle at 92% 90%, color-mix(in srgb, var(--kj-c4) 26%, transparent), transparent 48%),
        linear-gradient(150deg, #1d1208, #0c0704 55%, #1a0d18);
}
.kenjiro-blade-tooltip.is-steadfast { border-color: color-mix(in srgb, #dfe6f0 70%, var(--kj-c2)); }
.kenjiro-blade-tooltip > * { position: relative; z-index: 2; }
.kenjiro-blade-tooltip > .kenjiro-blade-tooltip__vfx { position: absolute; z-index: 0; inset: 0; pointer-events: none; overflow: hidden; }
.kenjiro-blade-tooltip__vfx .kj-motif { top: -6%; left: calc(3% + var(--m-i) * 9.6%); animation: kjMotifFall 8s linear infinite; animation-delay: calc(var(--m-i) * -.83s); }
.kenjiro-blade-tooltip__vfx .kj-motif.is-wind { top: calc(10% + var(--m-i) * 8%); left: -30%; animation: kjMotifWind 4.5s ease-in infinite; animation-delay: calc(var(--m-i) * -.6s); }
.kenjiro-blade-tooltip__vfx .kj-motif.is-rocket, .kenjiro-blade-tooltip__vfx .kj-motif.is-vip-text { top: 104%; animation: kjMotifRise 9s linear infinite; animation-delay: calc(var(--m-i) * -1s); }
.kenjiro-blade-tooltip__vfx em {
    position: absolute; inset: 0;
    background: linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--kj-c2) 12%, transparent) 49%, transparent 68%);
    animation: kjScan 6.5s linear infinite;
}
.kenjiro-blade-tooltip header {
    display: flex; align-items: center; gap: 12px; margin-bottom: 11px; padding-bottom: 11px;
    border-bottom: 1px solid color-mix(in srgb, var(--kj-c2) 30%, transparent);
}
.kenjiro-blade-tooltip__crest, .kenjiro-workshop__crest { position: relative; flex: 0 0 64px; width: 64px; height: 60px; }
.kenjiro-blade-tooltip__crest img, .kenjiro-workshop__crest img {
    position: absolute; left: 50%; top: 50%; width: 54px; height: 54px; object-fit: contain;
    transform: translate(-50%, -50%);
    filter: drop-shadow(0 0 4px #fff7) drop-shadow(0 0 11px var(--kj-c2));
    animation: kjKatanaFloat 3.4s ease-in-out infinite;
}
.kenjiro-blade-tooltip__crest i, .kenjiro-workshop__crest i {
    position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px;
    animation: kjCrestOrbit 4.2s linear infinite;
    animation-delay: calc(var(--o-i) * -1.4s);
}
.kenjiro-blade-tooltip header > div { display: grid; flex: 1; gap: 2px; min-width: 0; }
.kenjiro-blade-tooltip header small { color: var(--kj-c2); font: 800 9px/1 Montserrat, sans-serif; letter-spacing: .16em; }
.kenjiro-blade-tooltip header strong { font: 900 21px/1.1 Montserrat, sans-serif; text-shadow: 0 0 15px var(--kj-c2); }
.kenjiro-blade-tooltip header em { color: color-mix(in srgb, var(--kj-petal) 60%, #fff); font: 600 10px/1.25 Outfit, sans-serif; font-style: normal; letter-spacing: .04em; }
.kenjiro-blade-tooltip[data-kj-motif="vip"] header strong {
    background: linear-gradient(90deg, #fff4e0, var(--kj-c1), var(--kj-c3), var(--kj-c4), #fff4e0) 0 0 / 200% 100%;
    -webkit-background-clip: text; background-clip: text; color: transparent;
    animation: kjShimmer 3s linear infinite;
}
.kenjiro-blade-tooltip header > b { display: grid; justify-items: center; gap: 2px; padding: 5px 9px; border: 1px solid color-mix(in srgb, var(--kj-c2) 50%, transparent); border-radius: 11px; background: #0006; }
.kenjiro-blade-tooltip header > b span { color: #fff; font: 900 22px/1 Montserrat, sans-serif; text-shadow: 0 0 10px var(--kj-c2); }
.kenjiro-blade-tooltip header > b small { color: #fff; font: 800 7px/1 Montserrat, sans-serif; letter-spacing: .08em; }
/* Sebesség -> Halálosság -> Ignore folyamat. */
.kenjiro-blade-tooltip__flow { display: grid; grid-template-columns: 1fr 18px 1.25fr 18px 1fr; align-items: center; gap: 3px; margin-bottom: 7px; }
.kenjiro-blade-tooltip__flow span { display: grid; justify-items: center; gap: 2px; padding: 7px 4px; border: 1px solid color-mix(in srgb, var(--kj-c3) 35%, transparent); border-radius: 10px; background: #0006; text-align: center; }
.kenjiro-blade-tooltip__flow span small { color: color-mix(in srgb, var(--kj-c3) 70%, #fff); font: 800 8px/1 Montserrat, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.kenjiro-blade-tooltip__flow span b { font: 900 17px/1 Montserrat, sans-serif; text-shadow: 0 0 8px var(--kj-c2); }
.kenjiro-blade-tooltip__flow span em { color: var(--kj-petal); font: 700 8.5px/1.1 Outfit, sans-serif; font-style: normal; }
.kenjiro-blade-tooltip__flow span.is-ignore { border-color: var(--kj-c2); background: color-mix(in srgb, var(--kj-c1) 30%, #0007); }
.kenjiro-blade-tooltip__flow > i { display: block; height: 2px; position: relative; background: linear-gradient(90deg, var(--kj-c3), var(--kj-c2)); }
.kenjiro-blade-tooltip__flow > i::after { content: ""; position: absolute; right: -1px; top: -4px; border: 5px solid transparent; border-left-color: var(--kj-c2); border-right: 0; }
.kenjiro-blade-tooltip__next { margin: 0 0 9px; color: color-mix(in srgb, var(--kj-c3) 55%, #fff); font: 500 10px/1.35 Outfit, sans-serif; }
.kenjiro-blade-tooltip__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.kenjiro-blade-tooltip__grid > span {
    display: grid; grid-template-columns: 30px 1fr; grid-template-rows: auto auto; align-items: center; gap: 2px 7px;
    padding: 7px; border: 1px solid color-mix(in srgb, var(--kj-c3) 28%, transparent); border-radius: 9px;
    background: #0006; opacity: .72;
}
.kenjiro-blade-tooltip__grid > span.is-on { opacity: 1; border-color: color-mix(in srgb, var(--kj-c2) 60%, transparent); background: color-mix(in srgb, var(--kj-c1) 22%, #0007); }
.kenjiro-blade-tooltip__grid > span.is-ready { animation: kjStatusGlow 1.2s ease-in-out infinite alternate; }
.kenjiro-blade-tooltip__grid img { grid-row: 1 / 3; width: 30px; height: 30px; object-fit: contain; filter: drop-shadow(0 0 5px var(--kj-c2)); }
.kenjiro-blade-tooltip__grid b { font: 800 9.5px/1.1 Montserrat, sans-serif; letter-spacing: .04em; color: var(--kj-c2); }
.kenjiro-blade-tooltip__grid small { color: color-mix(in srgb, var(--kj-c3) 50%, #fff); font: 500 9px/1.25 Outfit, sans-serif; }
.kenjiro-blade-tooltip__hint { display: block; margin-top: 9px; color: var(--kj-c2); font: 700 8px/1.3 Montserrat, sans-serif; text-align: center; letter-spacing: .06em; }

/* ---------------------------------------
   Penge-dódzsó (dialog)
   --------------------------------------- */
#kenjiro-blade-workshop {
    position: fixed; width: min(1180px, 95vw); max-width: 95vw; max-height: 92vh; padding: 0; overflow: hidden;
    border: 1px solid var(--kj-c2); border-radius: 22px;
    background:
        radial-gradient(circle at 12% 0, color-mix(in srgb, var(--kj-c2) 16%, transparent), transparent 34%),
        radial-gradient(circle at 90% 100%, color-mix(in srgb, var(--kj-c5) 34%, transparent), transparent 45%),
        linear-gradient(145deg, color-mix(in srgb, var(--kj-c1) 45%, #03050b), #020309 60%, color-mix(in srgb, var(--kj-c4) 70%, var(--kj-c5)));
    box-shadow: 0 30px 100px #000f, 0 0 45px color-mix(in srgb, var(--kj-c2) 34%, transparent);
    color: #fff;
}
#kenjiro-blade-workshop[data-kj-motif="space"] { background: radial-gradient(circle at 12% 0, color-mix(in srgb, var(--kj-c1) 18%, transparent), transparent 34%), radial-gradient(circle at 90% 100%, color-mix(in srgb, var(--kj-c2) 22%, transparent), transparent 45%), linear-gradient(145deg, #06121c, #03060b 60%, #1c0a04); }
#kenjiro-blade-workshop[data-kj-motif="vip"] { background: radial-gradient(circle at 12% 0, color-mix(in srgb, var(--kj-c1) 20%, transparent), transparent 34%), radial-gradient(circle at 90% 100%, color-mix(in srgb, var(--kj-c4) 20%, transparent), transparent 45%), linear-gradient(145deg, #1d1208, #0b0604 60%, #1a0d18); }
#kenjiro-blade-workshop::backdrop { background: rgba(2, 3, 9, .86); backdrop-filter: blur(8px); }
.kenjiro-workshop__vfx { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.kenjiro-workshop__vfx .kj-motif { top: -24px; left: calc(2% + var(--m-i) * 5.4%); animation: kjWorkshopFall 13s linear infinite; animation-delay: calc(var(--m-i) * -.8s); }
.kenjiro-workshop__vfx .kj-motif.is-wind { top: calc(8% + var(--m-i) * 5%); left: -10%; width: 140px; animation: kjMotifWind 6s ease-in infinite; animation-delay: calc(var(--m-i) * -.7s); }
.kenjiro-workshop__vfx .kj-motif.is-rocket, .kenjiro-workshop__vfx .kj-motif.is-vip-text { top: auto; bottom: -24px; animation: kjWorkshopRise 14s linear infinite; animation-delay: calc(var(--m-i) * -.9s); }
#kenjiro-blade-workshop > header, .kenjiro-workshop__content { position: relative; z-index: 1; }
#kenjiro-blade-workshop > header { display: flex; align-items: center; gap: 14px; padding: 16px 25px 12px; border-bottom: 1px solid color-mix(in srgb, var(--kj-c2) 28%, transparent); }
.kenjiro-workshop__title { flex: 1; }
.kenjiro-workshop__title small { color: var(--kj-c2); font: 800 9px/1 Montserrat, sans-serif; letter-spacing: .2em; }
.kenjiro-workshop__title h2 { margin: 5px 0 0; font: 900 25px/1 Montserrat, sans-serif; text-shadow: 0 0 16px var(--kj-c2); }
#kenjiro-blade-workshop > header button { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--kj-c2); border-radius: 50%; background: #0007; color: #fff; font-size: 22px; cursor: pointer; }
.kenjiro-workshop__content { display: grid; grid-template-columns: minmax(380px, .95fr) minmax(460px, 1.05fr); gap: 15px; max-height: calc(92vh - 86px); padding: 18px 22px 24px; overflow: auto; }
.kenjiro-workshop__content h3 { margin: 14px 0 0; color: var(--kj-c2); font: 900 11px/1.2 Montserrat, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.kenjiro-workshop__abilities > h3:first-child { margin-top: 0; }
.kenjiro-workshop__overview .kenjiro-blade-tooltip { box-shadow: 0 0 18px color-mix(in srgb, var(--kj-c2) 30%, transparent), inset 0 0 40px #0008; }
.kenjiro-workshop__overview .kenjiro-blade-tooltip__hint { display: none; }
.kenjiro-workshop__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 10px; }
.kenjiro-workshop__stats span { display: grid; justify-items: center; gap: 3px; padding: 8px 5px; border: 1px solid color-mix(in srgb, var(--kj-c2) 22%, transparent); border-radius: 10px; background: #0006; text-align: center; }
.kenjiro-workshop__stats b { font: 900 16px/1 Montserrat, sans-serif; text-shadow: 0 0 8px var(--kj-c2); }
.kenjiro-workshop__stats small { color: color-mix(in srgb, var(--kj-c3) 50%, #fff); font: 600 8.5px/1.2 Outfit, sans-serif; }
.kenjiro-workshop__summary, .kenjiro-workshop__example { margin: 8px 0 0; color: color-mix(in srgb, var(--kj-c3) 45%, #fff); font: 500 10.5px/1.4 Outfit, sans-serif; }
.kenjiro-workshop__example { padding: 6px 9px; border: 1px dashed color-mix(in srgb, var(--kj-petal) 40%, transparent); border-radius: 9px; }
.kenjiro-workshop__rules, .kenjiro-workshop__basic ul { display: grid; gap: 5px; margin: 8px 0 0; padding: 0; list-style: none; }
.kenjiro-workshop__rules li, .kenjiro-workshop__basic li { padding: 6px 9px; border-left: 2px solid var(--kj-c2); border-radius: 0 8px 8px 0; background: #0005; color: color-mix(in srgb, var(--kj-c3) 40%, #fff); font: 500 10px/1.35 Outfit, sans-serif; }
.kenjiro-workshop__rules b, .kenjiro-workshop__basic li b { color: #fff; }
/* Küszöb-lépcsők. */
.kenjiro-workshop__ladder { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 6px; margin-top: 8px; }
.kenjiro-workshop__ladder span { display: grid; gap: 2px; padding: 8px 9px; border: 1px solid color-mix(in srgb, var(--kj-c3) 22%, transparent); border-radius: 10px; background: #0005; opacity: .6; }
.kenjiro-workshop__ladder span.is-reached { opacity: .88; border-color: color-mix(in srgb, var(--kj-c2) 40%, transparent); }
.kenjiro-workshop__ladder span.is-current { opacity: 1; border-color: var(--kj-c2); background: color-mix(in srgb, var(--kj-c1) 28%, #0006); box-shadow: 0 0 12px color-mix(in srgb, var(--kj-c2) 35%, transparent); }
.kenjiro-workshop__ladder b { font: 900 16px/1 Montserrat, sans-serif; }
.kenjiro-workshop__ladder small { color: var(--kj-c2); font: 800 8px/1.1 Montserrat, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.kenjiro-workshop__ladder em { color: color-mix(in srgb, var(--kj-c3) 45%, #fff); font: 600 9.5px/1.25 Outfit, sans-serif; font-style: normal; }
.kenjiro-workshop__point { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-top: 8px; }
.kenjiro-workshop__point span { display: grid; gap: 3px; padding: 9px 10px; border: 1px solid var(--kj-c2); border-radius: 11px; background: color-mix(in srgb, var(--kj-c5) 30%, #0006); }
.kenjiro-workshop__point b { font: 900 20px/1 Montserrat, sans-serif; text-shadow: 0 0 10px var(--kj-c2); }
.kenjiro-workshop__point small { color: color-mix(in srgb, var(--kj-c3) 45%, #fff); font: 500 9.5px/1.3 Outfit, sans-serif; }
.kenjiro-workshop__gallery { display: grid; gap: 6px; margin-top: 9px; }
.kenjiro-workshop__abilities { display: grid; align-content: start; gap: 9px; }
.kenjiro-workshop__abilities article { display: grid; grid-template-columns: 68px 1fr; align-items: start; gap: 11px; padding: 11px; border: 1px solid color-mix(in srgb, var(--kj-c2) 22%, transparent); border-radius: 13px; background: #ffffff07; }
.kenjiro-workshop__abilities article > img { width: 66px; height: 66px; object-fit: cover; border: 1px solid var(--kj-c2); border-radius: 11px; box-shadow: 0 0 13px color-mix(in srgb, var(--kj-c2) 40%, transparent); }
.kenjiro-workshop__gallery article { grid-template-columns: 52px 1fr !important; align-items: center !important; padding: 8px 10px !important; background: #0005 !important; opacity: .7; }
.kenjiro-workshop__gallery article.is-current { opacity: 1; border-color: var(--kj-c2); box-shadow: inset 0 0 16px color-mix(in srgb, var(--kj-c1) 30%, transparent), 0 0 12px color-mix(in srgb, var(--kj-c2) 30%, transparent); animation: kjStatusGlow 1.4s ease-in-out infinite alternate; }
.kenjiro-workshop__gallery article > img { width: 48px !important; height: 48px !important; object-fit: contain !important; border: 0 !important; box-shadow: none !important; filter: drop-shadow(0 0 6px var(--kj-c2)); }
.kenjiro-workshop__gallery small, .kenjiro-workshop__basic small { color: var(--kj-c2); font: 800 8px/1 Montserrat, sans-serif; letter-spacing: .12em; }
.kenjiro-workshop__gallery strong, .kenjiro-workshop__basic strong { display: block; margin-top: 2px; font: 900 14px/1.1 Montserrat, sans-serif; }
.kenjiro-workshop__gallery p, .kenjiro-workshop__basic p { margin: 3px 0 0; color: color-mix(in srgb, var(--kj-c3) 45%, #fff); font: 500 9.5px/1.35 Outfit, sans-serif; }
.kenjiro-workshop__basic > img { object-fit: contain !important; background: radial-gradient(circle, color-mix(in srgb, var(--kj-c2) 30%, transparent), #0008 70%); }
.kenjiro-workshop__abilities .ability-progression { margin-top: 7px; }

/* ---------------------------------------
   Kulcsszó-ikonok (csak Kenjiro szövegeiben)
   --------------------------------------- */
.ability-inline-icon.is-kenjiro-keyword {
    width: 1.45em; height: 1.45em; margin: -.3em .14em -.28em 0; object-fit: contain;
    filter: drop-shadow(0 0 3px #76B2FFaa);
}
.ability-inline-icon.is-kenjiro-keyword[data-kenjiro-keyword~="katana"] { width: 1.6em; height: 1.6em; filter: drop-shadow(0 0 2px #fff9) drop-shadow(0 0 4px #76B2FFcc); }
.ability-inline-icon.is-kenjiro-keyword[data-kenjiro-keyword~="counter"] { filter: drop-shadow(0 0 3px #dfe6f0cc); }
.ability-inline-icon.is-kenjiro-keyword[data-kenjiro-keyword~="lightning"] { filter: drop-shadow(0 0 3px #9fd2ffdd) drop-shadow(0 0 5px #76B2FF99); }
.ability-inline-icon.is-kenjiro-keyword[data-kenjiro-keyword~="scent"] { filter: drop-shadow(0 0 3px #c0102bcc); }
.kenjiro-blade-tooltip .ability-inline-icon.is-kenjiro-keyword { width: 1.5em; height: 1.5em; }

/* Részletező leírás-lista: Sebesség- / Halálosság-küszöbök. Elért lépcső
   világosabb címkével, az aktuális kiemelve. */
.ability-progression.is-kenjiro-details .ability-progression-step { grid-template-columns: 132px minmax(0, 1fr); }
.ability-progression.is-kenjiro-details .ability-progression-step.is-wide-label { grid-template-columns: minmax(0, 1fr); gap: 5px; }
.ability-progression.is-kenjiro-details .ability-progression-step.is-wide-label .ability-progression-label { padding-bottom: 5px; border-bottom: 1px solid rgba(118, 178, 255, .3); }
.ability-progression.is-kenjiro-details .ability-progression-step.is-reached .ability-progression-label { color: #dbe9ff; }
.ability-progression.is-kenjiro-details .ability-progression-step.is-current {
    background: linear-gradient(100deg, rgba(26, 60, 101, .5), rgba(0, 0, 0, .42) 62%, rgba(242, 185, 208, .12));
    border-color: rgba(118, 178, 255, .65);
    box-shadow: inset 0 0 14px rgba(26, 60, 101, .45), 0 0 10px rgba(118, 178, 255, .26);
}
.ability-progression.is-kenjiro-details .ability-progression-step.is-current .ability-progression-label { color: #f4f8ff; text-shadow: 0 0 8px rgba(118, 178, 255, .85); }
body.v3-body > .ability-tooltip-floating .ability-progression.is-kenjiro-details .ability-progression-step {
    grid-template-columns: minmax(0, 1fr); gap: 5px; padding: 8px 10px 9px; border-radius: 10px;
}

/* ---------------------------------------
   Harci napló: Pengefölény chip
   --------------------------------------- */
.v3-log-stat-kenjiro {
    border-color: #76B2FF99 !important;
    background: linear-gradient(135deg, #1A3C6555, #020007e6) !important;
    color: #eaf2ff !important;
    box-shadow: 0 0 8px #76B2FF55;
}

/* ---------------------------------------
   Harci VFX (canvas, szöveg nélkül)
   --------------------------------------- */
.kenjiro-ability-vfx { position: fixed; inset: 0; z-index: 10040; pointer-events: none; overflow: hidden; contain: layout style; isolation: isolate; }
.kenjiro-ability-vfx canvas { position: absolute; inset: 0; z-index: 4; display: block; width: 100%; height: 100%; }
.kenjiro-card-double { position: absolute; z-index: 2; pointer-events: none; transform-origin: 50% 50%; will-change: transform, opacity; }
.kenjiro-ability-vfx canvas.kenjiro-atmosphere { z-index: 1; }
.kenjiro-card-double.is-attacker { z-index: 3; }
.kenjiro-card-double * { pointer-events: none !important; }
.kenjiro-cinematic-katana { position: absolute; z-index: 4; left: 62%; top: 38%; object-fit: contain; transform-origin: 50% 65%; }

/* ---------------------------------------
   Animációk
   --------------------------------------- */
@keyframes kjSpin { to { transform: rotate(360deg); } }
@keyframes kjMeterBreath { from { filter: brightness(.92); } to { filter: brightness(1.15); } }
@keyframes kjAuraPulse { from { opacity: .55; transform: scale(.96); } to { opacity: 1; transform: scale(1.04); } }
@keyframes kjAuraBreath { from { opacity: .75; } to { opacity: 1; } }
@keyframes kjKatanaFloat { 0%, 100% { translate: 0 0; rotate: -4deg; } 50% { translate: 0 -3px; rotate: 3deg; } }
@keyframes kjKatanaGleam { from { filter: drop-shadow(0 0 5px var(--kj-c2)) drop-shadow(0 0 12px var(--kj-c2)); } to { filter: brightness(1.25) drop-shadow(0 0 6px #fff) drop-shadow(0 0 20px var(--kj-c2)); } }
@keyframes kjFlash { 0% { filter: brightness(2.4) drop-shadow(0 0 16px #fff); } 100% { filter: drop-shadow(0 0 5px var(--kj-c2)); } }
@keyframes kjCountPop { 0% { transform: scale(1); } 40% { transform: scale(1.3); box-shadow: 0 0 16px var(--kj-c2); } 100% { transform: scale(1); } }
@keyframes kjLossFlash { 0% { filter: grayscale(.8) brightness(.7); } 100% { filter: none; } }
@keyframes kjCounterPulse { from { box-shadow: 0 0 4px var(--kj-c2); } to { box-shadow: 0 0 12px var(--kj-c2), 0 0 20px color-mix(in srgb, var(--kj-c2) 50%, transparent); } }
@keyframes kjPetalFall {
    0% { opacity: 0; transform: translate(0, 0) rotate(0deg); }
    12% { opacity: .95; }
    100% { opacity: 0; transform: translate(-22px, 92px) rotate(260deg); }
}
@keyframes kjWindPass { 0% { opacity: 0; transform: translateX(0); } 20% { opacity: .9; } 100% { opacity: 0; transform: translateX(260%); } }
@keyframes kjShimmer { from { background-position: 0 0; } to { background-position: 250% 0; } }
@keyframes kjFlame { from { transform: scaleY(.8); } to { transform: scaleY(1.25); } }
@keyframes kjCardWind { 0% { opacity: 0; transform: translateX(-60%); } 25% { opacity: .8; } 100% { opacity: 0; transform: translateX(calc(var(--kj-w) * 1.05)); } }
@keyframes kjCardPetal {
    0% { opacity: 0; transform: translate(0, 0) rotate(0deg); }
    8% { opacity: .9; }
    50% { transform: translate(-18px, calc(var(--kj-h) * .5)) rotate(180deg); }
    92% { opacity: .8; }
    100% { opacity: 0; transform: translate(10px, var(--kj-h)) rotate(360deg); }
}
@keyframes kjCardRocket {
    0% { opacity: 0; transform: translate(0, var(--kj-h)); }
    10% { opacity: .9; }
    90% { opacity: .9; }
    100% { opacity: 0; transform: translate(14px, 0); }
}
@keyframes kjSparkleDrift {
    0%, 100% { opacity: 0; transform: translate(0, calc(var(--kj-h) * .2)) scale(.4) rotate(0deg); }
    30%, 60% { opacity: 1; transform: translate(6px, calc(var(--kj-h) * .5)) scale(1) rotate(90deg); }
}
@keyframes kjSteelX {
    0% { transform: translate(6px, 6px); }
    25% { transform: translate(calc(var(--kj-w) - 6px), 6px); }
    50% { transform: translate(calc(var(--kj-w) - 6px), calc(var(--kj-h) - 6px)); }
    75% { transform: translate(6px, calc(var(--kj-h) - 6px)); }
    100% { transform: translate(6px, 6px); }
}
@keyframes kjCrestOrbit { 0% { transform: rotate(0deg) translateX(30px) rotate(0deg); } 100% { transform: rotate(360deg) translateX(30px) rotate(-200deg); } }
@keyframes kjMotifFall {
    0% { opacity: 0; transform: translate(0, 0) rotate(0); }
    10% { opacity: .8; }
    100% { opacity: 0; transform: translate(-30px, 460px) rotate(300deg); }
}
@keyframes kjMotifWind { 0% { opacity: 0; transform: translateX(0); } 20% { opacity: .75; } 100% { opacity: 0; transform: translateX(700px); } }
@keyframes kjMotifRise {
    0% { opacity: 0; transform: translate(0, 0); }
    12% { opacity: .8; }
    100% { opacity: 0; transform: translate(10px, -520px); }
}
@keyframes kjScan { from { transform: translateX(-130%); } to { transform: translateX(130%); } }
@keyframes kjStatusGlow { to { box-shadow: 0 0 18px color-mix(in srgb, var(--kj-c2) 55%, transparent); } }
@keyframes kjArcSpin { to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes kjWorkshopFall { 0% { opacity: 0; transform: translate(0, 0) rotate(0); } 8% { opacity: .7; } 100% { opacity: 0; transform: translate(-60px, 95vh) rotate(420deg); } }
@keyframes kjWorkshopRise { 0% { opacity: 0; transform: translate(0, 0); } 10% { opacity: .7; } 100% { opacity: 0; transform: translate(40px, -95vh); } }

/* Rend: black lunar disc, red cloud bands, silver chains and sealed talismans. */
.kenjiro-blade-tooltip[data-kj-motif="rend"],
#kenjiro-blade-workshop[data-kj-motif="rend"] {
    background: radial-gradient(ellipse at 85% 8%, #4f000899, transparent 48%), linear-gradient(145deg, #1C1315, #090709 58%, #2D0000);
    border-color: #B41D26;
    box-shadow: 0 24px 70px #000e, 0 0 28px #4f0008b3, inset 0 0 45px #0009;
}
.kj-rend-seal { display: block; width: 100%; height: 100%; filter: drop-shadow(0 0 3px #B41D26); }
.kj-motif.is-rend-seal { width: 15px; height: 25px; }
.kenjiro-card-fx__petal.is-rend-seal { width: 16px; height: 27px; animation-duration: 9s; }
.kenjiro-blade-meter[data-kj-motif="rend"] .kenjiro-blade-meter__bg i.is-petal { width: 8px; height: 14px; }
.kenjiro-blade-meter[data-kj-motif="rend"]::before {
    border-color: #B41D26;
    background: radial-gradient(circle, #100b0f 48%, #B41D26 52%, #4F0008 58%, #1C1315 69%);
}
.kenjiro-blade-meter[data-kj-motif="rend"] .kenjiro-blade-meter__aura i:first-child {
    border-color: #B1695E; border-style: dashed; border-width: 2px;
}
.kenjiro-blade-meter[data-kj-motif="rend"] .kenjiro-blade-meter__bg i.is-wind {
    height: 10px; filter: blur(3px); background: linear-gradient(90deg, transparent, #B41D26, #2D0000, transparent);
}
.kj-decor.is-rend i:first-child {
    width: 110px; height: 110px; right: 16px; top: 14px; border-radius: 50%;
    background: #100b0f; border: 3px solid #B41D26;
    box-shadow: 0 0 24px #B41D26, inset 0 0 15px #4F0008;
    opacity: .55; animation: kjRendEclipse 5s ease-in-out infinite alternate;
}
.kj-decor.is-rend i:nth-child(2) {
    inset: 0; background: radial-gradient(ellipse at 75% 20%, #4f000899 0, transparent 45%), radial-gradient(ellipse at 25% 70%, #b41d2638, transparent 48%);
    animation: kjRendCloud 11s ease-in-out infinite alternate;
}
.kj-decor.is-rend i:nth-child(3) {
    inset: 14px 8px; border-left: 3px dashed #b1695e55; border-right: 3px dashed #b1695e55;
    transform: rotate(-6deg);
}
.kenjiro-card-fx[data-kj-motif="rend"]::before {
    content: ""; position: absolute; inset: 0;
    background: radial-gradient(ellipse at 50% 110%, #4f000888, transparent 58%);
    border: 1px solid #b41d2644; border-radius: inherit;
}
@keyframes kjRendEclipse { to { box-shadow: 0 0 34px #B41D26, inset 0 0 25px #4F0008; opacity: .75; } }
@keyframes kjRendCloud { to { transform: translate(12px, 9px); opacity: .55; } }

@media (max-width: 900px) {
    .kenjiro-workshop__content { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
    .kenjiro-blade-tooltip__grid, .kenjiro-workshop__point { grid-template-columns: 1fr; }
    .kenjiro-workshop__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .kenjiro-blade-tooltip__flow { grid-template-columns: 1fr; }
    .kenjiro-blade-tooltip__flow > i { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .kenjiro-blade-meter, .kenjiro-blade-meter *, .kenjiro-blade-meter::before,
    .kenjiro-card-fx, .kenjiro-card-fx *,
    .kenjiro-blade-tooltip *, #kenjiro-blade-workshop * { animation: none !important; transition: none !important; }
    .kenjiro-blade-meter__bg, .kenjiro-card-fx__petals, .kenjiro-card-fx__wind, .kenjiro-ability-vfx { display: none; }
}
body.v3-vfx-disabled .kenjiro-card-fx, body.v3-vfx-disabled .kenjiro-ability-vfx { display: none; }
body.v3-vfx-disabled .kenjiro-blade-meter * { animation: none !important; }
body.v3-vfx-disabled .kenjiro-blade-meter__bg { display: none; }
