/* БАЗА */
html,
body {
    margin: 0;
    padding: 0;
    height: 100%;
    overflow: hidden;
}

body {
    font-family: "Inter", sans-serif;
    background: #000;
    position: relative;
}

/* ФОН (твой арт) */
.bg {
    position: fixed;
    inset: 0;
    background: url("/assets/Copilot_20260524_185407.png") center/cover no-repeat;
    filter: blur(1px);
    opacity: 0.9;
    pointer-events: none;
    z-index: 0;
}

/* СЦЕНА */
.scene {
    position: relative;
    z-index: 1;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ПЕЧАТЬ ШАРИНГАНА: ПРИЗЫВ */
.sharingan-seal {
    position: relative;
    width: 280px;
    height: 280px;
}

/* Тёмная база круга */
.seal-base {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 35%, rgba(40, 0, 60, 0.95), rgba(5, 0, 10, 0.95));
    box-shadow:
        0 0 40px rgba(0, 0, 0, 0.9),
        0 0 60px rgba(40, 0, 80, 0.9);
}

/* Внешнее и внутреннее кольца */
.seal-ring {
    position: absolute;
    border-radius: 50%;
    border: 2px solid rgba(255, 0, 80, 0.9);
    box-shadow:
        0 0 18px rgba(255, 0, 80, 0.9),
        0 0 30px rgba(150, 0, 255, 0.7);
}

.seal-ring.outer {
    inset: 6px;
    animation: ringOuter 7s linear infinite;
}

.seal-ring.inner {
    inset: 40px;
    border-color: rgba(180, 0, 255, 0.9);
    box-shadow:
        0 0 14px rgba(180, 0, 255, 0.9),
        0 0 26px rgba(255, 0, 120, 0.7);
    animation: ringInner 5s linear infinite;
}

/* Руны по окружности */
.seal-runes {
    position: absolute;
    inset: 18px;
    border-radius: 50%;
    background:
        repeating-conic-gradient(from 0deg,
            transparent 0deg 10deg,
            rgba(255, 180, 220, 0.9) 10deg 12deg);
    mix-blend-mode: screen;
    opacity: 0.35;
    filter: brightness(0.6);
    animation: runesJitter 2.4s infinite ease-in-out;
}



/* Ядро печати */
.seal-core {
    position: absolute;
    inset: 70px;
    border-radius: 50%;
    background:
        radial-gradient(circle, rgba(20,0,30,0.85), rgba(60,0,90,0.4) 60%, transparent 80%);
  opacity: 0.7;
  filter: blur(8px);
      animation: corePulse 2s infinite ease-in-out;
}

/* ТЕКСТ LOADING (аниме-стиль) */
.loading-text {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;

    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 46px;
    text-transform: uppercase;
    letter-spacing: 8px;

    /* Цвет текста */
    color: #fff;

    /* Двойной контур */
    -webkit-text-stroke: 2px #ff65bf;

    /* Аниме‑свечение */
    text-shadow:
        0 0 8px #ff0044,
        0 0 18px #b300ff,
        0 0 32px #ff0044,
        0 0 60px rgba(255, 0, 120, 1);

    /* Эффект появления */
    opacity: 0;
    transform: scale(0.8) translateY(20px);
    animation:
        animeIntro 1.4s ease-out forwards,
        animeGlow 2.4s ease-in-out infinite 1.4s,
        animeVibe 0.12s infinite 1.4s;
}

/* Появление текста как в аниме‑опенингах */
@keyframes animeIntro {
    0% {
        opacity: 0;
        transform: scale(0.8) translateY(20px);
        filter: blur(6px);
    }

    40% {
        opacity: 1;
        transform: scale(1.05) translateY(0);
        filter: blur(1px);
    }

    60% {
        transform: scale(0.95);
    }

    100% {
        opacity: 1;
        transform: scale(1);
        filter: blur(0);
    }
}

/* Пульсация чакры */
@keyframes animeGlow {

    0%,
    100% {
        text-shadow:
            0 0 8px #ff0044,
            0 0 18px #b300ff,
            0 0 32px #ff0044,
            0 0 60px rgba(255, 0, 120, 1);
    }

    50% {
        text-shadow:
            0 0 14px #ff3388,
            0 0 28px #cc33ff,
            0 0 45px #ff3388,
            0 0 80px rgba(255, 0, 150, 1);
    }
}

/* Лёгкая аниме‑вибрация */
@keyframes animeVibe {
    0% {
        transform: translate(0, 0);
    }

    25% {
        transform: translate(-1px, 0.5px);
    }

    50% {
        transform: translate(1px, -0.5px);
    }

    75% {
        transform: translate(-0.5px, 1px);
    }

    100% {
        transform: translate(0, 0);
    }
}

/* АНИМАЦИИ */
@keyframes ringOuter {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes ringInner {
    0% {
        transform: rotate(360deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

@keyframes runesJitter {

    0%,
    100% {
        transform: rotate(0deg);
        opacity: 0.7;
    }

    30% {
        transform: rotate(2deg);
        opacity: 1;
    }

    60% {
        transform: rotate(-1.5deg);
        opacity: 0.8;
    }
}

@keyframes lightningArc {
    0% {
        opacity: 0.2;
        filter: blur(1px);
    }

    40% {
        opacity: 0.9;
        filter: blur(0.5px);
    }

    100% {
        opacity: 0.3;
        filter: blur(1px);
    }
}

@keyframes corePulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.8;
    }

    50% {
        transform: scale(1.12);
        opacity: 1;
    }
}

@keyframes textFlicker {

    0%,
    100% {
        opacity: 1;
    }

    40% {
        opacity: 0.65;
    }

    60% {
        opacity: 0.9;
    }
}

@keyframes textGlitch {
    0% {
        transform: translate(0, 0);
    }

    20% {
        transform: translate(-1px, 0);
    }

    40% {
        transform: translate(1px, 1px);
    }

    60% {
        transform: translate(0, -1px);
    }

    80% {
        transform: translate(-1px, 1px);
    }

    100% {
        transform: translate(0, 0);
    }
}