/* ============================================================
   CATTHEQUEST V2 : THE ARTIFICIAL LOOP  Fallback stylesheet
   Identical copy of the style block embedded in page-accueil.html.
   Paste into the CTFLab Custom CSS field ONLY if the platform
   strips style tags from injected page HTML.
   ============================================================ */
/* ================= ROOT & TOKENS ================= */
.kq-lp {
    --bg: #050705;
    --g: #3ee07f;
    --g2: #16a34a;
    --p: #ff2d95;
    --y: #ffd166;
    --w: #ffffff;
    --sage: #8fa898;
    --dim: #5f7a6a;
    --ink: #000000;
    max-width: none;
    margin-left: calc(50% - 50vw + 4px);
    margin-right: calc(50% - 50vw + 4px);
    /* swallow the CTFLab page container's own vertical padding; tune like the 4px above */
    margin-top: -3rem;
    margin-bottom: -3rem;
    padding: 2rem clamp(1.2rem, 4vw, 4.5rem) 4rem;
    color: #e9f5ec;
    /* green up top, degrading to pure black at the bottom of the loop */
    background-color: #020402;
    background-image:
        radial-gradient(120% 62% at 50% -6%, rgba(62, 224, 127, .16) 0%, rgba(22, 163, 74, .06) 32%, transparent 58%),
        linear-gradient(180deg,
            #0a2417 0%,
            #08190f 16%,
            #061109 38%,
            #040b06 60%,
            #020402 82%,
            #000000 100%);
    font-family: Consolas, 'JetBrains Mono', 'Courier New', monospace;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
}

.kq-lp *,
.kq-lp *::before,
.kq-lp *::after {
    box-sizing: border-box
}

.kq-lp a {
    text-decoration: none
}

.kq-lp pre {
    margin: 0;
    font-family: inherit
}

.kq-lp i,
.kq-lp em {
    font-style: normal
}

/* CRT scanlines: animated sweep + dark vignette on the edges */
.kq-lp::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 6;
    background: repeating-linear-gradient(0deg, rgba(0, 0, 0, .15) 0 1px, transparent 1px 3px),
        radial-gradient(circle, transparent 55%, rgba(0, 0, 0, .5) 130%);
    opacity: .5
}

/* the page darkens as you descend */
.kq-lp::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background: linear-gradient(180deg, transparent 0 26%, rgba(0, 0, 0, .28) 55%, rgba(26, 4, 16, .5) 100%)
}

.kq-lp>* {
    position: relative;
    z-index: 2
}

/* ================= PRIMITIVES ================= */
.kq-panel {
    border: 2px solid var(--g);
    background: rgba(7, 11, 8, .72);
    position: relative
}

.kq-panel--p {
    border-color: var(--p);
    background: rgba(12, 6, 10, .72)
}

.kq-panel--y {
    border-color: var(--y);
    background: rgba(11, 10, 6, .72)
}

.kq-cut {
    clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px))
}

.kq-cut2 {
    clip-path: polygon(20px 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 20px)
}

.kq-shadow {
    filter: drop-shadow(6px 6px 0 rgba(0, 0, 0, .95))
}

.kq-tag {
    display: inline-block;
    font-size: .58rem;
    letter-spacing: .16em;
    padding: .2rem .6rem;
    border: 2px solid currentColor;
    font-weight: 800
}

.kq-lbl {
    font-size: .62rem;
    letter-spacing: .26em;
    color: var(--dim);
    text-transform: uppercase
}

.kq-band {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 2.4rem 0 1.2rem
}

.kq-band i {
    flex: 1;
    height: 0;
    border-top: 2px dashed rgba(62, 224, 127, .4)
}

.kq-band i:last-child {
    border-top-color: rgba(255, 45, 149, .4)
}

.kq-band b {
    font-size: .68rem;
    letter-spacing: .3em;
    color: var(--w);
    font-weight: 800;
    white-space: nowrap
}

.kq-whisper {
    text-align: center;
    font-size: .6rem;
    letter-spacing: .3em;
    color: rgba(143, 168, 152, .28);
    margin: -0.6rem 0 0
}

/* ================= META HEADER (cheerful) ================= */
.kq-meta {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    font-size: .62rem;
    letter-spacing: .2em;
    color: var(--dim);
    margin-bottom: .9rem
}

.kq-meta b {
    color: var(--g);
    font-weight: 800
}

.kq-meta .kq-online {
    color: var(--g);
    font-weight: 800
}

.kq-meta .kq-online i {
    display: inline-block;
    width: 8px;
    height: 8px;
    background: var(--g);
    margin-right: .35rem;
    box-shadow: 2px 2px 0 var(--ink)
}

.kq-meta del {
    color: var(--p);
    text-decoration-thickness: 2px
}

/* ================= MARQUEES ================= */
.kq-alert {
    overflow: hidden;
    border: 2px solid var(--g);
    background: #07110b;
    margin: 2.4rem 0 0;
    box-shadow: 4px 4px 0 var(--ink)
}

.kq-marquee {
    white-space: nowrap;
    display: inline-block;
    padding: .45rem 0;
    font-size: .68rem;
    letter-spacing: .28em;
    color: var(--g);
    font-weight: 800
}

.kq-alert--p {
    border-color: var(--p);
    background: #0c060a;
    margin: 3rem 0 0
}

.kq-alert--p .kq-marquee {
    color: var(--p)
}

/* ================= HERO (STAGE 1 : VS BANNER) ================= */
.kq-heroX {
    padding: clamp(.8rem, 2vw, 1.6rem) 0 1.2rem
}

/* crowning wrestling title */
.kq-crownttl {
    text-align: center;
    margin-bottom: .4rem
}

.kq-crownttl-kick {
    font-size: .7rem;
    letter-spacing: .52em;
    color: var(--sage);
    margin-bottom: .55rem;
    text-transform: uppercase
}

.kq-cq {
    margin: 0;
    display: inline-block;
    font-size: clamp(2rem, 6vw, 4rem);
    line-height: 1;
    font-weight: 800;
    letter-spacing: .06em;
    color: var(--w);
    transform: rotate(-1.5deg);
    text-shadow: 3px 3px 0 var(--p), 6px 6px 0 var(--g2), 9px 9px 0 var(--ink)
}

.kq-crownttl-sub {
    margin-top: .8rem;
    font-size: clamp(.82rem, 1.8vw, 1.1rem);
    font-weight: 800;
    letter-spacing: .44em;
    color: var(--y);
    text-transform: uppercase;
    text-shadow: 2px 2px 0 var(--ink)
}

.kq-prod {
    text-align: center;
    font-size: .6rem;
    letter-spacing: .34em;
    color: var(--dim);
    margin: 1.3rem 0 .8rem;
    text-transform: uppercase
}

/* versus stage: three detached pieces, everything contained in the banner */
.kq-banner {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: clamp(1rem, 2.6vw, 2.2rem);
    height: clamp(200px, 23vw, 260px);
    margin-top: clamp(3.2rem, 7vw, 4.4rem)
}

/* standalone team plates: clean faces, big logo and big name */
.kq-card {
    flex: 1;
    min-width: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(.9rem, 2vw, 1.6rem);
    padding: 1rem
}

