.js-vue-placeholder:not(.init) + .quiz {
    display: none;
}

.js-quiz-tail-scope {
    position: relative;
    overflow: hidden;
    background: #040404;
}

.js-quiz-tail-scope > * {
    position: relative;
    z-index: 1;
}

.js-quiz-tail-scope canvas {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    pointer-events: none !important;
}


.error-box {
    position: absolute;
    bottom: auto;
    left: -1.875rem;
    color: #ffffff;
    z-index: 3;
    font-size: 0.875rem;
    background: #b50808;
    text-align: center;
    width: calc(100% + 3.75rem);
    padding-top: 0.9375rem;
    top: 1.25rem;
}


.active-err .content-block__nav button:not(.btn-brd) {
    background: #b50808;
}
.quiz-form__content {
    width: 100%;
}

/* Подчёркивание «3 вопроса» во вводном заголовке — 1:1 с новым квизом (/kviz/, quiz-form-page/style.css). */
.decor-item {
    display: inline;
    white-space: nowrap;
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 5px;
    text-decoration-skip-ink: none;
}

@media only screen and (max-width: 1199px) {
    .def-form__title .decor-item {
        text-underline-offset: 4px;
        text-decoration-thickness: 1px;
    }
}

/* Последний вариант ответа, если остался один в ряду, — на всю ширину сетки. */
.quiz .btn-list--st-2 .btn-list__item:last-child:nth-child(odd) {
    grid-column: 1 / -1;
}

.nav-btn-block {
    max-width: 100%!important;
}

/* Quiz: show each error under its own field row (static flow). */
.quiz .quiz-form .d-form__row {
    position: relative;
}

.quiz .quiz-form .d-form__row label.error,
.quiz .quiz-form .d-form__row .form-err,
.quiz .quiz-form .form-check label.error,
.quiz .quiz-form .form-check .form-err {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0.375rem 0.75rem !important;
    color: #ffffff !important;
    border: none !important;
    background: #000000 !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

.quiz .quiz-form label.error::before,
.quiz .quiz-form .form-err::before {
    display: none !important;
}

@media only screen and (min-width: 1200px) {
    .error-box {
        top: initial;
        bottom: 0;
        left: 2.5rem;
        color: #b50808;
        background: #ffffff;
        font-size: 1rem;
        width: fit-content;
    }

    .quiz-form__image {
        height: 100%!important
    }
    .quiz-form {
        min-height:  735px;
        width: 100%;
    }

    .quiz-form__image {
        position: relative;
        width: 100% !important;
        height: 100% !important;
    }
    .quiz-form__img {
               position: absolute;
                width: 100%;
                height: 100%;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                object-fit: cover;
    }

}

.js-quiz-tail-scope .quiz-form {
    position: relative;
    opacity: 0;
    transform: translate3d(0, 34px, 0) scale(0.985);
    transition: transform 860ms cubic-bezier(.2,.75,.2,1), opacity 860ms cubic-bezier(.2,.75,.2,1);
    transform-origin: 50% 60%;
    will-change: transform, opacity, filter;
}

.js-quiz-tail-scope.is-inview .quiz-form {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}
/*
.js-quiz-tail-scope .quiz-form::before {
    content: "";
    position: absolute;
    inset: -1px;
    pointer-events: none;
    border: 1px solid rgba(144, 240, 255, 0.24);
    box-shadow:
        0 0 24px rgba(96, 220, 255, 0.1),
        0 0 56px rgba(110, 255, 214, 0.08);
    opacity: 0;
    transition: opacity 680ms ease;
}
*/
.js-quiz-tail-scope.is-inview .quiz-form::before {
    opacity: 0.68;
    animation: quizNeonPulse 5.6s ease-in-out infinite;
}

.js-quiz-tail-scope .quiz-form__content.quiz-content-anim-in {
    animation: quizCardEnter 620ms cubic-bezier(.2,.75,.2,1) both;
}

.js-quiz-tail-scope .quiz-form__content.quiz-content-anim-in::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(120% 80% at 10% 0%, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, 0) 46%);
    animation: quizCardLightSweep 740ms cubic-bezier(.2,.75,.2,1) both;
}

@media only screen and (max-width: 991px) {
    .js-quiz-tail-scope .quiz-form {
        transform: translate3d(0, 16px, 0) scale(0.992);
        transition: transform 560ms cubic-bezier(.2,.75,.2,1), opacity 560ms cubic-bezier(.2,.75,.2,1);
        will-change: auto;
    }

    .js-quiz-tail-scope .quiz-form__content.quiz-content-anim-in {
        animation-duration: 420ms;
    }

    .js-quiz-tail-scope .quiz-form__content.quiz-content-anim-in::after {
        animation: none;
    }
}

.js-quiz-tail-scope .quiz-form__image,
.js-quiz-tail-scope .quiz-form__img {
    animation: none !important;
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
}

@keyframes quizCardEnter {
    0% {
        opacity: 1;
        transform: translate3d(0, 24px, 0) scale(.985);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes quizCardLightSweep {
    0% {
        opacity: 0;
        transform: translate3d(-2%, 2%, 0) scale(1.02);
    }
    35% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translate3d(1%, -1%, 0) scale(1);
    }
}

@keyframes quizNeonPulse {
    0% {
        opacity: 0.48;
        box-shadow:
            0 0 22px rgba(96, 220, 255, 0.08),
            0 0 46px rgba(110, 255, 214, 0.06);
    }
    50% {
        opacity: 0.72;
        box-shadow:
            0 0 30px rgba(96, 220, 255, 0.12),
            0 0 64px rgba(110, 255, 214, 0.1);
    }
    100% {
        opacity: 0.52;
        box-shadow:
            0 0 24px rgba(96, 220, 255, 0.09),
            0 0 50px rgba(110, 255, 214, 0.07);
    }
}

@media (prefers-reduced-motion: reduce) {
    .js-quiz-tail-scope .quiz-form,
    .js-quiz-tail-scope .quiz-form * {
        transform: none !important;
        opacity: 1 !important;
        animation: none !important;
        transition: none !important;
    }
}