.kq-card--ctf {
    color: var(--p);
    background: linear-gradient(180deg, rgba(255, 255, 255, .05), transparent 30%),
        repeating-linear-gradient(115deg, rgba(255, 255, 255, .03) 0 2px, transparent 2px 5px),
        linear-gradient(115deg, #3d0c21 0%, #0f0308 100%)
}

.kq-card--lab {
    color: var(--g);
    background: linear-gradient(180deg, rgba(255, 255, 255, .05), transparent 30%),
        repeating-linear-gradient(115deg, rgba(255, 255, 255, .03) 0 2px, transparent 2px 5px),
        linear-gradient(115deg, #0a2e18 0%, #030f08 100%)
}

.kq-card img {
    height: clamp(60px, 7.5vw, 92px);
    width: auto;
    max-width: 46%;
    filter: drop-shadow(3px 3px 0 #000)
}

.kq-side {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .35rem
}

.kq-card--lab .kq-side {
    align-items: flex-end;
    text-align: right
}

.kq-banner-name {
    font-size: clamp(1.05rem, 2.4vw, 1.8rem);
    font-weight: 800;
    letter-spacing: .12em;
    color: var(--w);
    text-shadow: 2px 2px 0 var(--ink)
}

/* cybernetic circuit accents, allowed to overflow the cards */
.kq-cyber {
    position: absolute;
    pointer-events: none;
    z-index: 4;
    opacity: .95;
    filter: drop-shadow(0 0 5px currentColor)
}

.kq-cyber--tr {
    top: -10px;
    right: -12px;
    width: 54px;
    height: 26px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor
}

.kq-cyber--tr::after {
    content: "";
    position: absolute;
    right: -4px;
    bottom: -3px;
    width: 7px;
    height: 7px;
    background: currentColor;
    transform: rotate(45deg)
}

.kq-cyber--tr::before {
    content: "";
    position: absolute;
    left: -4px;
    top: -4px;
    width: 7px;
    height: 7px;
    border: 2px solid currentColor;
    border-radius: 50%
}

.kq-cyber--bl {
    bottom: -10px;
    left: -12px;
    width: 54px;
    height: 26px;
    border-bottom: 2px solid currentColor;
    border-left: 2px solid currentColor
}

.kq-cyber--bl::after {
    content: "";
    position: absolute;
    left: -4px;
    top: -3px;
    width: 7px;
    height: 7px;
    background: currentColor;
    transform: rotate(45deg)
}

.kq-cyber--bl::before {
    content: "";
    position: absolute;
    right: -4px;
    bottom: -4px;
    width: 7px;
    height: 7px;
    border: 2px solid currentColor;
    border-radius: 50%
}

/* thin yellow/black danger stripes running inside each card */
.kq-hazard {
    position: absolute;
    left: 0;
    right: 0;
    height: 6px;
    z-index: 3;
    background: repeating-linear-gradient(45deg, #ffd166 0 7px, #0b0b0b 7px 14px)
}

.kq-hazard--t {
    top: 0
}

.kq-hazard--b {
    bottom: 0
}

/* center lane: the giant stage announcer */
.kq-announcer {
    position: relative;
    flex: 0 0 clamp(180px, 21vw, 240px);
    min-width: 0;
    z-index: 2
}

.kq-announcer .kq-bot {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: min(210px, 24vw);
    z-index: 3
}

.kq-announcer .kq-orbit {
    bottom: 4px
}

/* dark loop orbits, no glow */
.kq-orbit {
    position: absolute;
    bottom: 2px;
    left: 50%;
    transform: translateX(-50%);
    width: 134px;
    height: 134px;
    border: 2px dashed;
    border-radius: 50%;
    border-color: #3d444c transparent #2c3237 transparent;
    z-index: -1;
    opacity: .9
}

.kq-orbit--2 {
    width: 168px;
    height: 168px;
    border-color: transparent #32383f transparent #262b30;
    opacity: .6
}

/* championship metal shield: pink V and green 2 clashing over a bolt */
.kq-vshield {
    position: absolute;
    left: 50%;
    bottom: -12px;
    transform: translateX(-50%);
    width: 124px;
    padding: .55rem 0 1.45rem;
    z-index: 6;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .2rem;
    background: linear-gradient(150deg, #4a525a, #16181c 45%, #2c3137 82%);
    border: 3px solid #9aa3ad;
    clip-path: polygon(0 0, 100% 0, 100% 56%, 50% 100%, 0 56%);
    box-shadow: inset 2px 2px 0 rgba(255, 255, 255, .22), inset -3px -3px 0 rgba(0, 0, 0, .55), 6px 6px 0 #000
}

.kq-vshield b {
    font-size: 2.6rem;
    font-weight: 800;
    line-height: 1;
    position: relative;
    z-index: 2;
    font-style: italic
}

.kq-vshield b:first-of-type {
    color: var(--p);
    transform: rotate(-8deg) translate(4px, -3px);
    text-shadow: 2px 2px 0 var(--ink), 4px 4px 0 rgba(0, 0, 0, .4), -1px -1px 0 rgba(255, 255, 255, .4), 0 0 14px rgba(255, 45, 149, .55)
}

.kq-vshield b:last-of-type {
    color: var(--g);
    transform: rotate(8deg) translate(-4px, 1px);
    text-shadow: 2px 2px 0 var(--ink), 4px 4px 0 rgba(0, 0, 0, .4), -1px -1px 0 rgba(255, 255, 255, .35), 0 0 14px rgba(62, 224, 127, .5)
}

/* fiery glint sweeping across the shield metal and letters */
.kq-vshield::after {
    content: "";
    position: absolute;
    top: -10%;
    bottom: -10%;
    left: -48%;
    width: 36%;
    z-index: 3;
    pointer-events: none;
    transform: skewX(-18deg);
    mix-blend-mode: screen;
    background: linear-gradient(90deg, transparent, rgba(255, 209, 102, .35) 30%, rgba(255, 244, 214, .85) 50%, rgba(255, 122, 41, .35) 70%, transparent);
    animation: kqVShine 3.4s ease-in-out infinite
}

@keyframes kqVShine {

    0%,
    58% {
        left: -48%
    }

    88%,
    100% {
        left: 118%
    }
}

/* flame crown flickering behind the V2 letters: jagged pixel fire */




@keyframes kqFlick {

    0%,
    100% {
        transform: translateX(-50%) scaleY(1)
    }

    50% {
        transform: translateX(-50%) scale(.94, .82)
    }
}

.kq-bolt {
    position: absolute;
    left: 50%;
    top: -8px;
    bottom: 2px;
    width: 16px;
    transform: translateX(-50%);
    z-index: 1;
    background: linear-gradient(180deg, #eef3f6, #8d979f);
    clip-path: polygon(40% 0, 74% 0, 52% 40%, 80% 40%, 26% 100%, 44% 56%, 16% 56%);
    filter: drop-shadow(2px 2px 0 #000)
}

/* boxing-ring announcer mic: chrome capsule dropping from a cable above */
.kq-dropmic {
    position: absolute;
    left: calc(50% - 13px);
    top: -64px;
    width: 26px;
    height: calc(21% + 83px);
    z-index: 6;
    pointer-events: none;
    transform-origin: top center;
    animation: kqMicSway 6.5s ease-in-out infinite
}

.kq-dm-cable {
    position: absolute;
    top: 0;
    bottom: 46px;
    left: 50%;
    width: 3px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, #4a525a, #15181b);
    border-radius: 2px
}

.kq-dm-tape {
    position: absolute;
    bottom: 36px;
    left: 50%;
    transform: translateX(-50%);
    width: 12px;
    height: 14px;
    background: linear-gradient(180deg, #aeb7bf, #5b636b);
    box-shadow: 2px 2px 0 #000
}

.kq-dm-head {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 24px;
    height: 38px;
    background: repeating-linear-gradient(0deg, rgba(0, 0, 0, .35) 0 3px, transparent 3px 6px),
        linear-gradient(90deg, #eef3f6, #8d979f 55%, #4a525a);
    border: 2px solid #2c3137;
    border-radius: 10px 10px 12px 12px/12px 12px 16px 16px;
    box-shadow: 3px 3px 0 #000
}

@keyframes kqMicSway {

    0%,
    100% {
        transform: rotate(2.5deg)
    }

    50% {
        transform: rotate(-2deg)
    }
}

/* host pose: right hand raised toward the mic */
.kq-bot--host .kq-hand--r {
    top: 44%;
    right: 9%
}

.kq-bot--host .kq-hand--l {
    top: 56%;
    left: 3%
}

/* neon delimitation frames: contained in the stage, each card fits inside */
.kq-vsframe {
    flex: 1 1 0;
    min-width: 0;
    position: relative;
    display: flex;
    padding: 11px
}

.kq-vsframe--l {
    color: var(--p);
    border: 3px solid currentColor;
    box-shadow: 0 0 16px rgba(255, 45, 149, .4), inset 0 0 22px rgba(255, 45, 149, .12), -5px 5px 0 rgba(0, 0, 0, .85)
}

.kq-vsframe--r {
    color: var(--g);
    border: 3px solid currentColor;
    box-shadow: 0 0 16px rgba(62, 224, 127, .35), inset 0 0 22px rgba(62, 224, 127, .1), 5px 5px 0 rgba(0, 0, 0, .85)
}

/* inner echo line */
.kq-vsframe::before {
    content: "";
    position: absolute;
    inset: 4px;
    border: 1px dashed currentColor;
    opacity: .35;
    pointer-events: none
}

/* corner rivets on the closed corners */
.kq-vsframe::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    background: currentColor;
    top: -6px;
    box-shadow: 2px 2px 0 var(--ink)
}

.kq-vsframe--l::after {
    left: -6px
}

.kq-vsframe--r::after {
    right: -6px
}

/* match card tags riding the frame borders, above the card layers */
.kq-vstag,
.kq-vsplate {
    position: absolute;
    z-index: 7;
    background: #050705;
    border: 2px solid currentColor;
    font-weight: 800;
    white-space: nowrap;
    box-shadow: 3px 3px 0 var(--ink)
}

.kq-vstag {
    top: -11px;
    font-size: .56rem;
    letter-spacing: .22em;
    padding: .16rem .6rem
}

.kq-vsframe--l .kq-vstag {
    left: 16px
}

.kq-vsframe--r .kq-vstag {
    right: 16px
}

.kq-vsplate {
    bottom: -11px;
    font-size: .52rem;
    letter-spacing: .16em;
    padding: .14rem .55rem;
    opacity: .9
}

.kq-vsframe--l .kq-vsplate {
    left: 16px
}

.kq-vsframe--r .kq-vsplate {
    right: 16px
}

/* clash point: warm glow under the shield + flickering sparks */
.kq-clashglow {
    position: absolute;
    left: 50%;
    bottom: -34px;
    width: 250px;
    height: 130px;
    transform: translateX(-50%);
    z-index: 1;
    pointer-events: none;
    background: radial-gradient(ellipse at center, rgba(255, 209, 102, .2), transparent 65%)
}

.kq-vsspark {
    position: absolute;
    z-index: 5;
    width: 9px;
    height: 9px;
    background: var(--y);
    pointer-events: none;
    transform: rotate(45deg);
    filter: drop-shadow(0 0 6px rgba(255, 209, 102, .9));
    animation: kqSpark 1.4s steps(2) infinite
}

.kq-vsspark--1 {
    left: calc(50% - 132px);
    top: 14%
}

.kq-vsspark--2 {
    left: calc(50% + 128px);
    top: 56%;
    width: 6px;
    height: 6px;
    background: var(--w);
    filter: drop-shadow(0 0 5px rgba(255, 255, 255, .9));
    animation-delay: .35s
}

.kq-vsspark--3 {
    left: calc(50% - 118px);
    bottom: 10%;
    width: 6px;
    height: 6px;
    animation-delay: .7s
}

.kq-vsspark--4 {
    left: calc(50% + 142px);
    top: 6%;
    animation-delay: 1.05s
}

@keyframes kqSpark {

    0%,
    100% {
        opacity: 1;
        transform: rotate(45deg) scale(1)
    }

    50% {
        opacity: .15;
        transform: rotate(45deg) scale(.5)
    }
}

/* compact banner on small screens: stack the three pieces */
@media(max-width:560px) {
    .kq-banner {
        flex-direction: column;
        height: auto;
        gap: 2.4rem;
        margin-top: 2.6rem
    }

    .kq-vsframe {
        flex: none;
        width: 100%
    }

    .kq-card {
        min-height: 120px;
        padding: .9rem
    }

    .kq-card img {
        height: 52px;
        max-width: 38%
    }

    .kq-banner-name {
        font-size: 1rem;
        letter-spacing: .1em
    }

    .kq-announcer {
        flex: none;
        width: 100%;
        height: 240px
    }

    .kq-announcer .kq-bot {
        width: 170px
    }

    .kq-vshield {
        width: 96px;
        padding: .4rem 0 .9rem
    }

    .kq-vshield b {
        font-size: 1.8rem
    }

    .kq-orbit {
        width: 96px;
        height: 96px
    }

    .kq-orbit--2 {
        width: 122px;
        height: 122px
    }

    .kq-vstag {
        font-size: .46rem;
        letter-spacing: .1em;
        padding: .1rem .35rem
    }

    .kq-vsplate,
    .kq-vsspark,
    .kq-clashglow {
        display: none
    }

}

/* below the poster: centered info column */
.kq-hero2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: .2rem;
    margin-top: 3.4rem
}

.kq-hero2 .kq-ctas {
    justify-content: center
}

.kq-hero2 .kq-stats {
    justify-content: center
}

.kq-hook {
    margin: 0 auto .7rem;
    font-size: .9rem;
    line-height: 1.8;
    color: var(--sage);
    max-width: 34rem
}

.kq-hook b {
    color: var(--g);
    font-weight: 800
}

.kq-hook-echo {
    margin: 0 0 1.4rem;
    font-size: .68rem;
    letter-spacing: .08em;
    color: rgba(143, 168, 152, .4)
}

.kq-dates {
    display: inline-block;
    padding: .9rem 1.3rem;
    margin-bottom: 1.5rem;
    border: 2px solid var(--g);
    background: #07110b;
    box-shadow: 5px 5px 0 var(--ink)
}

.kq-dates-num {
    font-size: clamp(1.5rem, 4vw, 2.3rem);
    font-weight: 800;
    letter-spacing: .14em;
    color: var(--g);
    line-height: 1;
    text-shadow: 2px 2px 0 var(--ink)
}

.kq-btn {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    padding: .95rem 1.8rem;
    font-weight: 800;
    font-size: .88rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    border: 2px solid var(--ink);
    transition: transform .12s ease, box-shadow .12s ease, background .12s ease, color .12s ease
}

.kq-btn--go {
    background: var(--g);
    color: var(--bg);
    box-shadow: 5px 5px 0 var(--ink)
}

.kq-btn--go:hover {
    transform: translate(3px, 3px);
    box-shadow: 2px 2px 0 var(--ink);
    background: var(--p);
    color: var(--ink)
}

.kq-btn--go:active {
    transform: translate(5px, 5px);
    box-shadow: 0 0 0 var(--ink)
}

.kq-btn--alt {
    background: #0c060a;
    color: var(--p);
    border-color: var(--p);
    box-shadow: 5px 5px 0 rgba(179, 18, 95, .55)
}

.kq-btn--alt:hover {
    transform: translate(3px, 3px);
    box-shadow: 2px 2px 0 rgba(179, 18, 95, .55);
    background: rgba(255, 45, 149, .12)
}

.kq-ctas {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.8rem
}

.kq-stats {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    font-size: .66rem;
    letter-spacing: .18em
}

.kq-stats i {
    width: 2px;
    background: rgba(62, 224, 127, .3)
}

.kq-stats b {
    display: block;
    font-size: 1.3rem;
    letter-spacing: .05em;
    font-weight: 800
}

.kq-stats span {
    color: var(--dim)
}

.kq-c-g {
    color: var(--g)
}

.kq-c-p {
    color: var(--p)
}

.kq-c-w {
    color: var(--w)
}

.kq-c-y {
    color: var(--y)
}

/* ================= THE ROBOT (CSS art, lightened) ================= */
.kq-bot {
    position: relative;
    width: min(300px, 72vw);
    aspect-ratio: 4/5;
    --plate: #e8f2ea;
    --darkp: #163a28;
    --joint: #7ca28b;
    --screen: #071009;
    --glowc: var(--g)
}

.kq-bot-in {
    position: absolute;
    inset: 0
}

.kq-bot i {
    position: absolute;
    display: block
}

.kq-crown {
    left: 50%;
    top: 1%;
    width: 24%;
    height: 9%;
    transform: translateX(-50%);
    background: var(--darkp);
    clip-path: polygon(12% 100%, 50% 0, 88% 100%)
}

.kq-head {
    left: 50%;
    top: 8%;
    width: 60%;
    height: 28%;
    transform: translateX(-50%);
    background: var(--plate);
    border-radius: 16%
}

.kq-face {
    left: 50%;
    top: 12.5%;
    width: 46%;
    height: 17%;
    transform: translateX(-50%);
    background: var(--screen);
    border-radius: 12%
}

.kq-eye {
    width: 11%;
    height: 7%;
    top: 16.5%;
    background: var(--glowc);
    clip-path: polygon(0 45%, 100% 15%, 100% 80%, 28% 85%);
    filter: drop-shadow(0 0 6px var(--glowc))
}

/* friendly: inner edge higher = soft look */
.kq-eye--l {
    left: 31%
}

.kq-eye--r {
    right: 31%;
    transform: scaleX(-1)
}

.kq-chin {
    left: 50%;
    top: 33.5%;
    width: 32%;
    height: 5.5%;
    transform: translateX(-50%);
    background: var(--darkp);
    border-radius: 0 0 40% 40%
}

.kq-neck {
    left: 50%;
    top: 39%;
    width: 10%;
    height: 4%;
    transform: translateX(-50%);
    background: var(--joint)
}

.kq-sh {
    top: 44%;
    width: 17%;
    height: 13%;
    background: var(--joint)
}

.kq-sh--l {
    left: 11%;
    border-radius: 70% 15% 15% 70%
}

.kq-sh--r {
    right: 11%;
    border-radius: 15% 70% 70% 15%
}

.kq-hand {
    top: 59%;
    width: 13%;
    aspect-ratio: 1;
    background: var(--darkp);
    border-radius: 50%
}

.kq-hand--l {
    left: 5%
}

.kq-hand--r {
    right: 5%
}

.kq-hand::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 60%;
    width: 44%;
    height: 34%;
    transform: translateX(-50%);
    background: var(--glowc);
    border-radius: 50%;
    filter: drop-shadow(0 0 6px var(--glowc))
}

.kq-chest {
    left: 50%;
    top: 43.5%;
    width: 38%;
    height: 24%;
    transform: translateX(-50%);
    background: var(--plate);
    border-radius: 18% 18% 48% 48%
}

.kq-core {
    left: 50%;
    top: 50%;
    width: 12%;
    aspect-ratio: 1;
    transform: translateX(-50%);
    border: 2px solid var(--glowc);
    border-radius: 50%;
    background: radial-gradient(circle, var(--glowc) 0 35%, transparent 75%);
    filter: drop-shadow(0 0 8px var(--glowc))
}

.kq-leg {
    top: 70%;
    width: 12%;
    height: 11%;
    background: var(--joint);
    clip-path: polygon(18% 0, 82% 0, 100% 100%, 0 100%)
}

.kq-leg--l {
    left: 32%
}

.kq-leg--r {
    right: 32%
}

.kq-foot {
    top: 81%;
    width: 16%;
    height: 8.5%;
    background: var(--darkp);
    clip-path: polygon(14% 0, 86% 0, 100% 100%, 0 100%)
}

.kq-foot--l {
    left: 30%
}

.kq-foot--r {
    right: 30%
}

.kq-bot-shadow {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 56%;
    height: 5%;
    transform: translateX(-50%);
    background: radial-gradient(ellipse, rgba(0, 0, 0, .6), transparent 70%)
}

.kq-bot-plate {
    border: 2px solid var(--g);
    background: #07110b;
    padding: .6rem 1.1rem;
    font-size: .64rem;
    line-height: 1.7;
    letter-spacing: .14em;
    box-shadow: 4px 4px 0 var(--ink);
    text-align: center
}

.kq-bot-plate b {
    display: block;
    color: var(--g);
    font-weight: 800;
    letter-spacing: .2em
}

.kq-bot-plate span {
    color: var(--sage)
}

/* head details: beacon light on top + side vents */
.kq-bot-in::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -2.5%;
    width: 4%;
    aspect-ratio: 1;
    transform: translateX(-50%);
    background: var(--glowc);
    border-radius: 50%;
    filter: drop-shadow(0 0 6px var(--glowc));
    z-index: 1
}

.kq-head::before,
.kq-head::after {
    content: "";
    position: absolute;
    top: 36%;
    width: 8%;
    height: 26%;
    background: var(--joint)
}

.kq-head::before {
    left: -8%
}

.kq-head::after {
    right: -8%
}

/* ===== CYBER-DEMON variant: blood red, horned, three-eyed ===== */
.kq-bot--evil {
    --plate: #2e1115;
    --darkp: #140508;
    --joint: #661a25;
    --screen: #0a0308;
    --glowc: #ff1414
}

.kq-bot--evil .kq-head {
    transform: translateX(-50%) rotate(2.5deg)
}

/* devil horns: sharp, curved outward, burning tips */
.kq-horn {
    top: -1.5%;
    width: 15%;
    height: 16%;
    background: linear-gradient(205deg, var(--glowc) 0 16%, var(--joint) 55%, var(--darkp));
    filter: drop-shadow(0 0 10px #ff1414)
}

.kq-horn--l {
    left: 16%;
    clip-path: polygon(0 0, 44% 26%, 70% 56%, 90% 100%, 46% 84%, 14% 46%)
}

.kq-horn--r {
    right: 16%;
    transform: scaleX(-1);
    clip-path: polygon(0 0, 44% 26%, 70% 56%, 90% 100%, 46% 84%, 14% 46%)
}

/* demonic gaze: two slashed angry eyes + rune third eye */
.kq-bot--evil .kq-eye {
    width: 12.5%;
    height: 7.5%;
    filter: drop-shadow(0 0 8px #ff1414)
}

.kq-bot--evil .kq-eye--l {
    transform: rotate(14deg);
    clip-path: polygon(0 35%, 100% 0, 86% 72%, 8% 100%)
}

.kq-bot--evil .kq-eye--r {
    transform: scaleX(-1) rotate(14deg);
    clip-path: polygon(0 35%, 100% 0, 86% 72%, 8% 100%)
}

.kq-bot--evil .kq-eye--c {
    left: 50%;
    top: 9.6%;
    width: 7%;
    height: 5.2%;
    transform: translateX(-50%);
    clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
    filter: drop-shadow(0 0 8px #ff1414)
}

/* physical damage: cracked screen, unstable red glow */
.kq-bot--evil .kq-face::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--glowc);
    clip-path: polygon(45% 0, 48% 0, 52% 45%, 43% 55%, 50% 100%, 47% 100%, 40% 53%, 49% 47%);
    opacity: .85;
    filter: drop-shadow(0 0 3px #ff1414)
}

/* smug grin: asymmetric curve, one corner raised */
.kq-smirk {
    left: 50%;
    top: 22.6%;
    width: 18%;
    height: 6.5%;
    transform: translateX(-44%) rotate(-10deg);
    border-bottom: 3px solid var(--glowc);
    border-radius: 0 0 110% 35%/0 0 95% 60%;
    filter: drop-shadow(0 0 5px #ff1414);
    z-index: 2
}

.kq-smirk::after {
    content: "";
    position: absolute;
    right: -9%;
    bottom: -4%;
    width: 20%;
    height: 60%;
    border-right: 3px solid var(--glowc);
    border-radius: 0 90% 0 0;
    transform: rotate(30deg)
}

/* third eye: dark socket + furious scintillating pupil */
.kq-bot--evil .kq-eye--c {
    background: #8a0d0d
}

.kq-bot--evil .kq-eye--c::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 36%;
    height: 54%;
    transform: translate(-50%, -50%);
    background: #ff1414;
    clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
    filter: drop-shadow(0 0 6px #ff1414)
}

/* broken stance: right foot half dislocated */
.kq-bot--evil .kq-foot--r {
    transform: rotate(22deg) translate(10%, 22%)
}

/* ================= STAGE 2 : THE CRACK ================= */
.kq-crack {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 1.4rem;
    align-items: stretch
}

.kq-term {
    border: 2px solid var(--g);
    background: rgba(4, 7, 5, .9)
}

.kq-term-head {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .65rem 1rem;
    border-bottom: 2px solid rgba(62, 224, 127, .4);
    background: rgba(62, 224, 127, .06);
    font-size: .64rem;
    letter-spacing: .18em;
    color: var(--dim)
}

.kq-term-head em {
    width: 9px;
    height: 9px;
    background: var(--p);
    box-shadow: 2px 2px 0 var(--ink)
}

.kq-term-head b {
    margin-left: auto;
    color: var(--p);
    font-weight: 800
}

.kq-term-body {
    padding: 1rem 1.1rem 1.4rem;
    font-size: .75rem;
    line-height: 2
}

.kq-ok {
    color: var(--g)
}

.kq-ko {
    color: var(--p)
}

.kq-wr {
    color: var(--y)
}

.kq-tx {
    color: #e9f5ec
}

.kq-mut {
    color: var(--sage)
}

.kq-cursor {
    display: inline-block;
    width: 8px;
    height: 14px;
    background: var(--g);
    vertical-align: -2px;
    margin-left: 4px
}

.kq-mem-log {
    padding: 1.3rem 1.4rem;
    font-size: .76rem;
    line-height: 2.2;
    color: var(--sage)
}

.kq-file-g {
    color: var(--g)
}

.kq-file-y {
    color: var(--y)
}

.kq-file-p {
    color: var(--p)
}

.kq-redact {
    background: #132918;
    color: transparent;
    padding: 0 1.6em;
    user-select: none
}

.kq-redact--y {
    background: #2b2312
}

.kq-redact--p {
    background: #2b1220
}

.kq-mem-dump {
    padding: 1.3rem 1.4rem;
    font-size: .84rem;
    line-height: 2.2;
    color: #e9f5ec;
    font-style: italic
}

.kq-mem-dump b {
    font-style: normal;
    color: var(--w)
}

.kq-mem-head {
    font-size: .62rem;
    letter-spacing: .26em;
    font-weight: 800;
    margin-bottom: .9rem;
    font-style: normal
}

.kq-chips {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    margin-top: 1rem;
    font-style: normal
}

/* ================= STAGE 3 : WAVES TIMELINE (contaminated) ================= */
/* ambient vapor + static specific to this zone */
.kq-zone3 {
    position: relative
}

.kq-zone3::before {
    content: "";
    position: absolute;
    inset: -1.2rem;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(ellipse 40% 30% at 20% 30%, rgba(255, 45, 149, .05), transparent 70%),
        radial-gradient(ellipse 35% 28% at 80% 70%, rgba(255, 20, 20, .045), transparent 70%),
        repeating-linear-gradient(0deg, rgba(255, 255, 255, .012) 0 1px, transparent 1px 3px)
}

.kq-zone3>* {
    position: relative;
    z-index: 2
}

.kq-tl-wrap {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    padding-left: 40px
}

/* the axis starts clean and straight... */
.kq-tl-wrap::before {
    content: "";
    position: absolute;
    left: 13px;
    top: 6px;
    height: 42%;
    border-left: 2px dashed rgba(62, 224, 127, .45)
}

/* ...then twists, breaks and zigzags all the way down */
.kq-tl-wrap::after {
    content: "";
    position: absolute;
    left: 1px;
    top: calc(42% + 4px);
    bottom: 6px;
    width: 28px;
    background: repeating-linear-gradient(180deg, rgba(255, 45, 149, .6) 0 7px, rgba(20, 3, 10, 0) 7px 13px);
    clip-path: polygon(52% 0, 60% 8%, 38% 16%, 66% 28%, 34% 40%, 62% 52%, 30% 64%, 58% 76%, 36% 88%, 54% 100%, 42% 100%, 24% 88%, 46% 76%, 18% 64%, 50% 52%, 22% 40%, 54% 28%, 26% 16%, 48% 8%, 40% 0)
}

.kq-wave {
    position: relative;
    margin-bottom: 1.5rem
}

.kq-wave:last-child {
    margin-bottom: 0
}

/* nodes mutate as the anomaly spreads */
.kq-node {
    position: absolute;
    left: -34px;
    top: 22px;
    width: 14px;
    height: 14px;
    background: var(--bg);
    border: 2px solid var(--g);
    box-shadow: 3px 3px 0 var(--ink)
}

.kq-node--p {
    border-color: var(--p)
}

/* wave 03: vertical cat pupil */
.kq-node--y {
    left: -31px;
    top: 18px;
    width: 7px;
    height: 24px;
    border: 0;
    background: var(--y);
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(255, 209, 102, .8), 3px 3px 0 var(--ink)
}

/* wave 04: black distortion bleeding downward */
.kq-node--w {
    background: #000;
    border-color: #1a060e;
    box-shadow: 3px 3px 0 var(--ink), 0 10px 14px -2px rgba(255, 20, 60, .55), 0 22px 24px -6px rgba(255, 45, 149, .3)
}

.kq-wave-card {
    padding: 1.3rem 1.4rem
}

.kq-wave-head {
    display: flex;
    align-items: center;
    gap: .8rem;
    flex-wrap: wrap;
    margin-bottom: .9rem
}

.kq-wave-num {
    font-size: 1.35rem;
    font-weight: 800;
    text-shadow: 2px 2px 0 var(--ink)
}

.kq-wave-name {
    font-size: 1rem;
    font-weight: 800;
    color: var(--w);
    letter-spacing: .12em
}

.kq-wave-head .kq-tag {
    margin-left: auto
}

.kq-wave p {
    margin: 0;
    font-size: .76rem;
    line-height: 1.75;
    color: var(--sage)
}

.kq-net {
    display: flex;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
    font-size: .6rem;
    letter-spacing: .12em;
    margin-bottom: .8rem
}

.kq-net i {
    flex: 1;
    min-width: 14px;
    height: 0;
    border-top: 2px dashed rgba(255, 45, 149, .55)
}

.kq-grid6 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
    gap: .45rem;
    font-size: .6rem;
    letter-spacing: .12em;
    text-align: center;
    margin-bottom: .8rem
}

.kq-grid6 span {
    border: 2px solid rgba(62, 224, 127, .5);
    color: var(--g);
    padding: .32rem .3rem;
    font-weight: 800
}

.kq-grid6 .kq-down {
    color: var(--dim);
    border-color: rgba(95, 122, 106, .5);
    text-decoration: none;
    opacity: .55
}

.kq-grid6 span:nth-child(4).kq-down {
    animation-delay: 1.3s
}

.kq-grid6 .kq-unknown {
    color: var(--p);
    border-color: var(--p)
}

.kq-bar {
    position: relative;
    height: 20px;
    border: 2px solid var(--y);
    background: #14100a;
    margin-bottom: .8rem
}

.kq-bar-fill {
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 2px;
    background: repeating-linear-gradient(90deg, var(--y) 0 14px, #14100a 14px 18px)
}

.kq-bar--p {
    border-color: var(--p);
    background: #140812
}

.kq-bar--p .kq-bar-fill {
    background: repeating-linear-gradient(90deg, var(--p) 0 14px, #140812 14px 18px)
}

.kq-bar-meta {
    display: flex;
    justify-content: space-between;
    font-size: .58rem;
    letter-spacing: .18em;
    color: var(--sage);
    margin-bottom: .35rem
}

.kq-count {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    border: 2px solid var(--y);
    background: rgba(255, 209, 102, .06);
    padding: .45rem .85rem;
    box-shadow: 4px 4px 0 var(--ink)
}

.kq-count b {
    color: var(--y);
    font-weight: 800;
    font-size: .8rem;
    letter-spacing: .12em
}

.kq-count em {
    color: var(--y);
    font-weight: 800;
    font-size: .62rem
}

/* sick gauges: dead pixels + blood-flash segments + unstable fill */
.kq-bar--sick .kq-bar-fill {
    transform-origin: left center
}

.kq-bar--sick::after {
    content: "";
    position: absolute;
    top: 7px;
    left: 12%;
    width: 6px;
    height: 6px;
    background: #050705;
    z-index: 2;
    box-shadow: 34px -3px 0 #050705, 72px 3px 0 #050705, 118px -1px 0 #050705, 176px 3px 0 #050705, 220px -3px 0 #050705
}

.kq-bar--sick::before {
    content: "";
    position: absolute;
    top: 2px;
    bottom: 2px;
    left: 34%;
    width: 16px;
    background: #ff1414;
    opacity: 0;
    z-index: 2;
    filter: drop-shadow(0 0 5px #ff1414)
}

/* burned / missing border chunks (wave 02) */
.kq-burn::before {
    content: "";
    position: absolute;
    top: -2px;
    left: 18%;
    width: 15%;
    height: 2px;
    background: #050705;
    z-index: 2;
    box-shadow: 0 2px 3px rgba(0, 0, 0, .8)
}

.kq-burn::after {
    content: "";
    position: absolute;
    right: -2px;
    top: 26%;
    width: 2px;
    height: 24%;
    background: #050705;
    z-index: 2;
    box-shadow: -3px 10px 8px -2px rgba(0, 0, 0, .85), 0 0 0 0 transparent
}

/* data leak parasites (wave 03) */
.kq-leak {
    overflow: hidden
}

.kq-leak .kq-leakline {
    position: absolute;
    left: 0;
    right: 0;
    top: 20%;
    height: 2px;
    background: rgba(255, 45, 149, .28);
    pointer-events: none;
    z-index: 1
}

/* slashed card + dying power (wave 04) */
.kq-slash .kq-slashline {
    position: absolute;
    top: -8%;
    bottom: -8%;
    left: 56%;
    width: 12px;
    background: #050705;
    transform: rotate(13deg);
    z-index: 2;
    box-shadow: 3px 0 0 rgba(255, 45, 149, .25), 26px 6px 0 -4px #050705
}

/* micro flicker (wave 01) */
.kq-tilt0 {
    transform: rotate(-.3deg)
}

/* whisper carved by something hostile */
.kq-whisper--evil {
    color: rgba(255, 25, 70, .5);
    filter: blur(.5px);
    letter-spacing: .38em;
    text-shadow: 0 0 6px rgba(255, 20, 60, .55), 1px 0 0 rgba(255, 45, 149, .35)
}

/* ================= REDACTED / GLITCHED WAVES =================
   The wave details are censored on screen. The text under every band is
   real and lives in the page source: a little gift for anyone opening F12. */
.kq-censor {
    position: relative;
    display: inline-block;
    max-width: 100%;
    color: transparent !important;
    background: #0a0f0b;
    padding: .16em .6em;
    letter-spacing: .04em;
    user-select: none;
    -webkit-user-select: none;
    overflow: hidden;
    vertical-align: middle;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .8)
}

/* the censor block itself: dark bar chopped by vertical redaction stripes */
.kq-censor::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        repeating-linear-gradient(90deg, rgba(0, 0, 0, .55) 0 3px, transparent 3px 7px),
        linear-gradient(180deg, rgba(255, 255, 255, .05), transparent 45%)
}

/* thin bright data-tear sliding through the band */
.kq-censor::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -30%;
    width: 20%;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(90deg, transparent, var(--band, var(--g)) 50%, transparent);
    opacity: .75;
    mix-blend-mode: screen
}

.kq-censor--g {
    --band: var(--g);
    background: #08140d
}

.kq-censor--p {
    --band: var(--p);
    background: #150810
}

.kq-censor--y {
    --band: var(--y);
    background: #15120a
}

.kq-censor--lg {
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: .1em;
    padding: .2em .7em
}

.kq-censor-lines {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
    margin-top: .5rem
}

.kq-censor--bar {
    font-size: .74rem
}

/* ================= STAGE 4 : BOSS HUD ================= */
.kq-boss {
    position: relative;
    margin-top: 2.6rem;
    border: 3px solid var(--p);
    background: rgba(10, 5, 9, .85);
    padding: clamp(1.4rem, 3.5vw, 2.4rem);
    overflow: hidden;
    clip-path: polygon(0 0, calc(100% - 26px) 0, 100% 26px, 100% 100%, 26px 100%, 0 calc(100% - 26px))
}

.kq-boss-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    align-items: center
}

.kq-boss-main {
    flex: 2.2 1 420px;
    min-width: 0
}

.kq-boss-side {
    flex: 1 1 220px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem
}

.kq-boss-head {
    display: flex;
    align-items: baseline;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: .8rem
}

.kq-boss-name {
    margin: 0;
    font-size: clamp(1.7rem, 4.2vw, 2.7rem);
    font-weight: 800;
    letter-spacing: .1em;
    color: var(--p);
    text-shadow: 3px 3px 0 var(--ink), 5px 5px 0 rgba(62, 224, 127, .35)
}

.kq-boss-sub {
    font-size: .62rem;
    letter-spacing: .22em;
    color: var(--sage)
}

.kq-boss-live {
    margin-left: auto;
    font-size: .6rem;
    letter-spacing: .2em;
    color: var(--sage)
}

.kq-boss-live em {
    display: inline-block;
    width: 8px;
    height: 8px;
    background: var(--p);
    margin-right: .4rem;
    box-shadow: 2px 2px 0 var(--ink)
}

.kq-hpbig {
    position: relative;
    height: 40px;
    border: 3px solid var(--p);
    background: #140812;
    margin-bottom: 1.4rem;
    box-shadow: 5px 5px 0 var(--ink)
}

.kq-hpbig-fill {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 3px;
    width: 78%;
    background: repeating-linear-gradient(90deg, var(--p) 0 22px, #140812 22px 28px)
}

.kq-armor {
    display: flex;
    gap: .7rem;
    flex-wrap: wrap;
    margin-bottom: 1.4rem;
    font-size: .62rem;
    letter-spacing: .12em
}

.kq-armor span {
    padding: .45rem .85rem;
    font-weight: 800;
    border: 2px solid;
    box-shadow: 3px 3px 0 var(--ink)
}

.kq-armor .kq-a-p {
    color: var(--p);
    border-color: var(--p);
    background: rgba(255, 45, 149, .06)
}

.kq-armor .kq-a-y {
    color: var(--y);
    border-color: var(--y);
    background: rgba(255, 209, 102, .06)
}

.kq-log {
    border: 2px solid rgba(62, 224, 127, .5);
    background: rgba(4, 7, 5, .9);
    padding: .9rem 1.1rem
}

.kq-log-window {
    height: 88px;
    overflow: hidden;
    position: relative
}

.kq-log-scroll {
    font-size: .72rem;
    line-height: 2
}

/* ================= DIRECTIVE & FINAL ================= */
.kq-directive {
    margin-top: 2.6rem;
    border: 2px solid var(--y);
    background: rgba(255, 209, 102, .04);
    padding: .9rem 1.2rem;
    display: flex;
    align-items: center;
    gap: .9rem;
    flex-wrap: wrap;
    box-shadow: 5px 5px 0 var(--ink)
}

.kq-directive i {
    flex-shrink: 0;
    width: 1.9rem;
    height: 1.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--y);
    color: var(--y);
    font-weight: 800;
    background: rgba(255, 209, 102, .08)
}

.kq-directive b {
    font-size: .72rem;
    letter-spacing: .14em;
    color: var(--y);
    font-weight: 800
}

.kq-directive span {
    font-size: .76rem;
    color: var(--sage)
}

.kq-directive span b {
    color: var(--w);
    font-size: .76rem;
    letter-spacing: normal
}

.kq-final {
    margin-top: 2.4rem;
    text-align: center;
    padding: clamp(1.6rem, 4vw, 2.8rem) 1.2rem 0
}

.kq-final-kick {
    font-size: .64rem;
    letter-spacing: .34em;
    color: var(--p);
    margin-bottom: 1rem
}

.kq-final-h {
    margin: 0 0 1.6rem;
    font-size: clamp(1.6rem, 4vw, 2.5rem);
    font-weight: 800;
    color: var(--w);
    letter-spacing: .05em;
    text-shadow: 3px 3px 0 var(--p), 6px 6px 0 var(--ink)
}

.kq-final-foot {
    margin-top: 1.4rem;
    font-size: .62rem;
    color: var(--dim);
    letter-spacing: .2em
}

.kq-final-foot em {
    color: rgba(255, 45, 149, .4)
}

/* ================= LOOP MOTIFS ================= */
.kq-ring {
    width: 64px;
    height: 64px;
    border: 2px dashed var(--g);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.7rem;
    font-weight: 800;
    color: var(--g);
    flex-shrink: 0;
    filter: drop-shadow(0 0 6px rgba(62, 224, 127, .5))
}

.kq-ring--p {
    border-color: var(--p);
    color: var(--p);
    filter: drop-shadow(0 0 6px rgba(255, 45, 149, .5))
}

.kq-loopband {
    overflow: hidden;
    margin: 2rem 0 0;
    opacity: .45
}

.kq-loopband span {
    white-space: nowrap;
    display: inline-block;
    font-size: 1.05rem;
    letter-spacing: 1.1em;
    color: rgba(62, 224, 127, .4);
    font-weight: 800
}

.kq-loopband--2 span {
    color: rgba(255, 45, 149, .4)
}

.kq-loopband--3 {
    opacity: .75
}

.kq-loopband--3 span {
    color: rgba(255, 45, 149, .55);
    letter-spacing: 1.5em;
    text-shadow: 2px 0 0 rgba(62, 224, 127, .4)
}

.kq-looptag {
    margin-left: .2rem;
    font-size: .56rem;
    letter-spacing: .2em;
    padding: .15rem .5rem;
    border: 1px dashed var(--dim);
    color: var(--dim);
    white-space: nowrap
}

/* ================= DECAY (worsens as you descend) ================= */
.kq-tilt1 {
    transform: rotate(.35deg)
}

.kq-tilt2 {
    transform: rotate(-.75deg) translateX(4px)
}

.kq-tilt3 {
    transform: rotate(1.2deg) translateX(-6px)
}

.kq-aber2 {
    text-shadow: 1.5px 0 0 rgba(255, 45, 149, .55), -1.5px 0 0 rgba(62, 224, 127, .55)
}

.kq-aber3 {
    text-shadow: 3px 0 0 rgba(255, 45, 149, .75), -3px 0 0 rgba(62, 224, 127, .75), 0 0 8px rgba(255, 45, 149, .4)
}

/* broken wall: jagged notch bitten into the top edge */
.kq-broken {
    clip-path: polygon(0 0, 52% 0, 56% 9%, 61% 2%, 64% 12%, 68% 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%)
}

/* fissure running through the panel + fallen shards */
.kq-fissure {
    position: relative
}

.kq-fissure::after {
    content: "";
    position: absolute;
    top: -2px;
    left: 58%;
    width: 30px;
    height: 54%;
    background: #050705;
    clip-path: polygon(42% 0, 60% 0, 46% 16%, 68% 30%, 50% 50%, 72% 64%, 55% 100%, 38% 100%, 52% 66%, 32% 52%, 50% 32%, 30% 18%)
}

.kq-fissure::before {
    content: "";
    position: absolute;
    top: calc(100% - 16px);
    left: 60%;
    width: 8px;
    height: 8px;
    background: var(--p);
    opacity: .5;
    transform: rotate(24deg);
    box-shadow: 16px 4px 0 -2px rgba(255, 45, 149, .35), -22px 2px 0 -3px rgba(255, 45, 149, .22)
}

/* static noise over stage-4 surfaces */
.kq-static::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 3;
    background: repeating-linear-gradient(0deg, rgba(255, 255, 255, .02) 0 1px, transparent 1px 2px),
        repeating-linear-gradient(90deg, rgba(255, 45, 149, .03) 0 2px, transparent 2px 4px)
}

.kq-nosignal {
    display: inline-block;
    margin-left: .6rem;
    padding: .12rem .5rem;
    font-size: .54rem;
    letter-spacing: .18em;
    color: var(--ink);
    background: repeating-linear-gradient(45deg, var(--p) 0 6px, var(--y) 6px 12px);
    font-weight: 800
}

/* ================= ARG : HOVER DECRYPT ================= */
.kq-decrypt {
    position: relative;
    display: inline-block;
    cursor: pointer
}

.kq-decrypt .kq-clear-text {
    display: none;
    color: var(--y);
    font-weight: 800;
    text-shadow: 0 0 6px var(--y)
}

.kq-decrypt:hover .kq-redact {
    display: none
}

.kq-decrypt:hover .kq-clear-text {
    display: inline-block
}

/* ================= ANIMATIONS ================= */
@keyframes kqBlink {

    0%,
    49% {
        opacity: 1
    }

    50%,
    100% {
        opacity: 0
    }
}

@keyframes kqMarquee {
    from {
        transform: translateX(0)
    }

    to {
        transform: translateX(-50%)
    }
}

@keyframes kqLogUp {
    from {
        transform: translateY(0)
    }

    to {
        transform: translateY(-50%)
    }
}

@keyframes kqRise {
    from {
        opacity: 0;
        transform: translateY(22px)
    }

    to {
        opacity: 1;
        transform: none
    }
}

@keyframes critical-pulse {

    0%,
    100% {
        border-color: rgba(255, 45, 149, .45)
    }

    50% {
        border-color: var(--p)
    }
}

/* robot life */
@keyframes kqBotFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-2.5%)
    }
}

@keyframes kqBotEyes {

    0%,
    91%,
    100% {
        transform: scaleY(1)
    }

    94% {
        transform: scaleY(.12)
    }

    97% {
        transform: scaleY(1)
    }
}

@keyframes kqBotEyesR {

    0%,
    91%,
    100% {
        transform: scaleX(-1) scaleY(1)
    }

    94% {
        transform: scaleX(-1) scaleY(.12)
    }

    97% {
        transform: scaleX(-1) scaleY(1)
    }
}

@keyframes kqCore {

    0%,
    100% {
        filter: drop-shadow(0 0 6px var(--glowc));
        transform: translateX(-50%) scale(1)
    }

    50% {
        filter: drop-shadow(0 0 14px var(--glowc));
        transform: translateX(-50%) scale(1.08)
    }
}

@keyframes kqBotTwitch {

    0%,
    64%,
    78%,
    100% {
        transform: translate(0, 0) rotate(0)
    }

    66% {
        transform: translate(-5px, 2px) rotate(-1.6deg)
    }

    69% {
        transform: translate(4px, -2px) rotate(1.2deg)
    }

    72% {
        transform: translate(-2px, 0) rotate(0)
    }

    90% {
        transform: translate(0, 0)
    }

    91% {
        transform: translate(6px, 0) skewX(3deg)
    }

    92.5% {
        transform: translate(0, 0)
    }
}

@keyframes kqCoreEvil {

    0%,
    100% {
        opacity: 1
    }

    12% {
        opacity: .35
    }

    14% {
        opacity: 1
    }

    48% {
        opacity: 1
    }

    50% {
        opacity: .2
    }

    52% {
        opacity: 1
    }
}

/* auto-glitch, three escalating intensities */
@keyframes kqG1 {

    0%,
    95.4%,
    98%,
    100% {
        clip-path: inset(0);
        transform: none
    }

    96% {
        clip-path: inset(18% 0 42% 0);
        transform: translateX(-3px)
    }

    97% {
        clip-path: inset(55% 0 12% 0);
        transform: translateX(3px)
    }
}

@keyframes kqG2 {

    0%,
    89.4%,
    94%,
    100% {
        clip-path: inset(0);
        transform: none;
        filter: none
    }

    90% {
        clip-path: inset(12% 0 58% 0);
        transform: translate(-4px, 1px)
    }

    91.5% {
        clip-path: inset(52% 0 18% 0);
        transform: translate(4px, -1px);
        filter: hue-rotate(40deg)
    }

    93% {
        clip-path: inset(30% 0 30% 0);
        transform: translate(-2px, 0)
    }
}

@keyframes kqG3 {

    0%,
    82.4%,
    90%,
    100% {
        clip-path: inset(0);
        transform: none;
        filter: none
    }

    83% {
        clip-path: inset(10% 0 60% 0);
        transform: translate(-6px, 2px) skewX(2deg)
    }

    85% {
        clip-path: inset(55% 0 8% 0);
        transform: translate(6px, -2px);
        filter: hue-rotate(90deg) saturate(2)
    }

    87% {
        clip-path: inset(28% 0 34% 0);
        transform: translate(-3px, 1px)
    }

    88.5% {
        clip-path: inset(4% 0 76% 0);
        transform: translate(3px, 0);
        filter: invert(.8)
    }
}

/* loop & decay */
@keyframes kqSpinLoop {
    to {
        transform: rotate(360deg)
    }
}

@keyframes kqDropout {

    0%,
    89%,
    95%,
    100% {
        opacity: 1;
        filter: none
    }

    90% {
        opacity: .12;
        filter: grayscale(1) blur(1px)
    }

    92% {
        opacity: .85
    }

    93.5% {
        opacity: .25;
        filter: grayscale(1)
    }
}

@keyframes kqBlurPulse {

    0%,
    86%,
    93%,
    100% {
        filter: none
    }

    88% {
        filter: blur(3px) saturate(1.8)
    }

    91% {
        filter: blur(.6px)
    }
}

/* physical damage & instruments */
@keyframes kqScanlines {
    0% {
        background-position: 0 0
    }

    100% {
        background-position: 0 4px
    }
}

@keyframes kqAngryPupil {

    0%,
    100% {
        opacity: 1
    }

    6% {
        opacity: .35
    }

    9% {
        opacity: 1
    }

    13% {
        opacity: .6
    }

    15% {
        opacity: 1
    }

    47% {
        opacity: 1
    }

    50% {
        opacity: .25
    }

    52% {
        opacity: 1
    }

    71% {
        opacity: .5
    }

    73% {
        opacity: 1
    }
}

@keyframes kqSmirkTwitch {

    0%,
    88%,
    100% {
        transform: translateX(-44%) rotate(-10deg)
    }

    90% {
        transform: translateX(-44%) rotate(-14deg)
    }

    94% {
        transform: translateX(-44%) rotate(-9deg)
    }
}

@keyframes kqHpPulse {

    0%,
    100% {
        width: 78%;
        opacity: 1
    }

    50% {
        width: 76.5%;
        opacity: .88;
        filter: saturate(1.5)
    }
}

@keyframes kqReveal {

    0%,
    100% {
        opacity: 1
    }

    50% {
        opacity: .5
    }
}

/* stage-3 contamination */
@keyframes kqNodeShake {

    0%,
    86%,
    100% {
        transform: translate(0, 0)
    }

    88% {
        transform: translate(-2px, 1px)
    }

    90% {
        transform: translate(2px, -1px)
    }

    92% {
        transform: translate(-1px, 0)
    }

    94% {
        transform: translate(1px, 1px)
    }

    96% {
        transform: translate(0, 0)
    }
}

@keyframes kqPupil {

    0%,
    100% {
        transform: scaleX(1)
    }

    45% {
        transform: scaleX(.45)
    }

    55% {
        transform: scaleX(.45)
    }

    70% {
        transform: scaleX(1.25)
    }
}

@keyframes kqBleed {

    0%,
    100% {
        border-radius: 0;
        transform: none
    }

    30% {
        border-radius: 42% 18% 52% 28%
    }

    55% {
        transform: translateY(2px) scale(1.08, .9);
        border-radius: 22% 48% 26% 52%
    }

    80% {
        border-radius: 12% 30% 45% 20%
    }
}

@keyframes kqMicroFlick {

    0%,
    96.5%,
    100% {
        opacity: 1
    }

    97% {
        opacity: .8
    }

    97.6% {
        opacity: 1
    }

    98.4% {
        opacity: .88
    }
}

@keyframes kqGhost {

    0%,
    100% {
        opacity: .55;
        transform: translateY(0)
    }

    30% {
        opacity: .3;
        transform: translateY(-2px)
    }

    60% {
        opacity: .6;
        transform: translateY(1px)
    }

    80% {
        opacity: .35;
        transform: translateY(-1px)
    }
}

@keyframes kqBloodSeg {

    0%,
    88%,
    100% {
        opacity: 0;
        left: 34%
    }

    89%,
    92% {
        opacity: .9;
        left: 34%
    }

    93% {
        opacity: 0
    }

    44%,
    47% {
        opacity: .8;
        left: 61%
    }

    48% {
        opacity: 0
    }
}

@keyframes kqBarJit {

    0%,
    90%,
    100% {
        transform: scaleX(1)
    }

    91% {
        transform: scaleX(.965)
    }

    93% {
        transform: scaleX(1.012)
    }

    95% {
        transform: scaleX(.985)
    }
}

@keyframes kqPowerDying {

    0%,
    100% {
        border-color: rgba(255, 45, 149, 1)
    }

    7% {
        border-color: rgba(255, 45, 149, .3)
    }

    9% {
        border-color: rgba(255, 45, 149, .95)
    }

    13% {
        border-color: rgba(255, 45, 149, .35)
    }

    15% {
        border-color: rgba(255, 45, 149, 1)
    }

    54% {
        border-color: rgba(255, 45, 149, .9)
    }

    57% {
        border-color: rgba(255, 45, 149, .3)
    }

    60% {
        border-color: rgba(255, 45, 149, 1)
    }
}

@keyframes kqLeakSweep {
    0% {
        top: 8%;
        opacity: 0
    }

    6% {
        opacity: .7
    }

    40% {
        top: 78%;
        opacity: .5
    }

    46% {
        opacity: 0
    }

    100% {
        top: 78%;
        opacity: 0
    }
}

@keyframes kqWFlick {

    0%,
    100% {
        opacity: .85
    }

    12% {
        opacity: .4
    }

    14% {
        opacity: .85
    }

    52% {
        opacity: .7
    }

    54% {
        opacity: .3
    }

    56% {
        opacity: .8
    }
}

@keyframes kqAberPulse {

    0%,
    100% {
        text-shadow: 2px 0 0 rgba(255, 20, 20, .7), -2px 0 0 rgba(62, 224, 255, .6)
    }

    50% {
        text-shadow: 5px 0 0 rgba(255, 20, 20, .85), -5px 0 0 rgba(62, 224, 255, .75), 0 0 10px rgba(255, 45, 149, .5)
    }
}

/* cyber-demon life signs */
@keyframes kqCrackFlick {

    0%,
    100% {
        opacity: .85
    }

    42% {
        opacity: .35
    }

    44% {
        opacity: .85
    }

    70% {
        opacity: .55
    }
}

@keyframes kqThirdEye {

    0%,
    100% {
        filter: drop-shadow(0 0 6px #ff1414);
        transform: translateX(-50%) scale(1)
    }

    50% {
        filter: drop-shadow(0 0 16px #ff1414);
        transform: translateX(-50%) scale(1.18)
    }
}

.kq-lp .kq-cursor {
    animation: kqBlink 1s step-end infinite
}

.kq-lp .kq-meta .kq-online i,
.kq-lp .kq-term-head em,
.kq-lp .kq-boss-live em,
.kq-lp .kq-count em {
    animation: kqBlink 1.2s step-end infinite
}

@media(prefers-reduced-motion:no-preference) {
    .kq-lp .kq-marquee {
        animation: kqMarquee 24s linear infinite
    }

    .kq-lp .kq-alert--p .kq-marquee {
        animation: kqMarquee 18s linear infinite reverse
    }

    .kq-lp .kq-log-scroll {
        animation: kqLogUp 14s linear infinite
    }

    .kq-lp .kq-boss {
        animation: critical-pulse 3s infinite
    }

    /* robot */
    .kq-lp .kq-bot-in {
        animation: kqBotFloat 5s ease-in-out infinite
    }

    .kq-lp .kq-bot .kq-eye--l {
        animation: kqBotEyes 5s ease-in-out infinite
    }

    .kq-lp .kq-bot .kq-eye--r {
        animation: kqBotEyesR 5s ease-in-out infinite
    }

    .kq-lp .kq-bot .kq-core {
        animation: kqCore 2.4s ease-in-out infinite
    }

    .kq-lp .kq-bot--evil .kq-bot-in {
        animation: kqBotFloat 5s ease-in-out infinite, kqBotTwitch 6s steps(1) infinite
    }

    .kq-lp .kq-bot--evil .kq-eye--l,
    .kq-lp .kq-bot--evil .kq-eye--r {
        animation: none
    }

    .kq-lp .kq-bot--evil .kq-core {
        animation: kqCoreEvil 3.5s steps(1) infinite
    }

    /* escalating automatic glitches */
    .kq-lp .kq-g1 {
        animation: kqG1 13s steps(1) infinite
    }

    .kq-lp .kq-g2 {
        animation: kqG2 8s steps(1) infinite
    }

    .kq-lp .kq-g3 {
        animation: kqG3 4.5s steps(1) infinite
    }

    /* loop rings & drifting infinity bands */
    .kq-lp .kq-ring {
        animation: kqSpinLoop 16s linear infinite
    }

    .kq-lp .kq-ring--p {
        animation: kqSpinLoop 9s linear infinite reverse
    }

    /* banner orbit rings */
    .kq-lp .kq-orbit {
        animation: kqSpinLoop 12s linear infinite
    }

    .kq-lp .kq-orbit--2 {
        animation: kqSpinLoop 19s linear infinite reverse
    }

    .kq-lp .kq-loopband span {
        animation: kqMarquee 46s linear infinite
    }

    .kq-lp .kq-loopband--2 span {
        animation: kqMarquee 32s linear infinite reverse
    }

    .kq-lp .kq-loopband--3 span {
        animation: kqMarquee 15s steps(28) infinite reverse
    }

    /* signal dropouts & blur pulses, stronger near the bottom */
    .kq-lp .kq-drop2 {
        animation: kqDropout 12s steps(1) infinite
    }

    .kq-lp .kq-drop3 {
        animation: kqDropout 6.5s steps(1) infinite
    }

    .kq-lp .kq-blur3 {
        animation: kqBlurPulse 7s infinite
    }

    /* CRT jitter */
    .kq-lp::before {
        animation: kqScanlines .2s linear infinite
    }

    /* head beacon: calm on the friendly unit, erratic on the corrupted one */
    .kq-lp .kq-bot-in::before {
        animation: kqBlink 2.2s step-end infinite
    }

    .kq-lp .kq-bot--evil .kq-bot-in::before {
        animation: kqCoreEvil 3.5s steps(1) infinite
    }

    /* unstable crack glow + pulsing third eye + furious pupil + smug grin */
    .kq-lp .kq-bot--evil .kq-face::after {
        animation: kqCrackFlick .9s steps(2) infinite
    }

    .kq-lp .kq-bot--evil .kq-eye--c {
        animation: kqThirdEye 1.6s ease-in-out infinite
    }

    .kq-lp .kq-bot--evil .kq-eye--c::after {
        animation: kqAngryPupil .9s steps(1) infinite
    }

    .kq-lp .kq-smirk {
        animation: kqSmirkTwitch 6s steps(1) infinite
    }

    /* unstable boss health */
    .kq-lp .kq-hpbig-fill {
        animation: kqHpPulse 2s infinite ease-in-out
    }

    /* revealed text flickers but stays readable */
    .kq-lp .kq-decrypt:hover .kq-clear-text {
        animation: kqReveal .35s ease-in-out infinite
    }

    /* stage-3 contamination */
    .kq-lp .kq-node--p {
        animation: kqNodeShake 4.5s steps(1) infinite
    }

    .kq-lp .kq-node--y {
        animation: kqPupil 3.8s ease-in-out infinite
    }

    .kq-lp .kq-node--w {
        animation: kqBleed 5s ease-in-out infinite
    }

    .kq-lp .kq-mf {
        animation: kqMicroFlick 7s steps(1) infinite
    }

    .kq-lp .kq-grid6 .kq-down {
        animation: kqGhost 4s ease-in-out infinite
    }

    .kq-lp .kq-bar--sick::before {
        animation: kqBloodSeg 3.7s steps(1) infinite
    }

    .kq-lp .kq-bar--sick .kq-bar-fill {
        animation: kqBarJit 5.5s steps(1) infinite
    }

    .kq-lp .kq-dying {
        animation: kqPowerDying 2.8s steps(1) infinite
    }

    .kq-lp .kq-leak .kq-leakline {
        animation: kqLeakSweep 3.2s linear infinite
    }

    .kq-lp .kq-whisper--evil {
        animation: kqWFlick 4.2s steps(1) infinite
    }

    .kq-lp .kq-abpulse {
        animation: kqAberPulse 1.8s ease-in-out infinite
    }

    /* censored wave bands: jitter + sliding data-tear */
    .kq-lp .kq-censor {
        animation: kqCensorJit 3.4s steps(1) infinite
    }

    .kq-lp .kq-censor::after {
        animation: kqCensorTear 2.6s linear infinite
    }

    .kq-lp .kq-censor--p {
        animation-duration: 4.2s;
        animation-delay: .5s
    }

    .kq-lp .kq-censor--y {
        animation-duration: 2.9s;
        animation-delay: 1s
    }
}

@keyframes kqCensorJit {

    0%,
    89%,
    100% {
        transform: translate(0, 0);
        clip-path: inset(0)
    }

    90% {
        transform: translate(-3px, 0);
        clip-path: inset(28% 0 44% 0)
    }

    92% {
        transform: translate(2px, 0);
        clip-path: inset(58% 0 12% 0)
    }

    94% {
        transform: translate(-1px, 0);
        clip-path: inset(8% 0 68% 0)
    }

    96% {
        transform: translate(1px, 0);
        clip-path: inset(0)
    }
}

@keyframes kqCensorTear {
    0% {
        left: -30%
    }

    100% {
        left: 120%
    }
}

@keyframes kqRiseT1 {
    from {
        opacity: 0;
        transform: translateY(22px) rotate(.35deg)
    }

    to {
        opacity: 1;
        transform: rotate(.35deg)
    }
}

@supports (animation-timeline: view()) {
    .kq-lp .kq-sec {
        animation: kqRise both;
        animation-timeline: view();
        animation-range: entry 0% entry 40%
    }

    .kq-lp .kq-rise {
        animation: kqRise both;
        animation-timeline: view();
        animation-range: entry 0% entry 55%
    }

    .kq-lp .kq-rise.kq-tilt1 {
        animation-name: kqRiseT1
    }
}

@media(prefers-reduced-motion:reduce) {

    .kq-lp .kq-cursor,
    .kq-lp .kq-marquee,
    .kq-lp .kq-log-scroll,
    .kq-lp .kq-boss,
    .kq-lp .kq-bot-in,
    .kq-lp .kq-eye--l,
    .kq-lp .kq-eye--r,
    .kq-lp .kq-core,
    .kq-lp .kq-g1,
    .kq-lp .kq-g2,
    .kq-lp .kq-g3,
    .kq-lp .kq-ring,
    .kq-lp .kq-ring--p,
    .kq-lp .kq-orbit,
    .kq-lp .kq-orbit--2,
    .kq-lp .kq-loopband span,
    .kq-lp .kq-drop2,
    .kq-lp .kq-drop3,
    .kq-lp .kq-blur3,
    .kq-lp::before,
    .kq-lp .kq-bot-in::before,
    .kq-lp .kq-bot--evil .kq-face::after,
    .kq-lp .kq-bot--evil .kq-eye--c,
    .kq-lp .kq-bot--evil .kq-eye--c::after,
    .kq-lp .kq-smirk,
    .kq-lp .kq-hpbig-fill,
    .kq-lp .kq-node--p,
    .kq-lp .kq-node--y,
    .kq-lp .kq-node--w,
    .kq-lp .kq-mf,
    .kq-lp .kq-grid6 .kq-down,
    .kq-lp .kq-bar--sick::before,
    .kq-lp .kq-bar--sick .kq-bar-fill,
    .kq-lp .kq-dying,
    .kq-lp .kq-leak .kq-leakline,
    .kq-lp .kq-whisper--evil,
    .kq-lp .kq-abpulse,
    .kq-lp .kq-meta .kq-online i,
    .kq-lp .kq-term-head em,
    .kq-lp .kq-boss-live em,
    .kq-lp .kq-count em,
    .kq-lp .kq-vsspark,
    .kq-lp .kq-vshield::after,
    .kq-lp .kq-dropmic,

    .kq-lp .kq-sec,
    .kq-lp .kq-rise {
        animation: none
    }
}