* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #070100;
  font-family: Arial, sans-serif;
}

.scene {
  position: fixed;
  inset: 0;
  overflow: hidden;
  background: #070100;
}

/* Задний слой: всегда закрывает весь экран, чтобы не было пустоты сверху/снизу */
.bg-fill {
  position: absolute;
  inset: -10%;
  background-image: url("assets/bg.png");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  filter: blur(18px) brightness(0.82) contrast(1.12) saturate(1.35);
  transform: scale(1.14);
  opacity: 1;
}

/* Основной слой: на ПК во весь экран */
.bg-layer {
  position: absolute;
  inset: 0;
  background-image: url("assets/bg.png");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: transparent;
  filter: brightness(1.08) contrast(1.15) saturate(1.45);
  transform: scale(1.025);
  animation: volcanicBreath 8s ease-in-out infinite;
  will-change: transform, filter;
}

/* Дыхание жара */
@keyframes volcanicBreath {
  0%, 100% {
    transform: scale(1.025);
    filter: brightness(1.00) contrast(1.12) saturate(1.35);
  }
  50% {
    transform: scale(1.055);
    filter: brightness(1.18) contrast(1.18) saturate(1.58);
  }
}

/* Лавовый засвет */
.lava-sky {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 82%, rgba(255, 77, 0, 0.30), transparent 46%),
    radial-gradient(circle at 50% 45%, rgba(255, 188, 69, 0.18), transparent 52%),
    linear-gradient(to top, rgba(255, 53, 0, 0.16), transparent 42%);
  mix-blend-mode: screen;
  animation: lavaSkyPulse 5s ease-in-out infinite;
  pointer-events: none;
}

@keyframes lavaSkyPulse {
  0%, 100% { opacity: 0.42; filter: blur(4px); }
  50% { opacity: 0.72; filter: blur(9px); }
}

/* Свет феникса */
.light-core {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 46%,
      rgba(255, 238, 166, 0.34) 0%,
      rgba(255, 154, 33, 0.25) 13%,
      rgba(255, 64, 0, 0.13) 31%,
      rgba(255, 36, 0, 0.05) 48%,
      transparent 70%);
  mix-blend-mode: screen;
  filter: blur(14px);
  animation: corePulse 3.8s ease-in-out infinite;
  pointer-events: none;
}

@keyframes corePulse {
  0%, 100% {
    opacity: 0.58;
    transform: scale(0.98);
    filter: blur(14px);
  }
  48% {
    opacity: 0.9;
    transform: scale(1.05);
    filter: blur(22px);
  }
}

/* Свечение крыльев */
.wing-glow {
  position: absolute;
  width: 44vw;
  height: 42vh;
  top: 22%;
  border-radius: 50%;
  opacity: 0.55;
  background:
    radial-gradient(ellipse at center,
      rgba(255, 203, 93, 0.18) 0%,
      rgba(255, 90, 10, 0.12) 34%,
      transparent 70%);
  filter: blur(20px);
  mix-blend-mode: screen;
  pointer-events: none;
  animation: wingsBeat 4s ease-in-out infinite;
}

.wing-left {
  left: 3%;
  transform-origin: 80% 50%;
}

.wing-right {
  right: 3%;
  transform-origin: 20% 50%;
  animation-delay: 0.08s;
}

@keyframes wingsBeat {
  0%, 100% {
    transform: rotate(-2deg) scale(0.96);
    opacity: 0.42;
  }
  50% {
    transform: rotate(3deg) scale(1.06);
    opacity: 0.72;
  }
}

/* Жар */
.heat {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 72%, rgba(255, 86, 0, 0.12), transparent 48%),
    repeating-linear-gradient(
      90deg,
      rgba(255, 183, 64, 0.022) 0px,
      rgba(255, 183, 64, 0.0) 8px,
      rgba(255, 72, 0, 0.018) 17px
    );
  mix-blend-mode: screen;
  filter: blur(6px);
  animation: heatWave 3.5s linear infinite;
  pointer-events: none;
}

@keyframes heatWave {
  0% { transform: translateX(-10px) skewX(-1deg); opacity: 0.28; }
  50% { transform: translateX(11px) skewX(1deg); opacity: 0.52; }
  100% { transform: translateX(-10px) skewX(-1deg); opacity: 0.28; }
}

/* Лава снизу */
.lava-flow {
  position: absolute;
  left: -10%;
  right: -10%;
  bottom: -12%;
  height: 34%;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 190, 70, 0.34), rgba(255, 74, 0, 0.18) 26%, transparent 66%),
    repeating-linear-gradient(
      115deg,
      rgba(255, 208, 95, 0.0) 0px,
      rgba(255, 208, 95, 0.12) 12px,
      rgba(255, 47, 0, 0.06) 25px,
      rgba(255, 208, 95, 0.0) 45px
    );
  mix-blend-mode: screen;
  filter: blur(8px);
  opacity: 0.58;
  animation: lavaMove 7s linear infinite;
  pointer-events: none;
}

@keyframes lavaMove {
  0% { transform: translateX(-3%) translateY(0); opacity: 0.44; }
  50% { transform: translateX(3%) translateY(-3%); opacity: 0.72; }
  100% { transform: translateX(-3%) translateY(0); opacity: 0.44; }
}

/* Дым */
.smoke {
  position: absolute;
  inset: -10%;
  background:
    radial-gradient(circle at 30% 70%, rgba(148, 80, 37, 0.15), transparent 36%),
    radial-gradient(circle at 72% 28%, rgba(116, 62, 42, 0.12), transparent 38%),
    radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.10));
  filter: blur(12px);
  animation: smokeMove 14s ease-in-out infinite alternate;
  pointer-events: none;
}

@keyframes smokeMove {
  0% { transform: translate(-1%, 1%) scale(1.04); opacity: 0.28; }
  100% { transform: translate(1.6%, -1.2%) scale(1.12); opacity: 0.52; }
}

/* Без чёрных полос, только лёгкое затемнение краёв */
.vignette {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 48%, transparent 44%, rgba(0,0,0,0.10) 80%, rgba(0,0,0,0.24) 100%);
  pointer-events: none;
}

#embers,
#lava {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

#lava {
  mix-blend-mode: screen;
}

/* Красивый мобильный режим: заполняем экран, но не оставляем пустую верх/низ */


/*
  Очень узкие телефоны.
  Если буквы по краям всё ещё критичны, поменяй background-position:
  center center -> 48% center или 52% center.
*/


/* Горизонтальная ориентация телефона */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона — обычный desktop-фон */



/* Молнии сверху и оживление большого феникса слева */
.mobile-lightning {
  display: none;
}

.phoenix-left-aura {
  position: absolute;
  left: -12%;
  top: 12%;
  width: 62vw;
  height: 64vh;
  border-radius: 50%;
  background:
    radial-gradient(ellipse at 45% 48%,
      rgba(255, 221, 112, 0.26) 0%,
      rgba(255, 95, 0, 0.22) 22%,
      rgba(255, 32, 0, 0.11) 48%,
      transparent 72%);
  mix-blend-mode: screen;
  filter: blur(18px);
  opacity: 0.68;
  animation: phoenixAlive 3.2s ease-in-out infinite;
  pointer-events: none;
}

.phoenix-wing-breath {
  position: absolute;
  left: -8%;
  top: 4%;
  width: 54vw;
  height: 46vh;
  background:
    radial-gradient(ellipse at 55% 60%,
      rgba(255, 170, 31, 0.20) 0%,
      rgba(255, 58, 0, 0.14) 34%,
      transparent 72%);
  mix-blend-mode: screen;
  filter: blur(20px);
  opacity: 0.5;
  transform-origin: 75% 70%;
  animation: wingBreathBig 4.2s ease-in-out infinite;
  pointer-events: none;
}

@keyframes phoenixAlive {
  0%, 100% {
    opacity: 0.46;
    transform: scale(0.96) rotate(-1deg);
    filter: blur(16px);
  }
  50% {
    opacity: 0.95;
    transform: scale(1.08) rotate(1.5deg);
    filter: blur(26px);
  }
}

@keyframes wingBreathBig {
  0%, 100% {
    opacity: 0.34;
    transform: scale(0.96) rotate(-2deg);
  }
  50% {
    opacity: 0.82;
    transform: scale(1.10) rotate(3deg);
  }
}



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона — обычный desktop-фон */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона — обычный desktop-фон */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона */



/* Очень узкие телефоны */


/* Горизонтальная ориентация телефона */



/* Очень узкие телефоны */





/* Очень узкие телефоны */





/* Очень узкие телефоны */



.mobile-title {
  display: none;
}

@media (max-width: 768px) {
  .bg-fill {
    display: none;
  }

  .bg-layer {
    background-image: url("assets/bg_mobile.png");
    background-size: cover;
    background-position: center center;
    transform: scale(1);
    animation: mobileBreathLite 12s ease-in-out infinite;
    filter: brightness(1.01) contrast(1.04) saturate(1.10);
    will-change: transform;
  }

  @keyframes mobileBreathLite {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.003); }
  }

  .mobile-title {
    display: block;
    position: absolute;
    z-index: 8;

    /*
      Позиция специально слева и сверху:
      над головой большого феникса, но не на самом фениксе.
    */
    top: clamp(86px, 10.8vh, 168px);
    left: clamp(22px, 6.2vw, 54px);
    width: min(62vw, 560px);

    text-align: center;
    pointer-events: none;
    font-family: Georgia, "Times New Roman", serif;
    text-transform: uppercase;
    animation: titleCleanGlow 3.8s ease-in-out infinite;
    will-change: opacity, transform;
  }

  .mobile-title-main {
    font-size: clamp(35px, 9.8vw, 72px);
    line-height: 0.92;
    letter-spacing: 0.12em;
    font-weight: 400;

    color: #f8df9d;
    -webkit-text-stroke: 0.9px rgba(82, 42, 12, 0.78);
    text-shadow:
      0 1px 0 rgba(255, 249, 213, 0.85),
      0 0 4px rgba(255, 225, 145, 0.82),
      0 0 10px rgba(255, 145, 28, 0.52),
      0 0 18px rgba(255, 70, 0, 0.34);
  }

  .mobile-title-sub {
    margin-top: clamp(6px, 0.9vh, 12px);
    font-size: clamp(17px, 4.2vw, 32px);
    line-height: 1;
    letter-spacing: 0.18em;
    font-weight: 400;

    color: #f4d78f;
    -webkit-text-stroke: 0.5px rgba(82, 42, 12, 0.72);
    text-shadow:
      0 1px 0 rgba(255, 249, 213, 0.72),
      0 0 4px rgba(255, 218, 130, 0.64),
      0 0 9px rgba(255, 138, 30, 0.42),
      0 0 15px rgba(255, 72, 0, 0.26);
  }

  @keyframes titleCleanGlow {
    0%, 100% {
      opacity: 0.88;
      transform: scale(0.998);
    }
    50% {
      opacity: 1;
      transform: scale(1.006);
    }
  }

  .mobile-lightning {
    display: none;
  }

  .phoenix-left-aura {
    left: -42%;
    top: 18%;
    width: 122vw;
    height: 62vh;
    opacity: 0.34;
    filter: blur(9px);
    animation: phoenixAliveLite 5.5s ease-in-out infinite;
  }

  .phoenix-wing-breath {
    left: -36%;
    top: 10%;
    width: 108vw;
    height: 50vh;
    filter: blur(9px);
    opacity: 0.22;
    animation: wingBreathLite 6.2s ease-in-out infinite;
  }

  @keyframes phoenixAliveLite {
    0%, 100% { opacity: 0.26; transform: scale(0.98); }
    50% { opacity: 0.42; transform: scale(1.03); }
  }

  @keyframes wingBreathLite {
    0%, 100% { opacity: 0.16; transform: scale(0.98); }
    50% { opacity: 0.30; transform: scale(1.04); }
  }

  .lava-sky {
    background:
      radial-gradient(circle at 50% 8%, rgba(255, 112, 0, 0.045), transparent 40%),
      radial-gradient(circle at 50% 78%, rgba(255, 77, 0, 0.04), transparent 42%);
  }

  .vignette {
    background:
      radial-gradient(circle at 50% 48%, transparent 64%, rgba(0,0,0,0.035) 90%, rgba(0,0,0,0.08) 100%);
  }

  .lava-flow {
    height: 16%;
    opacity: 0.12;
    filter: blur(4px);
  }

  .wing-glow {
    width: 52vw;
    height: 26vh;
    filter: blur(7px);
    opacity: 0.28;
  }

  .light-core {
    filter: blur(6px);
    opacity: 0.20;
  }

  .heat,
  .smoke {
    display: none;
  }
}

/* Очень узкие телефоны */
@media (max-width: 430px) {
  .bg-layer {
    background-image: url("assets/bg_mobile.png");
    background-size: cover;
    background-position: center center;
  }

  .mobile-title {
    top: 88px;
    left: 18px;
    width: 64vw;
  }

  .mobile-title-main {
    font-size: clamp(33px, 9vw, 58px);
    letter-spacing: 0.105em;
  }

  .mobile-title-sub {
    font-size: clamp(15px, 3.8vw, 27px);
  }
}

/* Горизонтальная ориентация телефона */
@media (max-width: 900px) and (orientation: landscape) {
  .bg-fill {
    display: block;
  }

  .mobile-title,
  .mobile-lightning {
    display: none;
  }

  .bg-layer {
    background-image: url("assets/bg.png");
    background-size: cover;
    background-position: center center;
  }
}


/* === FIX: MOBILE TITLE VISIBLE === */
.mobile-title {
  display: none;
}

@media (max-width: 768px) {
  .mobile-title.mobile-title-phoenix-head {
    display: block !important;
    position: absolute !important;
    z-index: 999 !important;

    /* Над головой большого феникса, но не на самом фениксе */
    top: clamp(82px, 10.2vh, 160px) !important;
    left: clamp(20px, 6vw, 52px) !important;
    width: min(64vw, 560px) !important;

    text-align: center !important;
    pointer-events: none !important;
    font-family: Georgia, "Times New Roman", serif !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    animation: titleVisibleGlow 3.8s ease-in-out infinite !important;
  }

  .mobile-title-main {
    display: block !important;
    font-size: clamp(34px, 9.5vw, 72px) !important;
    line-height: 0.92 !important;
    letter-spacing: 0.12em !important;
    font-weight: 400 !important;

    color: #f8df9d !important;
    -webkit-text-stroke: 0.9px rgba(82, 42, 12, 0.78) !important;
    text-shadow:
      0 1px 0 rgba(255, 249, 213, 0.85),
      0 0 4px rgba(255, 225, 145, 0.82),
      0 0 10px rgba(255, 145, 28, 0.52),
      0 0 18px rgba(255, 70, 0, 0.34) !important;
  }

  .mobile-title-sub {
    display: block !important;
    margin-top: clamp(6px, 0.9vh, 12px) !important;
    font-size: clamp(16px, 4vw, 32px) !important;
    line-height: 1 !important;
    letter-spacing: 0.18em !important;
    font-weight: 400 !important;

    color: #f4d78f !important;
    -webkit-text-stroke: 0.5px rgba(82, 42, 12, 0.72) !important;
    text-shadow:
      0 1px 0 rgba(255, 249, 213, 0.72),
      0 0 4px rgba(255, 218, 130, 0.64),
      0 0 9px rgba(255, 138, 30, 0.42),
      0 0 15px rgba(255, 72, 0, 0.26) !important;
  }

  @keyframes titleVisibleGlow {
    0%, 100% {
      opacity: 0.88;
      transform: scale(0.998);
    }
    50% {
      opacity: 1;
      transform: scale(1.006);
    }
  }
}

@media (max-width: 430px) {
  .mobile-title.mobile-title-phoenix-head {
    top: 86px !important;
    left: 18px !important;
    width: 66vw !important;
  }

  .mobile-title-main {
    font-size: clamp(32px, 8.8vw, 58px) !important;
    letter-spacing: 0.105em !important;
  }

  .mobile-title-sub {
    font-size: clamp(15px, 3.7vw, 27px) !important;
  }
}

@media (max-width: 900px) and (orientation: landscape) {
  .mobile-title.mobile-title-phoenix-head {
    display: none !important;
  }
}


/* === PROFESSIONAL MOBILE LINEAGE TITLE === */
.mobile-title {
  display: none;
}

@media (max-width: 768px) {
  .mobile-title.mobile-title-phoenix-head {
    display: block !important;
    position: absolute !important;
    z-index: 999 !important;

    /* Над головой большого феникса, без захода на него */
    top: clamp(76px, 9.5vh, 148px) !important;
    left: clamp(18px, 5.5vw, 50px) !important;
    width: min(66vw, 570px) !important;

    pointer-events: none !important;
    text-align: center !important;
    text-transform: uppercase !important;

    font-family:
      "Cinzel",
      "Trajan Pro",
      "Times New Roman",
      Georgia,
      serif !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform-origin: center center !important;
    animation: proTitleBreath 4.8s ease-in-out infinite !important;
    will-change: opacity, transform !important;
  }

  .mobile-title-main {
    display: block !important;
    position: relative !important;

    font-size: clamp(36px, 9.8vw, 76px) !important;
    line-height: 0.86 !important;
    letter-spacing: 0.13em !important;
    font-weight: 500 !important;
    font-variant: small-caps !important;

    color: transparent !important;
    background:
      linear-gradient(180deg,
        #fff6c8 0%,
        #f8d783 22%,
        #d99b36 47%,
        #8b4a16 72%,
        #fff0aa 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;

    -webkit-text-stroke: 0.65px rgba(55, 26, 5, 0.95) !important;

    text-shadow:
      0 1px 0 rgba(255, 255, 225, 0.72),
      0 2px 0 rgba(74, 34, 8, 0.92),
      0 0 5px rgba(255, 224, 135, 0.75),
      0 0 12px rgba(255, 150, 38, 0.58),
      0 0 24px rgba(255, 74, 0, 0.36),
      0 0 38px rgba(255, 30, 0, 0.18) !important;

    filter: drop-shadow(0 0 8px rgba(255, 120, 20, 0.35)) !important;
  }

  /* Тонкий верхний бликующий слой — даёт дорогой металлический эффект */
  .mobile-title-main::after {
    content: attr(data-text);
    position: absolute;
    inset: 0;
    color: transparent;
    background:
      linear-gradient(105deg,
        transparent 0%,
        transparent 37%,
        rgba(255, 255, 230, 0.95) 48%,
        rgba(255, 212, 100, 0.38) 54%,
        transparent 66%,
        transparent 100%);
    -webkit-background-clip: text;
    background-clip: text;
    opacity: 0.42;
    animation: titleGoldShine 5.6s ease-in-out infinite;
  }

  .mobile-title-divider {
    width: min(46vw, 390px) !important;
    height: 1px !important;
    margin: clamp(8px, 1.1vh, 13px) auto clamp(7px, 1vh, 12px) !important;

    background:
      linear-gradient(90deg,
        transparent 0%,
        rgba(255, 153, 32, 0.25) 14%,
        rgba(255, 230, 150, 0.95) 50%,
        rgba(255, 153, 32, 0.25) 86%,
        transparent 100%) !important;

    box-shadow:
      0 0 5px rgba(255, 185, 65, 0.70),
      0 0 14px rgba(255, 70, 0, 0.34) !important;
  }

  .mobile-title-sub {
    display: block !important;
    position: relative !important;

    font-size: clamp(15px, 3.9vw, 31px) !important;
    line-height: 1 !important;
    letter-spacing: 0.24em !important;
    font-weight: 500 !important;

    color: transparent !important;
    background:
      linear-gradient(180deg,
        #fff1b6 0%,
        #e7b75d 42%,
        #9d5a1c 76%,
        #ffe6a0 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;

    -webkit-text-stroke: 0.45px rgba(55, 26, 5, 0.92) !important;

    text-shadow:
      0 1px 0 rgba(255, 255, 225, 0.56),
      0 0 4px rgba(255, 219, 128, 0.65),
      0 0 10px rgba(255, 132, 26, 0.48),
      0 0 19px rgba(255, 65, 0, 0.26) !important;
  }

  .mobile-title-sub::before,
  .mobile-title-sub::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    width: min(9vw, 82px) !important;
    height: 1px !important;
    background:
      linear-gradient(90deg,
        transparent,
        rgba(255, 226, 145, 0.92),
        rgba(255, 126, 22, 0.58)) !important;
    box-shadow: 0 0 8px rgba(255, 124, 20, 0.42) !important;
  }

  .mobile-title-sub::before {
    right: calc(100% + 12px) !important;
  }

  .mobile-title-sub::after {
    left: calc(100% + 12px) !important;
    transform: scaleX(-1) !important;
  }

  @keyframes proTitleBreath {
    0%, 100% {
      opacity: 0.92;
      transform: scale(0.996);
    }
    48% {
      opacity: 1;
      transform: scale(1.01);
    }
  }

  @keyframes titleGoldShine {
    0%, 78%, 100% {
      opacity: 0.05;
      transform: translateX(-18%);
    }
    42% {
      opacity: 0.54;
      transform: translateX(18%);
    }
  }
}

@media (max-width: 430px) {
  .mobile-title.mobile-title-phoenix-head {
    top: 82px !important;
    left: 16px !important;
    width: 68vw !important;
  }

  .mobile-title-main {
    font-size: clamp(32px, 8.7vw, 60px) !important;
    letter-spacing: 0.105em !important;
  }

  .mobile-title-sub {
    font-size: clamp(14px, 3.55vw, 26px) !important;
    letter-spacing: 0.20em !important;
  }

  .mobile-title-divider {
    width: 43vw !important;
  }
}

@media (max-width: 900px) and (orientation: landscape) {
  .mobile-title.mobile-title-phoenix-head {
    display: none !important;
  }
}


/* === MOBILE TITLE: IGNITE TEXT, NO MOVEMENT, NO LINES === */
@media (max-width: 768px) {
  .mobile-title.mobile-title-phoenix-head {
    display: block !important;
    position: absolute !important;
    z-index: 999 !important;

    top: clamp(76px, 9.5vh, 148px) !important;
    left: clamp(18px, 5.5vw, 50px) !important;
    width: min(66vw, 570px) !important;

    pointer-events: none !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font-family: "Cinzel", "Trajan Pro", "Times New Roman", Georgia, serif !important;

    opacity: 1 !important;
    visibility: visible !important;

    /* Убрано движение текста */
    transform: none !important;
    animation: none !important;
    will-change: auto !important;
  }

  .mobile-title-divider {
    display: none !important;
  }

  .mobile-title-sub::before,
  .mobile-title-sub::after {
    display: none !important;
    content: none !important;
  }

  .mobile-title-main {
    display: block !important;
    position: relative !important;

    font-size: clamp(36px, 9.8vw, 76px) !important;
    line-height: 0.86 !important;
    letter-spacing: 0.13em !important;
    font-weight: 500 !important;
    font-variant: small-caps !important;

    color: transparent !important;
    background:
      linear-gradient(180deg,
        #fff6c8 0%,
        #f8d783 22%,
        #d99b36 47%,
        #8b4a16 76%,
        #ffeaa6 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;

    -webkit-text-stroke: 0.65px rgba(55, 26, 5, 0.95) !important;

    text-shadow:
      0 1px 0 rgba(255, 255, 225, 0.70),
      0 2px 0 rgba(74, 34, 8, 0.90),
      0 0 5px rgba(255, 210, 115, 0.62),
      0 0 12px rgba(255, 120, 22, 0.36) !important;

    filter: none !important;
    animation: lineageIgniteText 3.8s ease-in-out infinite !important;
  }

  /* Убрали движущийся блик */
  .mobile-title-main::after {
    display: none !important;
    content: none !important;
  }

  /* Свет появляется из самих букв, без движения */
  .mobile-title-main::before {
    content: attr(data-text) !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;

    color: #ffcf64 !important;
    -webkit-text-stroke: 1px rgba(255, 92, 0, 0.35) !important;

    text-shadow:
      0 0 5px rgba(255, 242, 190, 0.0),
      0 0 14px rgba(255, 168, 45, 0.0),
      0 0 28px rgba(255, 75, 0, 0.0),
      0 0 52px rgba(255, 28, 0, 0.0) !important;

    opacity: 0 !important;
    animation: lineageIgniteGlow 3.8s ease-in-out infinite !important;
    pointer-events: none !important;
  }

  .mobile-title-sub {
    display: block !important;
    position: relative !important;

    margin-top: clamp(8px, 1.1vh, 13px) !important;

    font-size: clamp(15px, 3.9vw, 31px) !important;
    line-height: 1 !important;
    letter-spacing: 0.24em !important;
    font-weight: 500 !important;

    color: transparent !important;
    background:
      linear-gradient(180deg,
        #fff1b6 0%,
        #e7b75d 42%,
        #9d5a1c 76%,
        #ffe6a0 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;

    -webkit-text-stroke: 0.45px rgba(55, 26, 5, 0.92) !important;

    text-shadow:
      0 1px 0 rgba(255, 255, 225, 0.52),
      0 0 4px rgba(255, 210, 110, 0.50),
      0 0 9px rgba(255, 118, 22, 0.28) !important;

    animation: classicIgniteText 3.8s ease-in-out infinite !important;
    animation-delay: 0.18s !important;
  }

  .mobile-title-sub::before {
    content: attr(data-text) !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    width: auto !important;
    height: auto !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;

    color: #ffcf64 !important;
    background: none !important;
    -webkit-text-stroke: 0.7px rgba(255, 92, 0, 0.30) !important;
    box-shadow: none !important;

    text-shadow:
      0 0 4px rgba(255, 242, 190, 0.0),
      0 0 11px rgba(255, 168, 45, 0.0),
      0 0 22px rgba(255, 75, 0, 0.0),
      0 0 38px rgba(255, 28, 0, 0.0) !important;

    opacity: 0 !important;
    animation: classicIgniteGlow 3.8s ease-in-out infinite !important;
    animation-delay: 0.18s !important;
    pointer-events: none !important;
  }

  .mobile-title-sub::after {
    display: none !important;
    content: none !important;
  }

  @keyframes lineageIgniteText {
    0%, 100% {
      text-shadow:
        0 1px 0 rgba(255, 255, 225, 0.55),
        0 2px 0 rgba(74, 34, 8, 0.90),
        0 0 4px rgba(255, 210, 115, 0.42),
        0 0 9px rgba(255, 120, 22, 0.22);
    }
    48% {
      text-shadow:
        0 1px 0 rgba(255, 255, 230, 0.95),
        0 2px 0 rgba(74, 34, 8, 0.90),
        0 0 6px rgba(255, 238, 170, 0.88),
        0 0 16px rgba(255, 155, 34, 0.72),
        0 0 28px rgba(255, 72, 0, 0.46);
    }
  }

  @keyframes lineageIgniteGlow {
    0%, 100% {
      opacity: 0.12;
      text-shadow:
        0 0 5px rgba(255, 242, 190, 0.10),
        0 0 12px rgba(255, 168, 45, 0.08),
        0 0 24px rgba(255, 75, 0, 0.04);
    }
    48% {
      opacity: 0.90;
      text-shadow:
        0 0 7px rgba(255, 242, 190, 0.95),
        0 0 18px rgba(255, 168, 45, 0.88),
        0 0 36px rgba(255, 75, 0, 0.70),
        0 0 64px rgba(255, 28, 0, 0.42);
    }
  }

  @keyframes classicIgniteText {
    0%, 100% {
      text-shadow:
        0 1px 0 rgba(255, 255, 225, 0.45),
        0 0 4px rgba(255, 210, 110, 0.36),
        0 0 8px rgba(255, 118, 22, 0.18);
    }
    48% {
      text-shadow:
        0 1px 0 rgba(255, 255, 230, 0.82),
        0 0 5px rgba(255, 238, 170, 0.72),
        0 0 13px rgba(255, 155, 34, 0.60),
        0 0 23px rgba(255, 72, 0, 0.36);
    }
  }

  @keyframes classicIgniteGlow {
    0%, 100% {
      opacity: 0.10;
      text-shadow:
        0 0 4px rgba(255, 242, 190, 0.08),
        0 0 10px rgba(255, 168, 45, 0.06);
    }
    48% {
      opacity: 0.72;
      text-shadow:
        0 0 5px rgba(255, 242, 190, 0.80),
        0 0 14px rgba(255, 168, 45, 0.68),
        0 0 27px rgba(255, 75, 0, 0.48),
        0 0 46px rgba(255, 28, 0, 0.28);
    }
  }
}

@media (max-width: 430px) {
  .mobile-title.mobile-title-phoenix-head {
    top: 82px !important;
    left: 16px !important;
    width: 68vw !important;
  }

  .mobile-title-main {
    font-size: clamp(32px, 8.7vw, 60px) !important;
    letter-spacing: 0.105em !important;
  }

  .mobile-title-sub {
    font-size: clamp(14px, 3.55vw, 26px) !important;
    letter-spacing: 0.20em !important;
  }
}


/* === FIRE EFFECTS REMOVED === */
.phoenix-fire-stream,
.pc-title-impact-glow,
.fire-core,
.fire-sparks {
  display: none !important;
}


/* === PROFESSIONAL LINEAGE 2 START BUTTON === */
.l2-start-wrap {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: clamp(34px, 6.5vh, 76px) !important;
  z-index: 2147483000 !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;

  pointer-events: none !important;
}

.l2-start-button {
  position: relative !important;
  width: min(390px, 82vw) !important;
  height: 82px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  pointer-events: auto !important;
  text-decoration: none !important;
  user-select: none !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;

  border: 1px solid rgba(255, 221, 138, 0.82) !important;
  border-radius: 14px !important;

  background:
    linear-gradient(180deg,
      rgba(76, 32, 9, 0.94) 0%,
      rgba(148, 58, 13, 0.96) 36%,
      rgba(75, 18, 4, 0.98) 100%) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 246, 196, 0.78),
    inset 0 -13px 24px rgba(35, 4, 0, 0.58),
    inset 0 0 28px rgba(255, 128, 18, 0.18),
    0 0 16px rgba(255, 174, 56, 0.50),
    0 0 38px rgba(255, 76, 0, 0.34),
    0 16px 42px rgba(0, 0, 0, 0.58) !important;

  overflow: hidden !important;

  clip-path: polygon(
    8% 0%,
    92% 0%,
    100% 50%,
    92% 100%,
    8% 100%,
    0% 50%
  ) !important;

  transform: translateZ(0) !important;
  animation: l2ButtonBreath 4.2s ease-in-out infinite !important;
}

.l2-start-button::before,
.l2-start-button::after {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
}

.l2-start-button::before {
  inset: 5px 9px !important;
  border: 1px solid rgba(255, 232, 165, 0.54) !important;
  clip-path: inherit !important;
  opacity: 0.86 !important;
}

.l2-start-button::after {
  left: 50% !important;
  top: 50% !important;
  width: 112% !important;
  height: 180% !important;
  transform: translate(-50%, -50%) rotate(-8deg) !important;

  background:
    linear-gradient(110deg,
      transparent 0%,
      transparent 39%,
      rgba(255, 255, 220, 0.0) 44%,
      rgba(255, 255, 220, 0.58) 50%,
      rgba(255, 191, 70, 0.22) 55%,
      transparent 63%,
      transparent 100%) !important;

  opacity: 0 !important;
  animation: l2ButtonShine 5.4s ease-in-out infinite !important;
}

.l2-start-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse at 50% 0%,
      rgba(255, 232, 150, 0.32) 0%,
      rgba(255, 143, 24, 0.20) 28%,
      transparent 58%),
    radial-gradient(ellipse at 50% 100%,
      rgba(255, 60, 0, 0.28) 0%,
      transparent 62%) !important;
  opacity: 0.82 !important;
}

.l2-start-flame {
  position: absolute !important;
  inset: -45% -10% !important;
  background:
    radial-gradient(ellipse at 30% 72%,
      rgba(255, 237, 145, 0.22) 0%,
      rgba(255, 110, 0, 0.18) 24%,
      transparent 50%),
    radial-gradient(ellipse at 72% 68%,
      rgba(255, 185, 55, 0.20) 0%,
      rgba(255, 66, 0, 0.15) 28%,
      transparent 56%) !important;

  filter: blur(8px) !important;
  opacity: 0.72 !important;
  animation: l2ButtonFlame 3.2s ease-in-out infinite !important;
}

.l2-start-text {
  position: relative !important;
  z-index: 2 !important;

  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(23px, 3.1vw, 34px) !important;
  line-height: 1 !important;
  letter-spacing: 0.075em !important;
  text-transform: uppercase !important;

  color: transparent !important;
  background:
    linear-gradient(180deg,
      #fff7ca 0%,
      #ffd777 30%,
      #d8932d 56%,
      #7a3610 86%,
      #fff0a4 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;

  -webkit-text-stroke: 0.65px rgba(62, 25, 4, 0.95) !important;

  text-shadow:
    0 1px 0 rgba(255, 255, 220, 0.76),
    0 2px 0 rgba(59, 16, 0, 0.88),
    0 0 6px rgba(255, 219, 122, 0.74),
    0 0 15px rgba(255, 120, 20, 0.52),
    0 0 28px rgba(255, 52, 0, 0.30) !important;
}

.l2-start-sub {
  position: relative !important;
  z-index: 2 !important;

  margin-top: 7px !important;

  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(10px, 1.4vw, 14px) !important;
  line-height: 1 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;

  color: rgba(255, 223, 145, 0.92) !important;
  text-shadow:
    0 0 4px rgba(255, 211, 111, 0.55),
    0 0 10px rgba(255, 102, 0, 0.35) !important;
}

.l2-start-button:hover {
  transform: translateY(-3px) scale(1.035) translateZ(0) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 250, 205, 0.88),
    inset 0 -13px 24px rgba(35, 4, 0, 0.50),
    inset 0 0 34px rgba(255, 150, 24, 0.26),
    0 0 22px rgba(255, 204, 78, 0.76),
    0 0 54px rgba(255, 84, 0, 0.56),
    0 20px 46px rgba(0, 0, 0, 0.64) !important;
}

.l2-start-button:active {
  transform: translateY(1px) scale(0.985) translateZ(0) !important;
}

@keyframes l2ButtonBreath {
  0%, 100% {
    filter: brightness(1);
  }
  50% {
    filter: brightness(1.12);
  }
}

@keyframes l2ButtonFlame {
  0%, 100% {
    opacity: 0.48;
    transform: translateY(8px) scale(0.95);
  }
  50% {
    opacity: 0.88;
    transform: translateY(-3px) scale(1.06);
  }
}

@keyframes l2ButtonShine {
  0%, 68%, 100% {
    opacity: 0;
    transform: translate(-82%, -50%) rotate(-8deg);
  }
  78% {
    opacity: 0.82;
  }
  92% {
    opacity: 0;
    transform: translate(48%, -50%) rotate(-8deg);
  }
}

@media (max-width: 768px) {
  .l2-start-wrap {
    bottom: max(24px, env(safe-area-inset-bottom)) !important;
  }

  .l2-start-button {
    width: min(308px, 80vw) !important;
    height: 64px !important;
    border-radius: 12px !important;

    box-shadow:
      inset 0 1px 0 rgba(255, 246, 196, 0.72),
      inset 0 -10px 18px rgba(35, 4, 0, 0.50),
      inset 0 0 20px rgba(255, 128, 18, 0.14),
      0 0 12px rgba(255, 174, 56, 0.38),
      0 0 24px rgba(255, 76, 0, 0.24),
      0 10px 26px rgba(0, 0, 0, 0.48) !important;

    animation: l2ButtonBreathMobile 4.8s ease-in-out infinite !important;
  }

  .l2-start-button::after {
    display: none !important;
  }

  .l2-start-flame {
    filter: blur(7px) !important;
    opacity: 0.46 !important;
    animation: none !important;
  }

  .l2-start-text {
    font-size: clamp(18px, 5.2vw, 24px) !important;
    letter-spacing: 0.055em !important;
  }

  .l2-start-sub {
    margin-top: 5px !important;
    font-size: clamp(8px, 2.45vw, 11px) !important;
    letter-spacing: 0.22em !important;
  }

  .l2-start-button:hover {
    transform: translateZ(0) !important;
  }

  @keyframes l2ButtonBreathMobile {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.07); }
  }
}

/* === ULTRA PREMIUM BUTTON FALLBACK === */
#startGameButton {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  z-index: 2147483647 !important;
}


/* === PATCH: NO SIDE ORBS + BRIGHT HOVER IGNITION === */
#startGameButton .lux-orb,
#startGameButton .lux-orb-left,
#startGameButton .lux-orb-right {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

#startGameButton:hover .lux-body {
  transform:
    rotateX(calc(var(--rx) - 2deg))
    rotateY(var(--ry))
    translateY(-5px)
    scale(1.032) !important;

  filter: brightness(1.24) saturate(1.22) contrast(1.06) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 250, 210, 0.55),
    inset 0 -22px 36px rgba(0,0,0,0.62),
    inset 0 0 42px rgba(255, 150, 25, 0.24),
    0 0 0 1px rgba(255, 223, 138, 0.32),
    0 0 28px rgba(255, 224, 128, 0.70),
    0 0 64px rgba(255, 119, 0, 0.70),
    0 0 110px rgba(255, 40, 0, 0.42),
    0 24px 56px rgba(0,0,0,0.76) !important;
}

#startGameButton:hover .lux-lava-aura {
  opacity: 0.88 !important;
  filter: blur(12px) saturate(1.55) brightness(1.35) !important;
  animation-duration: 3.2s !important;
}

#startGameButton:hover .lux-outer-gold {
  opacity: 1 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,230,.70),
    inset 0 -9px 16px rgba(35, 14, 0, .48),
    0 0 18px rgba(255, 222, 125, .62),
    0 0 34px rgba(255, 120, 0, .42) !important;
}

#startGameButton:hover .lux-center {
  border-color: rgba(255, 232, 154, 0.98) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), transparent 24%),
    linear-gradient(180deg, #3a281a 0%, #160c08 58%, #080403 100%) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 247, 204, .58),
    inset 0 -11px 18px rgba(0,0,0,.68),
    inset 0 0 22px rgba(255, 122, 0, .20),
    0 0 18px rgba(255, 231, 140, .76),
    0 0 42px rgba(255, 101, 0, .58),
    0 0 72px rgba(255, 35, 0, .30) !important;
}

#startGameButton:hover .lux-center-glass {
  opacity: 1 !important;
  filter: brightness(1.35) blur(0.1px) !important;
}

#startGameButton:hover .lux-text {
  color: #fff0aa !important;
  -webkit-text-fill-color: #fff0aa !important;

  text-shadow:
    0 1px 0 rgba(0,0,0,.96),
    0 2px 0 rgba(74, 27, 0, .80),
    0 0 8px rgba(255, 252, 220, 1),
    0 0 24px rgba(255, 220, 90, .95),
    0 0 46px rgba(255, 113, 0, .82),
    0 0 82px rgba(255, 34, 0, .54) !important;
}

#startGameButton:hover .lux-shine {
  opacity: 0.95 !important;
  animation: luxHoverShineFast 1.7s ease-in-out infinite !important;
}

#startGameButton:hover .lux-embers {
  display: block !important;
  opacity: 0.85 !important;
  filter: drop-shadow(0 0 10px rgba(255, 120, 0, .78)) !important;
  animation: luxHoverEmbersFast 1.25s ease-in-out infinite !important;
}

@keyframes luxHoverShineFast {
  0% {
    opacity: 0;
    transform: translateX(-48%);
  }
  42% {
    opacity: 0.95;
  }
  100% {
    opacity: 0;
    transform: translateX(48%);
  }
}

@keyframes luxHoverEmbersFast {
  0%, 100% {
    opacity: .42;
    transform: translateY(8px) scale(.94);
  }
  50% {
    opacity: .95;
    transform: translateY(-9px) scale(1.08);
  }
}

@media (max-width: 768px) {
  #startGameButton .lux-orb,
  #startGameButton .lux-orb-left,
  #startGameButton .lux-orb-right {
    display: none !important;
  }

  #startGameButton:active .lux-body {
    filter: brightness(1.16) saturate(1.15) !important;
  }
}

/* === SUPER PRO ASH SOCIAL MENU FALLBACK === */
#phoenixSideMenu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  z-index: 2147483000 !important;
}


/* === ORIGINAL LINEAGE 2 CURSOR + LIGHTER PHOENIX GLOW === */

/* Один и тот же оригинальный курсор Lineage 2 на всём сайте.
   На ссылках, кнопках и правом меню курсор НЕ меняется. */
html,
body,
*,
a,
button,
[role="button"],
input,
select,
textarea,
#startGameButton,
#phoenixSideMenu,
#phoenixSideMenu *,
.phoenix-menu-toggle,
.phoenix-social-link,
.phoenix-hover-zone {
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
}

/* Реальная зона наведения на центрального феникса */
.phoenix-hover-zone {
  position: absolute !important;
  left: 31% !important;
  top: 11% !important;
  width: 42vw !important;
  height: 62vh !important;
  z-index: 45 !important;
  pointer-events: auto !important;
  border-radius: 50% !important;
  background: transparent !important;
  transform: rotate(-4deg) !important;
}

#startGameButton {
  z-index: 2147483647 !important;
}

/* Подсветка феникса чуть светлее, без кислотного пересвета */
.phoenix-hover-zone::before,
.phoenix-hover-zone::after {
  content: "" !important;
  position: absolute !important;
  inset: -14% !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  opacity: 0 !important;
  transition: opacity .28s ease, transform .28s ease, filter .28s ease !important;
}

.phoenix-hover-zone::before {
  background:
    radial-gradient(ellipse at 50% 46%, rgba(255, 252, 210, .66), transparent 18%),
    radial-gradient(ellipse at 50% 48%, rgba(255, 184, 78, .48), transparent 38%),
    radial-gradient(ellipse at 50% 52%, rgba(255, 92, 0, .24), transparent 64%) !important;
  mix-blend-mode: screen !important;
  filter: blur(22px) !important;
}

.phoenix-hover-zone::after {
  inset: -25% !important;
  background:
    radial-gradient(circle at 48% 46%, rgba(255, 242, 170, .44) 0 1.4px, transparent 4px),
    radial-gradient(circle at 56% 38%, rgba(255, 150, 42, .36) 0 1.6px, transparent 5px),
    radial-gradient(circle at 42% 59%, rgba(255, 90, 0, .26) 0 1.8px, transparent 6px),
    radial-gradient(circle at 64% 58%, rgba(255, 242, 180, .34) 0 1.3px, transparent 5px) !important;
  mix-blend-mode: screen !important;
  filter: drop-shadow(0 0 11px rgba(255, 145, 36, .52)) !important;
}

body.phoenix-center-lit .bg-layer {
  filter:
    brightness(1.32)
    contrast(1.12)
    saturate(1.34)
    drop-shadow(0 0 20px rgba(255, 226, 150, .25))
    drop-shadow(0 0 48px rgba(255, 106, 0, .20)) !important;
  transform: scale(1.052) !important;
}

body.phoenix-center-lit .light-core {
  opacity: 1 !important;
  transform: scale(1.20) !important;
  filter:
    blur(22px)
    brightness(1.62)
    saturate(1.14)
    drop-shadow(0 0 32px rgba(255, 232, 160, .62))
    drop-shadow(0 0 76px rgba(255, 98, 0, .36)) !important;
}

body.phoenix-center-lit .wing-glow,
body.phoenix-center-lit .phoenix-left-aura,
body.phoenix-center-lit .phoenix-wing-breath {
  opacity: 1 !important;
  filter:
    blur(22px)
    brightness(1.48)
    saturate(1.18)
    drop-shadow(0 0 26px rgba(255, 185, 70, .42)) !important;
}

body.phoenix-center-lit .lava-sky {
  opacity: .96 !important;
  filter: blur(8px) brightness(1.24) saturate(1.14) !important;
}

body.phoenix-center-lit .heat {
  opacity: .74 !important;
  filter: blur(5px) brightness(1.20) !important;
}

body.phoenix-center-lit .phoenix-hover-zone::before,
body.phoenix-center-lit .phoenix-hover-zone::after {
  opacity: 1 !important;
  transform: scale(1.08) !important;
}

@media (max-width: 768px) {
  .phoenix-hover-zone {
    left: 20% !important;
    top: 8% !important;
    width: 62vw !important;
    height: 55vh !important;
  }
}

/* === END ORIGINAL LINEAGE 2 CURSOR + LIGHTER PHOENIX GLOW === */


/* === PHOENIX BACKGROUND MUSIC PLAYER === */

.phoenix-music-player {
  position: fixed !important;
  left: 18px !important;
  bottom: 18px !important;
  z-index: 2147482500 !important;
  pointer-events: auto !important;
}

.music-toggle {
  width: 82px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;

  border-radius: 999px !important;
  border: 1px solid rgba(238, 198, 122, .74) !important;
  color: #f4d58d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 12px !important;
  letter-spacing: .08em !important;

  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.14), transparent 24%),
    linear-gradient(145deg, rgba(93, 58, 23, .92), rgba(20, 7, 2, .96) 64%, rgba(5,2,0,.98)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -10px 18px rgba(0,0,0,.50),
    0 0 18px rgba(255, 123, 22, .20),
    0 12px 22px rgba(0,0,0,.42) !important;
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
  transition: filter .22s ease, transform .22s ease, box-shadow .22s ease !important;
}

.music-toggle:hover,
.phoenix-music-player.is-playing .music-toggle {
  filter: brightness(1.14) saturate(1.08) !important;
  transform: translateY(-2px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -10px 18px rgba(0,0,0,.46),
    0 0 24px rgba(255, 176, 82, .36),
    0 12px 22px rgba(0,0,0,.42) !important;
}

.music-icon {
  font-size: 17px !important;
  line-height: 1 !important;
  text-shadow: 0 0 10px rgba(255, 214, 128, .70) !important;
}

.music-text {
  font-size: 11px !important;
  line-height: 1 !important;
}

/* === END PHOENIX BACKGROUND MUSIC PLAYER === */


/* === LINEAGE 2 CINEMATIC UE5 BOOK MENU === */

body.lineage-book-open #startGameButton,
body.lineage-book-open .l2-start-wrap,
body.lineage-book-open .play-button,
body.lineage-book-open .start-button,
body.lineage-book-open .startGameButton,
body.lineage-book-open .game-start,
body.lineage-book-open .start-game,
body.lineage-book-open .lux-start-button,
body.lineage-book-open .premium-start-button,
body.lineage-book-open [data-start-game],
body.lineage-book-open [data-action="start"],
.book-hidden-start {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.lineage-book-open .phoenix-hover-zone {
  pointer-events: none !important;
}

.lineage-book-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483600 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;

  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;

  perspective: 1850px !important;
  transition: opacity .36s ease, visibility .36s ease !important;
}

.lineage-book-overlay.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.book-vignette {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(42, 14, 3, .16), rgba(0, 0, 0, .76) 64%, rgba(0, 0, 0, .92) 100%),
    radial-gradient(ellipse at 50% 32%, rgba(255, 163, 52, .16), transparent 42%),
    linear-gradient(135deg, rgba(26, 6, 0, .34), transparent 36%, rgba(0, 0, 0, .30)) !important;
  backdrop-filter: blur(8px) saturate(1.16) !important;
}

.book-cinematic-fog {
  position: absolute !important;
  inset: -12% !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 74%, rgba(255, 112, 24, .24), transparent 36%),
    radial-gradient(ellipse at 30% 78%, rgba(255, 220, 120, .12), transparent 32%),
    radial-gradient(ellipse at 72% 78%, rgba(190, 45, 0, .13), transparent 34%) !important;
  filter: blur(20px) !important;
  opacity: .92 !important;
  animation: cinematicBookFog 6.5s ease-in-out infinite !important;
}

.book-stained-light {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 20% 18%, rgba(70, 140, 255, .10), transparent 20%),
    radial-gradient(circle at 78% 20%, rgba(255, 45, 80, .10), transparent 22%),
    radial-gradient(circle at 50% 84%, rgba(70, 255, 150, .07), transparent 24%) !important;
  mix-blend-mode: screen !important;
}

.book-floor-shadow {
  position: absolute !important;
  left: 50% !important;
  top: calc(50% + 250px) !important;
  width: min(790px, 82vw) !important;
  height: 90px !important;
  transform: translateX(-50%) !important;
  border-radius: 50% !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.74), rgba(0,0,0,.30) 52%, transparent 70%) !important;
  filter: blur(13px) !important;
  opacity: 0 !important;
  transition: opacity .55s ease !important;
}

.lineage-book-overlay.is-visible .book-floor-shadow {
  opacity: .92 !important;
}

.book-burn-flash {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 70 !important;
  opacity: 0 !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(255, 232, 166, .55), rgba(255, 111, 24, .24) 30%, transparent 62%) !important;
  mix-blend-mode: screen !important;
}

.lineage-book-overlay.is-closing-cinematic .book-burn-flash {
  animation: cinematicBurnFlash 1.25s ease-out forwards !important;
}

.book-ash-field {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 80 !important;
  overflow: hidden !important;
}

.book-ash-particle {
  position: absolute !important;
  left: var(--x) !important;
  top: var(--y) !important;
  width: var(--s) !important;
  height: var(--s) !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  background:
    radial-gradient(circle, rgba(255,231,175,.95), rgba(166,92,43,.70) 35%, rgba(64,60,55,.55) 68%, rgba(20,20,20,.05) 100%) !important;
  box-shadow:
    0 0 7px rgba(255, 134, 34, .36),
    0 0 16px rgba(55, 55, 55, .20) !important;
  animation: cinematicAshFly var(--d) ease-out forwards !important;
}

.lineage-book {
  --bookTiltX: 0deg;
  --bookTiltY: 0deg;

  position: relative !important;
  width: min(890px, 92vw) !important;
  min-height: 498px !important;

  display: grid !important;
  grid-template-columns: 1fr 1fr !important;

  transform-style: preserve-3d !important;
  transform:
    rotateX(calc(20deg + var(--bookTiltX)))
    rotateY(calc(-25deg + var(--bookTiltY)))
    scale(.68)
    translateY(62px)
    translateZ(-120px) !important;
  opacity: 0 !important;

  border-radius: 32px !important;
  isolation: isolate !important;

  filter:
    drop-shadow(0 62px 66px rgba(0,0,0,.86))
    drop-shadow(0 0 42px rgba(145, 62, 10, .26)) !important;

  transition:
    transform .94s cubic-bezier(.12,.92,.14,1),
    opacity .52s ease,
    filter .52s ease !important;
}

.lineage-book-overlay.is-visible .lineage-book {
  opacity: 1 !important;
  transform:
    rotateX(var(--bookTiltX))
    rotateY(var(--bookTiltY))
    scale(1)
    translateY(0)
    translateZ(0) !important;
  filter:
    drop-shadow(0 66px 74px rgba(0,0,0,.88))
    drop-shadow(0 0 58px rgba(216, 118, 34, .34))
    drop-shadow(0 0 126px rgba(255, 127, 28, .16)) !important;
}

.lineage-book-overlay.is-closing-cinematic .lineage-book {
  animation: cinematicBookClose 1.42s cubic-bezier(.2,.82,.18,1) forwards !important;
}

.lineage-book-overlay.is-burning .book-page,
.lineage-book-overlay.is-burning .book-spine,
.lineage-book-overlay.is-burning .book-metal-corner,
.lineage-book-overlay.is-burning .book-outer-gold,
.lineage-book-overlay.is-burning .book-spine-gems,
.lineage-book-overlay.is-burning .book-spine-glow {
  animation: cinematicCharSurface 1.12s ease-in forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .burn-edge {
  animation: burnEdgeSweep 1.15s ease-out forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-page-left {
  animation: leftPageCurlBurn 1.24s ease-in forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-page-right {
  animation: rightPageCurlBurn 1.24s ease-in forwards !important;
}

.book-world-aura {
  position: absolute !important;
  inset: -44px !important;
  z-index: -4 !important;
  border-radius: 46px !important;
  background:
    conic-gradient(from 0deg, rgba(255,228,148,.22), rgba(180,36,12,.20), rgba(36,90,158,.10), rgba(255,198,78,.22), rgba(35,140,82,.10), rgba(255,228,148,.22)) !important;
  filter: blur(22px) saturate(1.32) !important;
  opacity: .92 !important;
  animation: cinematicBookAura 10s linear infinite !important;
}

.book-back-plate {
  position: absolute !important;
  inset: 18px 14px -18px 14px !important;
  z-index: -3 !important;
  border-radius: 30px !important;
  background:
    linear-gradient(145deg, rgba(31, 9, 1, .96), rgba(98, 45, 12, .86) 45%, rgba(8, 2, 0, .98)) !important;
  transform: translateZ(-44px) translateY(24px) scale(.98) !important;
  box-shadow:
    0 28px 44px rgba(0,0,0,.55),
    inset 0 0 30px rgba(255,130,30,.12) !important;
}

.book-outer-gold {
  position: absolute !important;
  inset: -5px !important;
  z-index: -1 !important;
  border-radius: 34px !important;
  background:
    linear-gradient(145deg, rgba(255,244,196,.88), rgba(145,76,22,.92) 26%, rgba(32,11,2,.95) 54%, rgba(255,202,94,.82) 100%) !important;
  transform: translateZ(-8px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    0 0 26px rgba(255, 160, 62, .24) !important;
}

.book-left-thickness,
.book-right-thickness {
  position: absolute !important;
  top: 32px !important;
  bottom: -14px !important;
  width: 34px !important;
  z-index: -2 !important;
  background:
    repeating-linear-gradient(0deg, rgba(255,226,160,.30) 0 2px, rgba(102,48,14,.38) 2px 4px),
    linear-gradient(180deg, #94622d, #341306) !important;
  filter: brightness(.82) !important;
  opacity: .90 !important;
}

.book-left-thickness {
  left: 20px !important;
  transform: skewY(-18deg) translateZ(-28px) !important;
  border-radius: 0 0 0 24px !important;
}

.book-right-thickness {
  right: 20px !important;
  transform: skewY(18deg) translateZ(-28px) !important;
  border-radius: 0 0 24px 0 !important;
}

.book-soul-flame {
  position: absolute !important;
  top: 14% !important;
  bottom: 14% !important;
  width: 50px !important;
  z-index: -2 !important;
  opacity: .60 !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(255,224,132,.28), rgba(255,98,0,.18) 38%, transparent 70%) !important;
  filter: blur(14px) !important;
  animation: soulFlameBreath 3.4s ease-in-out infinite !important;
}

.flame-left {
  left: -34px !important;
}

.flame-right {
  right: -34px !important;
}

.book-page {
  position: relative !important;
  min-height: 498px !important;
  padding: 56px 52px 48px !important;
  box-sizing: border-box !important;

  color: #42240e !important;
  font-family: Georgia, "Times New Roman", serif !important;

  background:
    radial-gradient(circle at 20% 18%, rgba(255,255,255,.33) 0 1px, transparent 18px),
    radial-gradient(circle at 80% 72%, rgba(92, 48, 16, .10) 0 2px, transparent 22px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.25), transparent 44%),
    linear-gradient(90deg, rgba(124, 70, 26, .20), transparent 18%, transparent 82%, rgba(124, 70, 26, .20)),
    linear-gradient(180deg, #fff0c2 0%, #e2b870 45%, #ad6c2d 100%) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.44),
    inset 0 -24px 36px rgba(79, 35, 7, .32),
    inset 0 0 62px rgba(55, 24, 3, .18) !important;
  overflow: hidden !important;
  transform-style: preserve-3d !important;
}

.book-page-left {
  border-radius: 30px 0 0 30px !important;
  transform-origin: right center !important;
  border: 1px solid rgba(77, 37, 8, .62) !important;
  border-right: none !important;
  transform: rotateY(1.7deg) translateZ(8px) !important;
}

.book-page-right {
  border-radius: 0 30px 30px 0 !important;
  transform-origin: left center !important;
  border: 1px solid rgba(77, 37, 8, .62) !important;
  border-left: none !important;
  transform: rotateY(-1.7deg) translateZ(8px) !important;
}

.burn-edge {
  position: absolute !important;
  inset: -10px !important;
  z-index: 8 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  background:
    radial-gradient(ellipse at 50% 105%, rgba(255,235,156,.88), rgba(255,92,0,.46) 14%, rgba(80,15,0,.22) 28%, transparent 45%) !important;
  mix-blend-mode: screen !important;
  filter: blur(6px) !important;
}

.page-depth-shadow,
.page-grain,
.page-inner-light {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}

.page-depth-shadow {
  z-index: 0 !important;
  background:
    linear-gradient(90deg, rgba(69, 28, 3, .24), transparent 20%, transparent 80%, rgba(69, 28, 3, .18)) !important;
}

.page-grain {
  background:
    repeating-linear-gradient(0deg, rgba(72, 36, 9, .045) 0 1px, transparent 1px 7px),
    repeating-linear-gradient(90deg, rgba(72, 36, 9, .024) 0 1px, transparent 1px 11px),
    radial-gradient(ellipse at 50% 100%, rgba(70, 28, 3, .19), transparent 62%) !important;
  opacity: .76 !important;
  z-index: 1 !important;
}

.page-inner-light {
  z-index: 2 !important;
  border-radius: inherit !important;
  background:
    linear-gradient(110deg, transparent 0%, rgba(255,255,255,.07) 40%, rgba(255,255,255,.23) 51%, transparent 66%) !important;
  mix-blend-mode: screen !important;
  opacity: .46 !important;
}

.page-gold-line {
  position: absolute !important;
  left: 58px !important;
  right: 58px !important;
  height: 1px !important;
  z-index: 4 !important;
  background:
    linear-gradient(90deg, transparent, rgba(111, 43, 11, .55), rgba(255, 221, 134, .74), rgba(111, 43, 11, .55), transparent) !important;
  box-shadow: 0 0 8px rgba(255, 177, 72, .22) !important;
}

.page-gold-line.top { top: 28px !important; }
.page-gold-line.bottom { bottom: 28px !important; }

.page-red-ribbon {
  position: absolute !important;
  top: 0 !important;
  right: 36px !important;
  width: 22px !important;
  height: 132px !important;
  z-index: 4 !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.14), transparent 30%),
    linear-gradient(180deg, #9f1717, #5b0808) !important;
  clip-path: polygon(0 0,100% 0,100% 100%,50% 82%,0 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 5px 10px rgba(0,0,0,.18) !important;
}

.book-page::before {
  content: "" !important;
  position: absolute !important;
  inset: 16px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(93, 46, 10, .36) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255, 238, 180, .24),
    inset 0 0 32px rgba(76, 35, 8, .14) !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

.book-spine {
  position: absolute !important;
  top: -3px !important;
  bottom: -3px !important;
  left: 50% !important;
  width: 46px !important;
  transform: translateX(-50%) translateZ(18px) !important;
  z-index: 13 !important;

  background:
    linear-gradient(90deg, rgba(38, 12, 2, .72), rgba(255, 226, 150, .34), rgba(38, 12, 2, .74)),
    linear-gradient(180deg, #844210, #2a0d02 52%, #914815) !important;
  box-shadow:
    inset 0 0 22px rgba(0,0,0,.68),
    0 0 24px rgba(255, 156, 50, .26) !important;
}

.book-spine-glow {
  position: absolute !important;
  top: 18px !important;
  bottom: 18px !important;
  left: 50% !important;
  width: 1px !important;
  transform: translateX(-50%) translateZ(22px) !important;
  z-index: 15 !important;
  background:
    linear-gradient(180deg, transparent, rgba(255, 224, 136, .90), rgba(255, 118, 24, .38), rgba(255, 224, 136, .74), transparent) !important;
  box-shadow:
    0 0 11px rgba(255, 216, 122, .58),
    0 0 25px rgba(255, 86, 0, .28) !important;
}

.book-spine-gems {
  position: absolute !important;
  left: 50% !important;
  top: 112px !important;
  width: 16px !important;
  height: 268px !important;
  transform: translateX(-50%) translateZ(26px) !important;
  z-index: 16 !important;
  background:
    radial-gradient(circle at 50% 8%, #fff0b8 0 2px, #b91616 3px 6px, transparent 7px),
    radial-gradient(circle at 50% 50%, #e9fff0 0 2px, #117b4e 3px 6px, transparent 7px),
    radial-gradient(circle at 50% 92%, #edf4ff 0 2px, #1f5fb8 3px 6px, transparent 7px) !important;
  filter:
    drop-shadow(0 0 9px rgba(255,220,120,.48))
    drop-shadow(0 0 18px rgba(255,80,0,.20)) !important;
}

.book-metal-corner {
  position: absolute !important;
  width: 70px !important;
  height: 70px !important;
  z-index: 22 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 35% 35%, rgba(255, 245, 184, .90), transparent 14%),
    radial-gradient(circle at 62% 60%, rgba(194, 24, 24, .36), transparent 18%),
    linear-gradient(145deg, #ffebb4 0%, #ab702a 42%, #351604 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.38),
    0 0 18px rgba(255, 170, 70, .28) !important;
  opacity: .96 !important;
  transform: translateZ(30px) !important;
}

.corner-tl {
  left: -2px !important;
  top: -2px !important;
  border-radius: 30px 0 23px 0 !important;
  clip-path: polygon(0 0, 100% 0, 0 100%) !important;
}

.corner-tr {
  right: -2px !important;
  top: -2px !important;
  border-radius: 0 30px 0 23px !important;
  clip-path: polygon(0 0, 100% 0, 100% 100%) !important;
}

.corner-bl {
  left: -2px !important;
  bottom: -2px !important;
  border-radius: 0 23px 0 30px !important;
  clip-path: polygon(0 0, 100% 100%, 0 100%) !important;
}

.corner-br {
  right: -2px !important;
  bottom: -2px !important;
  border-radius: 23px 0 30px 0 !important;
  clip-path: polygon(100% 0, 100% 100%, 0 100%) !important;
}

.book-close {
  position: absolute !important;
  right: -18px !important;
  top: -18px !important;
  z-index: 40 !important;

  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(255, 220, 140, .84) !important;

  color: #f7d58c !important;
  font-size: 30px !important;
  line-height: 41px !important;
  text-align: center !important;

  background:
    radial-gradient(circle at 35% 30%, rgba(255,255,255,.18), transparent 26%),
    linear-gradient(145deg, #68421e, #190902 70%, #070201) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    0 0 22px rgba(255, 126, 25, .34),
    0 12px 24px rgba(0,0,0,.60) !important;
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
  transform: translateZ(44px) !important;
}

.book-close:hover {
  filter: brightness(1.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.30),
    0 0 28px rgba(255, 196, 100, .54),
    0 12px 24px rgba(0,0,0,.60) !important;
}

.book-rune {
  position: relative !important;
  z-index: 5 !important;
  width: 84px !important;
  height: 84px !important;
  margin: 0 auto 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: #f9d887 !important;
  font-size: 47px !important;

  border-radius: 50% !important;
  background:
    radial-gradient(circle at 38% 28%, rgba(255,255,255,.12), transparent 26%),
    radial-gradient(circle, #4b1b06 0%, #1b0801 62%, #050100 100%) !important;
  border: 1px solid rgba(255, 211, 124, .74) !important;
  box-shadow:
    inset 0 0 25px rgba(255, 115, 15, .25),
    0 0 30px rgba(255, 132, 20, .35) !important;
  text-shadow:
    0 0 11px rgba(255, 226, 138, .90),
    0 0 30px rgba(255, 91, 0, .58) !important;
}

.book-rune span {
  display: block !important;
  animation: cinematicRunePulse 2.6s ease-in-out infinite !important;
}

.lineage-book h2,
.lineage-book h3 {
  position: relative !important;
  z-index: 5 !important;
  margin: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: .11em !important;
  color: #542608 !important;
  text-shadow:
    0 1px 0 rgba(255, 238, 180, .64),
    0 0 9px rgba(255, 186, 86, .25) !important;
}

.lineage-book h2 {
  font-size: 37px !important;
  margin-bottom: 8px !important;
}

.lineage-book h3 {
  font-size: 24px !important;
  margin-bottom: 24px !important;
}

.book-subtitle {
  position: relative !important;
  z-index: 5 !important;
  text-align: center !important;
  margin-bottom: 28px !important;
  font-size: 13px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: #714013 !important;
}

.lineage-book p,
.lineage-book li {
  position: relative !important;
  z-index: 5 !important;
  font-size: 15.5px !important;
  line-height: 1.58 !important;
  color: #42240e !important;
  text-shadow: 0 1px 0 rgba(255, 235, 175, .40) !important;
}

.illuminated > span {
  float: left !important;
  font-size: 46px !important;
  line-height: .82 !important;
  margin: 8px 9px 0 0 !important;
  color: #961d13 !important;
  text-shadow:
    0 1px 0 rgba(255,238,180,.55),
    0 0 10px rgba(255,190,80,.30) !important;
}

.lineage-book ul {
  position: relative !important;
  z-index: 5 !important;
  margin: 15px 0 0 !important;
  padding-left: 18px !important;
}

.lineage-book li {
  margin-bottom: 7px !important;
}

.book-stats {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  gap: 8px !important;
  margin-top: 25px !important;
}

.book-stats span {
  display: block !important;
  padding: 9px 10px !important;
  text-align: center !important;
  color: #f3cf88 !important;
  font-size: 12px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  border-radius: 999px !important;
  border: 1px solid rgba(88, 37, 8, .46) !important;
  background:
    linear-gradient(180deg, #5d2e0e, #1d0902) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 13px rgba(150, 68, 12, .22) !important;
}

.book-seal {
  position: relative !important;
  z-index: 5 !important;
  margin: 27px auto 0 !important;
  width: 142px !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: #f3cf88 !important;
  font-size: 12px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;

  border: 1px solid rgba(255, 213, 128, .52) !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(255, 116, 18, .36), transparent 55%),
    linear-gradient(145deg, #5d2b0d, #170701) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 24px rgba(255, 105, 18, .28) !important;
}

@keyframes cinematicBookAura {
  0% { transform: rotate(0deg) scale(1.04); }
  100% { transform: rotate(360deg) scale(1.04); }
}

@keyframes cinematicBookFog {
  0%,100% { transform: translateY(12px) scale(1); opacity: .64; }
  50% { transform: translateY(-10px) scale(1.04); opacity: .92; }
}

@keyframes soulFlameBreath {
  0%,100% { transform: translateY(8px) scale(.92); opacity: .42; }
  50% { transform: translateY(-8px) scale(1.08); opacity: .72; }
}

@keyframes cinematicRunePulse {
  0%,100% { transform: scale(.96); filter: brightness(1); }
  50% { transform: scale(1.08); filter: brightness(1.32); }
}

@keyframes cinematicBurnFlash {
  0% { opacity: 0; transform: scale(.85); }
  22% { opacity: .88; transform: scale(1.05); }
  100% { opacity: 0; transform: scale(1.45); }
}

@keyframes cinematicBookClose {
  0% {
    opacity: 1;
    transform: rotateX(var(--bookTiltX)) rotateY(var(--bookTiltY)) scale(1) translateY(0) translateZ(0);
    filter: brightness(1) saturate(1);
  }
  24% {
    opacity: 1;
    transform: rotateX(2deg) rotateY(-4deg) scale(1.018) translateY(-7px) translateZ(22px);
    filter: brightness(1.48) saturate(1.35) drop-shadow(0 0 46px rgba(255, 116, 24, .42));
  }
  56% {
    opacity: .82;
    transform: rotateX(-4deg) rotateY(8deg) scale(.96) translateY(-15px) translateZ(-20px);
    filter: brightness(.92) saturate(.92) contrast(1.10);
  }
  100% {
    opacity: 0;
    transform: rotateX(-14deg) rotateY(18deg) scale(.70) translateY(-62px) translateZ(-100px);
    filter: brightness(.42) grayscale(.84) contrast(1.35) blur(1.2px);
  }
}

@keyframes leftPageCurlBurn {
  0% {
    transform: rotateY(1.7deg) translateZ(8px);
  }
  48% {
    transform: rotateY(19deg) translateZ(16px) translateX(4px);
  }
  100% {
    transform: rotateY(55deg) translateZ(-18px) translateX(34px);
  }
}

@keyframes rightPageCurlBurn {
  0% {
    transform: rotateY(-1.7deg) translateZ(8px);
  }
  48% {
    transform: rotateY(-19deg) translateZ(16px) translateX(-4px);
  }
  100% {
    transform: rotateY(-55deg) translateZ(-18px) translateX(-34px);
  }
}

@keyframes burnEdgeSweep {
  0% {
    opacity: 0;
    transform: translateY(36px) scaleY(.2);
    filter: blur(8px) brightness(1);
  }
  28% {
    opacity: .95;
    transform: translateY(12px) scaleY(.7);
    filter: blur(6px) brightness(1.5);
  }
  100% {
    opacity: 0;
    transform: translateY(-32px) scaleY(1.2);
    filter: blur(11px) brightness(.7);
  }
}

@keyframes cinematicCharSurface {
  0% { filter: brightness(1) grayscale(0); }
  42% { filter: brightness(1.42) saturate(1.55); }
  100% { filter: brightness(.42) grayscale(.88) contrast(1.45); }
}

@keyframes cinematicAshFly {
  0% {
    opacity: 0;
    transform: translate3d(0, 10px, 0) scale(.52) rotate(0deg);
  }
  12% {
    opacity: .96;
  }
  100% {
    opacity: 0;
    transform: translate3d(var(--dx), var(--dy), 0) scale(1.24) rotate(var(--rot));
  }
}

@media (max-width: 900px) {
  .lineage-book {
    width: min(440px, 94vw) !important;
    min-height: auto !important;
    grid-template-columns: 1fr !important;
    transform: rotateX(10deg) scale(.82) translateY(35px) !important;
  }

  .lineage-book-overlay.is-visible .lineage-book {
    transform: rotateX(0deg) scale(1) translateY(0) !important;
  }

  .book-page {
    min-height: auto !important;
    padding: 40px 30px 34px !important;
  }

  .book-page-left {
    border-radius: 30px 30px 0 0 !important;
    border-right: 1px solid rgba(77, 37, 8, .62) !important;
    border-bottom: none !important;
    transform: none !important;
  }

  .book-page-right {
    border-radius: 0 0 30px 30px !important;
    border-left: 1px solid rgba(77, 37, 8, .62) !important;
    border-top: none !important;
    transform: none !important;
  }

  .book-spine,
  .book-spine-glow,
  .book-spine-gems,
  .book-left-thickness,
  .book-right-thickness {
    display: none !important;
  }

  .lineage-book h2 {
    font-size: 30px !important;
  }

  .lineage-book h3 {
    font-size: 21px !important;
  }

  .lineage-book p,
  .lineage-book li {
    font-size: 14px !important;
  }
}

/* === END LINEAGE 2 CINEMATIC UE5 BOOK MENU === */


/* === LUXURY BOOK AUTOPLAY OVERRIDE === */

/* Плеер теперь называется Lineage 2 Phoenix и выглядит шире/дороже */
.phoenix-music-player {
  left: 18px !important;
  bottom: 18px !important;
  z-index: 2147482500 !important;
}

.music-toggle {
  width: auto !important;
  min-width: 174px !important;
  height: 42px !important;
  padding: 0 16px !important;
  gap: 9px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 214, 136, .82) !important;
  color: #f7d994 !important;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.18), transparent 24%),
    linear-gradient(145deg, rgba(110, 64, 22, .94), rgba(22, 7, 2, .98) 64%, rgba(5,2,0,.99)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -11px 20px rgba(0,0,0,.54),
    0 0 20px rgba(255, 153, 44, .22),
    0 13px 24px rgba(0,0,0,.44) !important;
}

.music-text {
  font-size: 11.5px !important;
  letter-spacing: .07em !important;
  white-space: nowrap !important;
}

/* Делаем книгу богаче: меньше игрушечности, больше киношной глубины */
.lineage-book {
  width: min(920px, 92vw) !important;
  min-height: 512px !important;
  border-radius: 34px !important;
  filter:
    drop-shadow(0 72px 86px rgba(0,0,0,.92))
    drop-shadow(0 0 72px rgba(225, 125, 36, .34))
    drop-shadow(0 0 148px rgba(255, 106, 0, .14)) !important;
}

.lineage-book-overlay.is-visible .lineage-book {
  filter:
    drop-shadow(0 78px 92px rgba(0,0,0,.94))
    drop-shadow(0 0 76px rgba(225, 125, 36, .42))
    drop-shadow(0 0 160px rgba(255, 106, 0, .18)) !important;
}

.book-page {
  min-height: 512px !important;
  background:
    radial-gradient(circle at 20% 16%, rgba(255,255,255,.38) 0 1px, transparent 18px),
    radial-gradient(circle at 80% 72%, rgba(92, 48, 16, .12) 0 2px, transparent 22px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.28), transparent 44%),
    linear-gradient(90deg, rgba(124, 70, 26, .18), transparent 18%, transparent 82%, rgba(124, 70, 26, .18)),
    linear-gradient(180deg, #fff2c9 0%, #e6bf77 45%, #b47131 100%) !important;
}

.book-world-aura {
  opacity: .72 !important;
  filter: blur(28px) saturate(1.14) !important;
}

.book-soul-flame {
  opacity: .46 !important;
}

/* Новое закрытие: сначала книга схлопывается в дорогой огненный артефакт, потом рассыпается */
.lineage-book-overlay.is-closing-cinematic .lineage-book {
  animation: luxuryBookCloseArtifact 1.72s cubic-bezier(.14,.86,.16,1) forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-page-left {
  animation: luxuryLeftPageFold 1.34s cubic-bezier(.19,.88,.22,1) forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-page-right {
  animation: luxuryRightPageFold 1.34s cubic-bezier(.19,.88,.22,1) forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-spine {
  animation: luxurySpineIgnite 1.48s ease-in-out forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-metal-corner,
.lineage-book-overlay.is-closing-cinematic .book-spine-gems,
.lineage-book-overlay.is-closing-cinematic .book-spine-glow {
  animation: luxuryMetalSpark 1.42s ease-in forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .book-burn-flash,
.lineage-book-overlay.is-closing-cinematic .book-collapse-light {
  animation: luxuryCollapseFlash 1.42s ease-out forwards !important;
}

.lineage-book-overlay.is-closing-cinematic .burn-edge {
  animation: luxuryBurnEdge 1.32s ease-out forwards !important;
}

.lineage-book-overlay.is-burning .book-page,
.lineage-book-overlay.is-burning .book-spine,
.lineage-book-overlay.is-burning .book-metal-corner,
.lineage-book-overlay.is-burning .book-outer-gold,
.lineage-book-overlay.is-burning .book-spine-gems,
.lineage-book-overlay.is-burning .book-spine-glow {
  animation: luxurySurfaceChar 1.20s ease-in forwards !important;
}

/* частицы пепла теперь мягче и реалистичнее */
.book-ash-particle {
  background:
    radial-gradient(circle, rgba(255,232,176,.98), rgba(206,105,46,.74) 30%, rgba(75,70,65,.58) 68%, rgba(12,12,12,.04) 100%) !important;
  box-shadow:
    0 0 8px rgba(255, 154, 44, .36),
    0 0 18px rgba(75, 75, 75, .18) !important;
  animation: luxuryAshDrift var(--d) cubic-bezier(.12,.72,.18,1) forwards !important;
}

/* не даём старым дешёвым анимациям перебивать новые */
@keyframes luxuryBookCloseArtifact {
  0% {
    opacity: 1;
    transform: rotateX(var(--bookTiltX)) rotateY(var(--bookTiltY)) scale(1) translateY(0) translateZ(0);
    filter: brightness(1) saturate(1);
  }
  18% {
    opacity: 1;
    transform: rotateX(2deg) rotateY(-3deg) scale(1.018) translateY(-8px) translateZ(26px);
    filter: brightness(1.28) saturate(1.14) drop-shadow(0 0 38px rgba(255, 180, 84, .38));
  }
  46% {
    opacity: .96;
    transform: rotateX(-2deg) rotateY(0deg) scale(.93) translateY(-12px) translateZ(18px);
    filter: brightness(1.50) saturate(1.28) drop-shadow(0 0 60px rgba(255, 118, 24, .52));
  }
  72% {
    opacity: .72;
    transform: rotateX(-5deg) rotateY(10deg) scale(.68) translateY(-32px) translateZ(-48px);
    filter: brightness(.78) grayscale(.38) contrast(1.16) blur(.25px);
  }
  100% {
    opacity: 0;
    transform: rotateX(-16deg) rotateY(24deg) scale(.34) translateY(-108px) translateZ(-220px);
    filter: brightness(.18) grayscale(1) contrast(1.55) blur(2.4px);
  }
}

@keyframes luxuryLeftPageFold {
  0% { transform: rotateY(1.7deg) translateZ(8px); }
  28% { transform: rotateY(28deg) translateZ(22px) translateX(8px); }
  62% { transform: rotateY(82deg) translateZ(-8px) translateX(68px); }
  100% { transform: rotateY(114deg) translateZ(-52px) translateX(128px); }
}

@keyframes luxuryRightPageFold {
  0% { transform: rotateY(-1.7deg) translateZ(8px); }
  28% { transform: rotateY(-28deg) translateZ(22px) translateX(-8px); }
  62% { transform: rotateY(-82deg) translateZ(-8px) translateX(-68px); }
  100% { transform: rotateY(-114deg) translateZ(-52px) translateX(-128px); }
}

@keyframes luxurySpineIgnite {
  0% { filter: brightness(1); }
  35% { filter: brightness(1.8) saturate(1.6) drop-shadow(0 0 32px rgba(255,120,22,.55)); }
  100% { filter: brightness(.26) grayscale(1) contrast(1.5); }
}

@keyframes luxuryMetalSpark {
  0% { opacity: 1; filter: brightness(1); }
  40% { opacity: 1; filter: brightness(2.2) saturate(1.8) drop-shadow(0 0 24px rgba(255,214,120,.7)); }
  100% { opacity: 0; filter: brightness(.25) grayscale(1) blur(1px); }
}

@keyframes luxuryCollapseFlash {
  0% { opacity: 0; transform: scale(.62); }
  20% { opacity: .22; transform: scale(.92); }
  42% { opacity: .86; transform: scale(1.10); }
  100% { opacity: 0; transform: scale(1.82); }
}

@keyframes luxuryBurnEdge {
  0% { opacity: 0; transform: translateY(46px) scaleY(.15); filter: blur(10px) brightness(1); }
  25% { opacity: .92; transform: translateY(16px) scaleY(.72); filter: blur(7px) brightness(1.6); }
  62% { opacity: .62; transform: translateY(-18px) scaleY(1.08); filter: blur(11px) brightness(1.1); }
  100% { opacity: 0; transform: translateY(-56px) scaleY(1.42); filter: blur(15px) brightness(.65); }
}

@keyframes luxurySurfaceChar {
  0% { filter: brightness(1) grayscale(0); }
  44% { filter: brightness(1.54) saturate(1.52); }
  100% { filter: brightness(.24) grayscale(1) contrast(1.65); }
}

@keyframes luxuryAshDrift {
  0% {
    opacity: 0;
    transform: translate3d(0, 12px, 0) scale(.48) rotate(0deg);
    filter: blur(0px);
  }
  14% {
    opacity: .96;
  }
  58% {
    opacity: .54;
    filter: blur(.25px);
  }
  100% {
    opacity: 0;
    transform: translate3d(var(--dx), var(--dy), 0) scale(1.18) rotate(var(--rot));
    filter: blur(1.2px);
  }
}

@media (max-width: 900px) {
  .music-toggle {
    min-width: 152px !important;
    height: 38px !important;
    padding: 0 12px !important;
  }

  .music-text {
    font-size: 10px !important;
  }
}

/* === END LUXURY BOOK AUTOPLAY OVERRIDE === */


/* === CANVAS BURN BOOK FINAL POLISH === */

/* Разрешаем скролл вниз к новостям */
html,
body {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}

/* Главный экран остаётся как фон, но теперь страница может скроллиться */
.scene {
  position: fixed !important;
  inset: 0 !important;
  height: 100vh !important;
  min-height: 100vh !important;
  z-index: 0 !important;
}

/* Музыка */
.music-toggle {
  min-width: 190px !important;
}
.music-text {
  font-size: 11.5px !important;
  white-space: nowrap !important;
}
.phoenix-music-player.is-playing .music-toggle {
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -11px 20px rgba(0,0,0,.48),
    0 0 30px rgba(255, 181, 86, .46),
    0 14px 26px rgba(0,0,0,.45) !important;
}

/* Настоящий центральный сгиб книги */
.book-real-gutter {
  position: absolute !important;
  top: 7px !important;
  bottom: 7px !important;
  left: 50% !important;
  width: 64px !important;
  transform: translateX(-50%) translateZ(35px) !important;
  z-index: 18 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.52) 0%, rgba(0,0,0,.30) 20%, transparent 62%),
    linear-gradient(90deg, rgba(33,9,1,.58), rgba(255,224,146,.18) 46%, rgba(255,232,158,.16) 54%, rgba(33,9,1,.58)) !important;
  filter: blur(.15px) !important;
  opacity: .92 !important;
}

.book-real-gutter::before,
.book-real-gutter::after {
  content: "" !important;
  position: absolute !important;
  top: 20px !important;
  bottom: 20px !important;
  width: 1px !important;
  background: linear-gradient(180deg, transparent, rgba(255,226,150,.42), rgba(60,20,4,.55), rgba(255,226,150,.32), transparent) !important;
  box-shadow: 0 0 10px rgba(255,180,70,.18) !important;
}

.book-real-gutter::before {
  left: 23px !important;
}

.book-real-gutter::after {
  right: 23px !important;
}

.book-page-left {
  box-shadow:
    inset -34px 0 44px rgba(58, 22, 3, .22),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -26px 42px rgba(79, 35, 7, .34),
    inset 0 0 70px rgba(55, 24, 3, .19) !important;
}

.book-page-right {
  box-shadow:
    inset 34px 0 44px rgba(58, 22, 3, .22),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -26px 42px rgba(79, 35, 7, .34),
    inset 0 0 70px rgba(55, 24, 3, .19) !important;
}

/* Canvas для живого огня/дыма/искр */
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 88 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}

/* Старые fire-wall/video слои приглушаем, canvas теперь главный */
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn {
  opacity: 0 !important;
  animation: none !important;
}

/* Профессиональный вид книги */
.lineage-book {
  width: min(940px, 92vw) !important;
  min-height: 528px !important;
  border-radius: 38px !important;
  filter:
    drop-shadow(0 88px 108px rgba(0,0,0,.98))
    drop-shadow(0 0 92px rgba(228, 130, 42, .42))
    drop-shadow(0 0 210px rgba(255, 116, 0, .18)) !important;
}

.lineage-book-overlay.is-visible .lineage-book {
  filter:
    drop-shadow(0 92px 116px rgba(0,0,0,.98))
    drop-shadow(0 0 96px rgba(228, 130, 42, .50))
    drop-shadow(0 0 220px rgba(255, 116, 0, .22)) !important;
}

.book-page {
  min-height: 528px !important;
  background:
    radial-gradient(circle at 22% 15%, rgba(255,255,255,.44) 0 1px, transparent 18px),
    radial-gradient(circle at 80% 72%, rgba(92, 48, 16, .12) 0 2px, transparent 22px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.32), transparent 44%),
    linear-gradient(90deg, rgba(124, 70, 26, .16), transparent 18%, transparent 82%, rgba(124, 70, 26, .16)),
    linear-gradient(180deg, #fff6d4 0%, #ebc985 44%, #ba7b38 100%) !important;
}

.book-outer-gold {
  background:
    linear-gradient(145deg, rgba(255,249,216,.94), rgba(158,90,29,.95) 23%, rgba(23,7,1,.99) 54%, rgba(255,213,114,.88) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 0 28px rgba(255,222,135,.13),
    0 0 36px rgba(255, 164, 62, .32) !important;
}

.book-spine {
  background:
    linear-gradient(90deg, rgba(31, 9, 1, .78), rgba(255, 231, 158, .38), rgba(31, 9, 1, .80)),
    linear-gradient(180deg, #965116, #230801 52%, #9d5419) !important;
}

.book-metal-corner {
  background:
    radial-gradient(circle at 35% 35%, rgba(255, 250, 200, .94), transparent 14%),
    radial-gradient(circle at 62% 60%, rgba(194, 24, 24, .30), transparent 18%),
    linear-gradient(145deg, #fff1bd 0%, #b6772f 42%, #2e1203 100%) !important;
}

/* Закрытие: книга горит снизу вверх, без "закрытия частями" */
.lineage-book-overlay.is-canvas-burning .lineage-book {
  will-change: clip-path, filter, opacity, transform !important;
}

.lineage-book-overlay.is-canvas-burning .burn-edge {
  animation: canvasBurnEdgeClimb 2.58s ease-out forwards !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-flash,
.lineage-book-overlay.is-canvas-burning .book-collapse-light {
  animation: canvasFlash 2.4s ease-out forwards !important;
}

.book-ash-particle {
  animation: canvasAshDrift var(--d) cubic-bezier(.12,.72,.18,1) forwards !important;
}

@keyframes canvasBurnEdgeClimb {
  0% {
    opacity: 0;
    transform: translateY(260px) scaleY(.10);
    filter: blur(12px) brightness(1);
  }
  16% {
    opacity: 1;
    transform: translateY(150px) scaleY(.72);
    filter: blur(8px) brightness(1.8);
  }
  52% {
    opacity: .92;
    transform: translateY(5px) scaleY(1.24);
    filter: blur(10px) brightness(1.32);
  }
  86% {
    opacity: .46;
    transform: translateY(-138px) scaleY(1.48);
    filter: blur(15px) brightness(.82);
  }
  100% {
    opacity: 0;
    transform: translateY(-245px) scaleY(1.66);
    filter: blur(20px) brightness(.52);
  }
}

@keyframes canvasFlash {
  0% { opacity: 0; transform: scale(.8); }
  24% { opacity: .50; transform: scale(1.08); }
  62% { opacity: .22; transform: scale(1.72); }
  100% { opacity: 0; transform: scale(2.5); }
}

@keyframes canvasAshDrift {
  0% {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(.42) rotate(0deg);
    filter: blur(0px);
  }
  14% { opacity: .95; }
  66% { opacity: .46; filter: blur(.45px); }
  100% {
    opacity: 0;
    transform: translate3d(var(--dx), var(--dy), 0) scale(1.24) rotate(var(--rot));
    filter: blur(1.7px);
  }
}

@media (max-width: 900px) {
  .book-real-gutter,
  .book-spine,
  .book-spine-glow,
  .book-spine-gems {
    display: none !important;
  }
}

/* === END CANVAS BURN BOOK FINAL POLISH === */


/* === PHOENIX NEWS CAROUSEL FINAL === */

.phoenix-news-section {
  position: relative !important;
  z-index: 65 !important;
  margin-top: 100vh !important;
  min-height: 100vh !important;
  padding: 110px 24px 120px !important;
  overflow: hidden !important;
  color: #f8d995 !important;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255, 120, 28, .16), transparent 48%),
    radial-gradient(ellipse at 50% 100%, rgba(255, 76, 0, .20), transparent 55%),
    linear-gradient(180deg, rgba(5, 1, 0, .10), rgba(5, 1, 0, .74) 18%, rgba(5, 1, 0, .92) 100%) !important;
  backdrop-filter: blur(1px) !important;
}

.news-bg-fire,
.news-bg-smoke {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}

.news-bg-fire {
  background:
    radial-gradient(ellipse at 18% 70%, rgba(255, 110, 22, .18), transparent 42%),
    radial-gradient(ellipse at 82% 68%, rgba(255, 183, 70, .13), transparent 44%),
    linear-gradient(90deg, transparent, rgba(255, 89, 0, .08), transparent) !important;
  mix-blend-mode: screen !important;
  animation: newsFireBreath 7s ease-in-out infinite !important;
}

.news-bg-smoke {
  background:
    radial-gradient(ellipse at 25% 45%, rgba(60, 52, 48, .22), transparent 48%),
    radial-gradient(ellipse at 74% 55%, rgba(42, 38, 36, .28), transparent 52%) !important;
  filter: blur(24px) !important;
  opacity: .78 !important;
}

.news-shell {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}

.news-header {
  text-align: center !important;
  margin-bottom: 42px !important;
}

.news-kicker {
  display: inline-block !important;
  margin-bottom: 12px !important;
  color: #ffbd65 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 13px !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 18px rgba(255,112,24,.42) !important;
}

.news-header h2 {
  margin: 0 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 5vw, 58px) !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #ffe3a0 !important;
  text-shadow:
    0 2px 0 rgba(70,25,5,.8),
    0 0 28px rgba(255, 138, 36, .42) !important;
}

.news-header p {
  max-width: 620px !important;
  margin: 16px auto 0 !important;
  color: rgba(255, 224, 171, .78) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.news-carousel {
  position: relative !important;
  padding: 0 58px !important;
}

.news-track {
  display: flex !important;
  gap: 22px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-padding: 8px !important;
  padding: 18px 8px 34px !important;
  scrollbar-width: none !important;
}

.news-track::-webkit-scrollbar {
  display: none !important;
}

.news-card {
  position: relative !important;
  flex: 0 0 min(330px, 82vw) !important;
  min-height: 255px !important;
  scroll-snap-align: start !important;
  overflow: hidden !important;

  padding: 28px 26px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255, 208, 126, .38) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 187, 81, .12), transparent 42%),
    linear-gradient(145deg, rgba(63, 28, 7, .80), rgba(14, 5, 1, .92) 62%, rgba(5, 1, 0, .96)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -20px 36px rgba(0,0,0,.48),
    0 24px 48px rgba(0,0,0,.52),
    0 0 24px rgba(255, 118, 28, .14) !important;
  transform: translateZ(0) !important;
  transition: transform .28s ease, filter .28s ease, box-shadow .28s ease !important;
}

.news-card:hover {
  transform: translateY(-8px) scale(1.015) !important;
  filter: brightness(1.12) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -20px 36px rgba(0,0,0,.46),
    0 30px 58px rgba(0,0,0,.58),
    0 0 38px rgba(255, 154, 55, .26) !important;
}

.news-card-glow {
  position: absolute !important;
  inset: -40px !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 162, 48, .28), transparent 42%) !important;
  opacity: .45 !important;
}

.news-date {
  position: relative !important;
  z-index: 2 !important;
  display: inline-flex !important;
  padding: 6px 11px !important;
  margin-bottom: 18px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 212, 128, .32) !important;
  color: #ffd487 !important;
  background: rgba(30, 10, 2, .58) !important;
  font-size: 12px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.news-card h3 {
  position: relative !important;
  z-index: 2 !important;
  margin: 0 0 13px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 23px !important;
  color: #ffe1a0 !important;
  text-shadow: 0 0 18px rgba(255, 129, 34, .28) !important;
}

.news-card p {
  position: relative !important;
  z-index: 2 !important;
  margin: 0 0 22px !important;
  color: rgba(255, 229, 182, .78) !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
}

.news-card a {
  position: relative !important;
  z-index: 2 !important;
  color: #ffca77 !important;
  text-decoration: none !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  text-shadow: 0 0 12px rgba(255,120,24,.34) !important;
}

.news-arrow {
  position: absolute !important;
  top: 50% !important;
  z-index: 5 !important;
  width: 46px !important;
  height: 86px !important;
  transform: translateY(-50%) !important;
  border: 1px solid rgba(255, 213, 128, .44) !important;
  border-radius: 999px !important;
  color: #ffd890 !important;
  font-size: 42px !important;
  line-height: 1 !important;
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.14), transparent 25%),
    linear-gradient(145deg, rgba(74, 37, 12, .88), rgba(10,3,1,.96)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 18px 32px rgba(0,0,0,.48),
    0 0 20px rgba(255, 119, 28, .16) !important;
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
}

.news-arrow:hover {
  filter: brightness(1.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 20px 36px rgba(0,0,0,.52),
    0 0 30px rgba(255, 164, 65, .28) !important;
}

.news-prev { left: 0 !important; }
.news-next { right: 0 !important; }

@keyframes newsFireBreath {
  0%, 100% { opacity: .50; transform: scale(1); }
  50% { opacity: .88; transform: scale(1.04); }
}

@media (max-width: 760px) {
  .phoenix-news-section {
    padding: 88px 14px 100px !important;
  }

  .news-carousel {
    padding: 0 !important;
  }

  .news-arrow {
    display: none !important;
  }

  .news-card {
    flex-basis: 84vw !important;
  }
}

/* === END PHOENIX NEWS CAROUSEL FINAL === */


/* === SMOOTH BURN SCROLL BUTTON FIX === */

/* Фикс: главный экран не должен ломаться из-за скролла */
html,
body {
  min-height: 200vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}

/* Фон/феникс остаются кликабельными на первом экране */
.scene {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Но интерактивная зона феникса и кнопки поверх */
.phoenix-hover-zone {
  position: fixed !important;
  z-index: 2147481200 !important;
  pointer-events: auto !important;
}

/* Кнопка Начать игру не исчезает от обычного скролла, только при открытой книге */
#startGameButton,
.l2-start-wrap,
.play-button,
.start-button,
.startGameButton,
.game-start,
.start-game,
.lux-start-button,
.premium-start-button,
[data-start-game],
[data-action="start"] {
  z-index: 2147481300 !important;
}

body:not(.lineage-book-open) #startGameButton,
body:not(.lineage-book-open) .l2-start-wrap,
body:not(.lineage-book-open) .play-button,
body:not(.lineage-book-open) .start-button,
body:not(.lineage-book-open) .startGameButton,
body:not(.lineage-book-open) .game-start,
body:not(.lineage-book-open) .start-game,
body:not(.lineage-book-open) .lux-start-button,
body:not(.lineage-book-open) .premium-start-button,
body:not(.lineage-book-open) [data-start-game],
body:not(.lineage-book-open) [data-action="start"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Новости начинаются строго после первого экрана и не перекрывают феникса до скролла */
.phoenix-hero-spacer {
  position: relative !important;
  z-index: 1 !important;
  height: 100vh !important;
  pointer-events: none !important;
}

.phoenix-news-section {
  margin-top: 0 !important;
  position: relative !important;
  z-index: 30 !important;
}

/* Canvas burn — плавнее и легче */
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 88 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
  will-change: opacity !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}

/* Во время canvas-сгорания отключаем старые тяжёлые CSS-анимации, чтобы не лагало */
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn {
  opacity: 0 !important;
  animation: none !important;
}

.lineage-book-overlay.is-canvas-burning .book-page-left,
.lineage-book-overlay.is-canvas-burning .book-page-right,
.lineage-book-overlay.is-canvas-burning .book-spine,
.lineage-book-overlay.is-canvas-burning .book-metal-corner,
.lineage-book-overlay.is-canvas-burning .book-outer-gold,
.lineage-book-overlay.is-canvas-burning .book-spine-gems,
.lineage-book-overlay.is-canvas-burning .book-spine-glow {
  animation: none !important;
}

/* Оставляем только огненную линию — она работает вместе с canvas */
.lineage-book-overlay.is-canvas-burning .burn-edge {
  animation: smoothBurnEdgeClimb 2.5s ease-out forwards !important;
}

.book-ash-particle {
  animation: smoothAshDrift var(--d) cubic-bezier(.12,.72,.18,1) forwards !important;
}

@keyframes smoothBurnEdgeClimb {
  0% {
    opacity: 0;
    transform: translateY(260px) scaleY(.10);
    filter: blur(12px) brightness(1);
  }
  16% {
    opacity: .95;
    transform: translateY(150px) scaleY(.72);
    filter: blur(8px) brightness(1.75);
  }
  52% {
    opacity: .78;
    transform: translateY(5px) scaleY(1.18);
    filter: blur(10px) brightness(1.25);
  }
  86% {
    opacity: .36;
    transform: translateY(-138px) scaleY(1.42);
    filter: blur(15px) brightness(.78);
  }
  100% {
    opacity: 0;
    transform: translateY(-245px) scaleY(1.62);
    filter: blur(20px) brightness(.50);
  }
}

@keyframes smoothAshDrift {
  0% {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(.42) rotate(0deg);
    filter: blur(0px);
  }
  14% { opacity: .88; }
  66% { opacity: .40; filter: blur(.45px); }
  100% {
    opacity: 0;
    transform: translate3d(var(--dx), var(--dy), 0) scale(1.18) rotate(var(--rot));
    filter: blur(1.5px);
  }
}

@media (max-width: 900px) {
  .phoenix-news-section {
    z-index: 30 !important;
  }
}

/* === END SMOOTH BURN SCROLL BUTTON FIX === */


/* === PREMIUM SCROLL BOOK FINAL FIX === */

/* Стартовая страница: при загрузке виден только главный экран */
html,
body {
  min-height: 200vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}

/* Фон остаётся фиксированным, новости — только ниже */
.scene {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Hero-spacer реально отталкивает новости вниз */
.phoenix-hero-spacer {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  height: 100vh !important;
  min-height: 100vh !important;
  pointer-events: none !important;
}

/* Новости не видны на загрузке, появляются только после скролла */
.phoenix-news-section {
  position: relative !important;
  z-index: 30 !important;
  margin-top: 0 !important;
  min-height: 100vh !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(90px) !important;
  pointer-events: none !important;

  transition:
    opacity .65s ease,
    transform .75s cubic-bezier(.16,.84,.18,1),
    visibility .65s ease !important;
}

body.news-revealed .phoenix-news-section {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

/* Подсказка скролла вниз */
.phoenix-scroll-hint {
  position: fixed !important;
  left: 50% !important;
  bottom: 26px !important;
  z-index: 2147481450 !important;
  transform: translateX(-50%) !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 7px !important;

  padding: 10px 16px 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 210, 126, .42) !important;
  color: #ffe0a0 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 174, 66, .18), transparent 48%),
    linear-gradient(145deg, rgba(62, 29, 8, .72), rgba(10, 3, 1, .72)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    0 18px 34px rgba(0,0,0,.46),
    0 0 26px rgba(255, 116, 24, .18) !important;
  backdrop-filter: blur(8px) !important;
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
  animation: scrollHintFloat 2.4s ease-in-out infinite !important;
  transition: opacity .32s ease, transform .32s ease, visibility .32s ease !important;
}

body.news-revealed .phoenix-scroll-hint,
body.lineage-book-open .phoenix-scroll-hint {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(-50%) translateY(18px) !important;
}

.scroll-hint-text {
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 14px rgba(255, 142, 34, .44) !important;
}

.scroll-hint-mouse {
  position: relative !important;
  width: 18px !important;
  height: 28px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 224, 155, .68) !important;
  box-shadow: inset 0 0 12px rgba(255, 139, 31, .13) !important;
}

.scroll-hint-wheel {
  position: absolute !important;
  left: 50% !important;
  top: 5px !important;
  width: 3px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #ffd98d !important;
  transform: translateX(-50%) !important;
  animation: scrollWheelMove 1.25s ease-in-out infinite !important;
}

.scroll-hint-arrow {
  font-size: 22px !important;
  line-height: .7 !important;
  color: #ffbd65 !important;
  text-shadow: 0 0 16px rgba(255, 109, 24, .62) !important;
}

/* Феникс и кнопка остаются рабочими на первом экране */
.phoenix-hover-zone {
  position: fixed !important;
  z-index: 2147481200 !important;
  pointer-events: auto !important;
}

body:not(.lineage-book-open) #startGameButton,
body:not(.lineage-book-open) .l2-start-wrap,
body:not(.lineage-book-open) .play-button,
body:not(.lineage-book-open) .start-button,
body:not(.lineage-book-open) .startGameButton,
body:not(.lineage-book-open) .game-start,
body:not(.lineage-book-open) .start-game,
body:not(.lineage-book-open) .lux-start-button,
body:not(.lineage-book-open) .premium-start-button,
body:not(.lineage-book-open) [data-start-game],
body:not(.lineage-book-open) [data-action="start"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Книга ещё дороже и грамотнее */
.lineage-book {
  width: min(955px, 92vw) !important;
  min-height: 535px !important;
  border-radius: 40px !important;
  filter:
    drop-shadow(0 94px 118px rgba(0,0,0,.985))
    drop-shadow(0 0 105px rgba(230, 132, 42, .50))
    drop-shadow(0 0 230px rgba(255, 116, 0, .22)) !important;
}

.book-page {
  min-height: 535px !important;
  background:
    radial-gradient(circle at 20% 15%, rgba(255,255,255,.46) 0 1px, transparent 18px),
    radial-gradient(circle at 78% 74%, rgba(92, 48, 16, .13) 0 2px, transparent 22px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.34), transparent 44%),
    linear-gradient(90deg, rgba(124, 70, 26, .16), transparent 18%, transparent 82%, rgba(124, 70, 26, .16)),
    linear-gradient(180deg, #fff7d8 0%, #edcc8a 43%, #bd7f3b 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.50),
    inset 0 -28px 46px rgba(79, 35, 7, .36),
    inset 0 0 76px rgba(55, 24, 3, .20) !important;
}

.book-real-gutter {
  position: absolute !important;
  top: 7px !important;
  bottom: 7px !important;
  left: 50% !important;
  width: 70px !important;
  transform: translateX(-50%) translateZ(36px) !important;
  z-index: 18 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.56) 0%, rgba(0,0,0,.31) 20%, transparent 62%),
    linear-gradient(90deg, rgba(33,9,1,.62), rgba(255,224,146,.18) 46%, rgba(255,232,158,.16) 54%, rgba(33,9,1,.62)) !important;
  opacity: .95 !important;
}

.book-page-left {
  box-shadow:
    inset -38px 0 48px rgba(54, 19, 3, .25),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -26px 42px rgba(79, 35, 7, .34),
    inset 0 0 70px rgba(55, 24, 3, .19) !important;
}

.book-page-right {
  box-shadow:
    inset 38px 0 48px rgba(54, 19, 3, .25),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -26px 42px rgba(79, 35, 7, .34),
    inset 0 0 70px rgba(55, 24, 3, .19) !important;
}

.book-engraving {
  position: absolute !important;
  top: 88px !important;
  width: 92px !important;
  height: 260px !important;
  z-index: 19 !important;
  pointer-events: none !important;
  opacity: .28 !important;
  filter: drop-shadow(0 0 10px rgba(255,184,78,.16)) !important;
  background:
    radial-gradient(circle at 50% 14%, transparent 0 13px, rgba(105,45,11,.72) 14px 15px, transparent 16px),
    radial-gradient(circle at 50% 50%, transparent 0 22px, rgba(105,45,11,.56) 23px 24px, transparent 25px),
    radial-gradient(circle at 50% 86%, transparent 0 13px, rgba(105,45,11,.72) 14px 15px, transparent 16px),
    linear-gradient(180deg, transparent, rgba(105,45,11,.35), transparent) !important;
}

.engraving-left {
  left: 34px !important;
}

.engraving-right {
  right: 34px !important;
  transform: scaleX(-1) !important;
}

.book-jewel {
  position: absolute !important;
  left: 50% !important;
  top: -18px !important;
  width: 42px !important;
  height: 42px !important;
  z-index: 28 !important;
  transform: translateX(-50%) rotate(45deg) translateZ(44px) !important;
  border: 1px solid rgba(255,231,159,.72) !important;
  border-radius: 11px !important;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,255,255,.82), transparent 14%),
    radial-gradient(circle at 50% 50%, #bf1d1d, #4d0707 72%) !important;
  box-shadow:
    0 0 16px rgba(255,215,128,.48),
    0 0 34px rgba(255,64,18,.32),
    inset 0 0 14px rgba(255,255,255,.12) !important;
}

/* Canvas burn smooth */
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 88 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
  will-change: opacity !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}

/* Отключаем старые тяжёлые закрывающие анимации */
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn {
  opacity: 0 !important;
  animation: none !important;
}

.lineage-book-overlay.is-canvas-burning .book-page-left,
.lineage-book-overlay.is-canvas-burning .book-page-right,
.lineage-book-overlay.is-canvas-burning .book-spine,
.lineage-book-overlay.is-canvas-burning .book-metal-corner,
.lineage-book-overlay.is-canvas-burning .book-outer-gold,
.lineage-book-overlay.is-canvas-burning .book-spine-gems,
.lineage-book-overlay.is-canvas-burning .book-spine-glow,
.lineage-book-overlay.is-canvas-burning .book-engraving,
.lineage-book-overlay.is-canvas-burning .book-jewel {
  animation: none !important;
}

.lineage-book-overlay.is-canvas-burning .burn-edge {
  animation: premiumBurnEdgeClimb 2.35s ease-out forwards !important;
}

.book-ash-particle {
  animation: premiumAshDrift var(--d) cubic-bezier(.12,.72,.18,1) forwards !important;
}

@keyframes premiumBurnEdgeClimb {
  0% {
    opacity: 0;
    transform: translateY(260px) scaleY(.10);
    filter: blur(12px) brightness(1);
  }
  16% {
    opacity: .90;
    transform: translateY(150px) scaleY(.68);
    filter: blur(8px) brightness(1.72);
  }
  52% {
    opacity: .70;
    transform: translateY(5px) scaleY(1.12);
    filter: blur(10px) brightness(1.20);
  }
  86% {
    opacity: .32;
    transform: translateY(-138px) scaleY(1.34);
    filter: blur(15px) brightness(.75);
  }
  100% {
    opacity: 0;
    transform: translateY(-245px) scaleY(1.52);
    filter: blur(20px) brightness(.48);
  }
}

@keyframes premiumAshDrift {
  0% {
    opacity: 0;
    transform: translate3d(0, 14px, 0) scale(.42) rotate(0deg);
    filter: blur(0px);
  }
  14% { opacity: .82; }
  66% { opacity: .36; filter: blur(.45px); }
  100% {
    opacity: 0;
    transform: translate3d(var(--dx), var(--dy), 0) scale(1.12) rotate(var(--rot));
    filter: blur(1.4px);
  }
}

@keyframes scrollHintFloat {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(8px); }
}

@keyframes scrollWheelMove {
  0% { opacity: 0; transform: translateX(-50%) translateY(0); }
  35% { opacity: 1; }
  100% { opacity: 0; transform: translateX(-50%) translateY(10px); }
}

@media (max-width: 900px) {
  .book-real-gutter,
  .book-spine,
  .book-spine-glow,
  .book-spine-gems,
  .book-engraving,
  .book-jewel {
    display: none !important;
  }

  .phoenix-scroll-hint {
    bottom: 16px !important;
    padding: 8px 13px 10px !important;
  }

  .scroll-hint-text {
    font-size: 10px !important;
  }
}

/* === END PREMIUM SCROLL BOOK FINAL FIX === */


/* === MIDDLE EARTH BOOK REAL BURN FINAL === */

/* Старт всегда с главной */
html,
body {
  min-height: 200vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}

.phoenix-boot-top body {
  overflow-y: hidden !important;
}

/* Главная фиксирована, новости строго после 100vh */
.scene {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  min-height: 100vh !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

.phoenix-hero-spacer {
  display: block !important;
  height: 100vh !important;
  min-height: 100vh !important;
  position: relative !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Новости появляются понятно: ниже первого экрана, затем плавно раскрываются */
.phoenix-news-section {
  position: relative !important;
  z-index: 30 !important;
  margin-top: 0 !important;
  min-height: 100vh !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(90px) scale(.985) !important;
  pointer-events: none !important;
  transition:
    opacity .65s ease,
    transform .75s cubic-bezier(.16,.84,.18,1),
    visibility .65s ease !important;
}

body.news-revealed .phoenix-news-section {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

/* Кнопка скролла — правый нижний угол */
.phoenix-scroll-hint {
  position: fixed !important;
  right: 24px !important;
  bottom: 24px !important;
  left: auto !important;
  z-index: 2147481450 !important;
  transform: none !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 7px !important;

  min-width: 112px !important;
  padding: 11px 15px 12px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255, 210, 126, .44) !important;
  color: #ffe0a0 !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 174, 66, .20), transparent 48%),
    linear-gradient(145deg, rgba(62, 29, 8, .74), rgba(10, 3, 1, .74)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 18px 34px rgba(0,0,0,.46),
    0 0 28px rgba(255, 116, 24, .20) !important;
  backdrop-filter: blur(8px) !important;
  cursor: url("assets/cursors/lineage2_original.cur"), auto !important;
  animation: scrollHintFloatRight 2.4s ease-in-out infinite !important;
  transition: opacity .32s ease, transform .32s ease, visibility .32s ease !important;
}

body.news-revealed .phoenix-scroll-hint,
body.lineage-book-open .phoenix-scroll-hint {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(18px) !important;
}

.scroll-hint-text {
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-shadow: 0 0 14px rgba(255, 142, 34, .44) !important;
}

.scroll-hint-mouse {
  position: relative !important;
  width: 18px !important;
  height: 28px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 224, 155, .68) !important;
  box-shadow: inset 0 0 12px rgba(255, 139, 31, .13) !important;
}

.scroll-hint-wheel {
  position: absolute !important;
  left: 50% !important;
  top: 5px !important;
  width: 3px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #ffd98d !important;
  transform: translateX(-50%) !important;
  animation: scrollWheelMove 1.25s ease-in-out infinite !important;
}

.scroll-hint-arrow {
  font-size: 22px !important;
  line-height: .7 !important;
  color: #ffbd65 !important;
  text-shadow: 0 0 16px rgba(255, 109, 24, .62) !important;
}

/* Феникс и кнопки рабочие */
.phoenix-hover-zone {
  position: fixed !important;
  z-index: 2147481200 !important;
  pointer-events: auto !important;
}

body:not(.lineage-book-open) #startGameButton,
body:not(.lineage-book-open) .l2-start-wrap,
body:not(.lineage-book-open) .play-button,
body:not(.lineage-book-open) .start-button,
body:not(.lineage-book-open) .startGameButton,
body:not(.lineage-book-open) .game-start,
body:not(.lineage-book-open) .start-game,
body:not(.lineage-book-open) .lux-start-button,
body:not(.lineage-book-open) .premium-start-button,
body:not(.lineage-book-open) [data-start-game],
body:not(.lineage-book-open) [data-action="start"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Потрёпанная книга из Средиземья */
.lineage-book {
  width: min(965px, 92vw) !important;
  min-height: 545px !important;
  border-radius: 42px !important;
  filter:
    drop-shadow(0 100px 128px rgba(0,0,0,.99))
    drop-shadow(0 0 112px rgba(230,132,42,.52))
    drop-shadow(0 0 245px rgba(255,116,0,.23)) !important;
}

.book-page {
  min-height: 545px !important;
  background:
    radial-gradient(circle at 18% 13%, rgba(255,255,255,.42) 0 1px, transparent 18px),
    radial-gradient(circle at 80% 75%, rgba(85, 39, 13, .16) 0 2px, transparent 24px),
    radial-gradient(circle at 38% 64%, rgba(83,44,12,.12) 0 18px, transparent 52px),
    radial-gradient(circle at 72% 32%, rgba(90,42,10,.10) 0 14px, transparent 48px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.32), transparent 44%),
    linear-gradient(90deg, rgba(102, 54, 19, .21), transparent 18%, transparent 82%, rgba(102, 54, 19, .21)),
    linear-gradient(180deg, #f7e4aa 0%, #d2a766 45%, #a36b33 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -30px 48px rgba(55, 22, 5, .40),
    inset 0 0 82px rgba(40, 17, 4, .26) !important;
}

.book-age-layer {
  position: absolute !important;
  inset: 18px !important;
  z-index: 21 !important;
  pointer-events: none !important;
  opacity: .42 !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(70,34,10,.20), transparent 26px),
    radial-gradient(circle at 88% 22%, rgba(70,34,10,.18), transparent 30px),
    radial-gradient(circle at 18% 82%, rgba(60,26,8,.22), transparent 34px),
    radial-gradient(circle at 82% 78%, rgba(60,26,8,.16), transparent 28px),
    repeating-linear-gradient(0deg, rgba(70,34,10,.045) 0 1px, transparent 1px 9px),
    repeating-linear-gradient(90deg, rgba(70,34,10,.025) 0 1px, transparent 1px 13px) !important;
  mix-blend-mode: multiply !important;
}

.book-torn-edge {
  position: absolute !important;
  top: 27px !important;
  bottom: 27px !important;
  width: 24px !important;
  z-index: 22 !important;
  pointer-events: none !important;
  opacity: .65 !important;
  background:
    radial-gradient(circle at 50% 8%, rgba(49,22,6,.34) 0 7px, transparent 8px),
    radial-gradient(circle at 50% 22%, rgba(49,22,6,.30) 0 5px, transparent 6px),
    radial-gradient(circle at 50% 44%, rgba(49,22,6,.36) 0 8px, transparent 9px),
    radial-gradient(circle at 50% 68%, rgba(49,22,6,.26) 0 6px, transparent 7px),
    radial-gradient(circle at 50% 88%, rgba(49,22,6,.34) 0 8px, transparent 9px) !important;
  filter: blur(.2px) !important;
}

.torn-left { left: 15px !important; }
.torn-right { right: 15px !important; transform: scaleX(-1) !important; }

.book-ink-map {
  position: absolute !important;
  left: 90px !important;
  right: 90px !important;
  top: 70px !important;
  bottom: 70px !important;
  z-index: 20 !important;
  pointer-events: none !important;
  opacity: .13 !important;
  background:
    radial-gradient(ellipse at 22% 42%, transparent 0 38px, rgba(56,24,6,.62) 39px 40px, transparent 41px),
    radial-gradient(ellipse at 72% 48%, transparent 0 46px, rgba(56,24,6,.56) 47px 48px, transparent 49px),
    linear-gradient(22deg, transparent 0 44%, rgba(56,24,6,.46) 45%, transparent 46%),
    linear-gradient(142deg, transparent 0 52%, rgba(56,24,6,.30) 53%, transparent 54%) !important;
}

.book-real-gutter {
  position: absolute !important;
  top: 8px !important;
  bottom: 8px !important;
  left: 50% !important;
  width: 76px !important;
  transform: translateX(-50%) translateZ(38px) !important;
  z-index: 24 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.60) 0%, rgba(0,0,0,.34) 22%, transparent 64%),
    linear-gradient(90deg, rgba(25,7,1,.66), rgba(255,224,146,.16) 46%, rgba(255,232,158,.15) 54%, rgba(25,7,1,.66)) !important;
  opacity: .96 !important;
}

.book-page-left {
  box-shadow:
    inset -44px 0 56px rgba(42, 14, 2, .34),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -28px 46px rgba(55, 22, 5, .36),
    inset 0 0 78px rgba(34, 14, 3, .24) !important;
}

.book-page-right {
  box-shadow:
    inset 44px 0 56px rgba(42, 14, 2, .34),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -28px 46px rgba(55, 22, 5, .36),
    inset 0 0 78px rgba(34, 14, 3, .24) !important;
}

.book-engraving {
  position: absolute !important;
  top: 82px !important;
  width: 100px !important;
  height: 278px !important;
  z-index: 25 !important;
  pointer-events: none !important;
  opacity: .24 !important;
  background:
    radial-gradient(circle at 50% 12%, transparent 0 13px, rgba(69,29,7,.72) 14px 15px, transparent 16px),
    radial-gradient(circle at 50% 50%, transparent 0 23px, rgba(69,29,7,.54) 24px 25px, transparent 26px),
    radial-gradient(circle at 50% 88%, transparent 0 13px, rgba(69,29,7,.72) 14px 15px, transparent 16px),
    linear-gradient(180deg, transparent, rgba(69,29,7,.35), transparent) !important;
}

.engraving-left { left: 33px !important; }
.engraving-right { right: 33px !important; transform: scaleX(-1) !important; }

.book-jewel {
  position: absolute !important;
  left: 50% !important;
  top: -19px !important;
  width: 44px !important;
  height: 44px !important;
  z-index: 32 !important;
  transform: translateX(-50%) rotate(45deg) translateZ(44px) !important;
  border: 1px solid rgba(255,231,159,.72) !important;
  border-radius: 11px !important;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,255,255,.82), transparent 14%),
    radial-gradient(circle at 50% 50%, #b51b1b, #3d0505 72%) !important;
  box-shadow:
    0 0 16px rgba(255,215,128,.48),
    0 0 34px rgba(255,64,18,.32),
    inset 0 0 14px rgba(255,255,255,.12) !important;
}

/* Canvas burn */
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 88 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
  will-change: opacity !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}

/* Старые тяжёлые эффекты выключены, чтобы не было лагов */
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn {
  opacity: 0 !important;
  animation: none !important;
}

.lineage-book-overlay.is-canvas-burning .book-page-left,
.lineage-book-overlay.is-canvas-burning .book-page-right,
.lineage-book-overlay.is-canvas-burning .book-spine,
.lineage-book-overlay.is-canvas-burning .book-metal-corner,
.lineage-book-overlay.is-canvas-burning .book-outer-gold,
.lineage-book-overlay.is-canvas-burning .book-spine-gems,
.lineage-book-overlay.is-canvas-burning .book-spine-glow,
.lineage-book-overlay.is-canvas-burning .book-engraving,
.lineage-book-overlay.is-canvas-burning .book-jewel,
.lineage-book-overlay.is-canvas-burning .book-age-layer,
.lineage-book-overlay.is-canvas-burning .book-torn-edge,
.lineage-book-overlay.is-canvas-burning .book-ink-map {
  animation: none !important;
}

.lineage-book-overlay.is-canvas-burning .burn-edge {
  animation: middleBurnEdgeClimb 2.15s ease-out forwards !important;
}

.book-ash-particle {
  animation: middleAshDrift var(--d) cubic-bezier(.12,.72,.18,1) forwards !important;
}

@keyframes middleBurnEdgeClimb {
  0% { opacity: 0; transform: translateY(260px) scaleY(.10); filter: blur(12px) brightness(1); }
  16% { opacity: .82; transform: translateY(150px) scaleY(.64); filter: blur(8px) brightness(1.62); }
  52% { opacity: .58; transform: translateY(5px) scaleY(1.05); filter: blur(10px) brightness(1.10); }
  86% { opacity: .24; transform: translateY(-138px) scaleY(1.22); filter: blur(15px) brightness(.68); }
  100% { opacity: 0; transform: translateY(-245px) scaleY(1.42); filter: blur(20px) brightness(.42); }
}

@keyframes middleAshDrift {
  0% { opacity: 0; transform: translate3d(0, 14px, 0) scale(.42) rotate(0deg); filter: blur(0px); }
  14% { opacity: .72; }
  66% { opacity: .30; filter: blur(.42px); }
  100% { opacity: 0; transform: translate3d(var(--dx), var(--dy), 0) scale(1.08) rotate(var(--rot)); filter: blur(1.3px); }
}

@keyframes scrollHintFloatRight {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(8px); }
}

@keyframes scrollWheelMove {
  0% { opacity: 0; transform: translateX(-50%) translateY(0); }
  35% { opacity: 1; }
  100% { opacity: 0; transform: translateX(-50%) translateY(10px); }
}

@media (max-width: 900px) {
  .book-real-gutter,
  .book-spine,
  .book-spine-glow,
  .book-spine-gems,
  .book-engraving,
  .book-jewel,
  .book-ink-map {
    display: none !important;
  }

  .phoenix-scroll-hint {
    right: 14px !important;
    bottom: 14px !important;
    min-width: 96px !important;
    padding: 8px 11px 9px !important;
  }

  .scroll-hint-text {
    font-size: 10px !important;
  }
}

/* === END MIDDLE EARTH BOOK REAL BURN FINAL === */


/* === NEWS HIDE START BUTTON FIX === */

/* Когда пользователь нажал кнопку новостей или проскроллил к новостям — "Начать игру" исчезает */
body.news-scroll-active #startGameButton,
body.news-scroll-active .l2-start-wrap,
body.news-scroll-active .play-button,
body.news-scroll-active .start-button,
body.news-scroll-active .startGameButton,
body.news-scroll-active .game-start,
body.news-scroll-active .start-game,
body.news-scroll-active .lux-start-button,
body.news-scroll-active .premium-start-button,
body.news-scroll-active [data-start-game],
body.news-scroll-active [data-action="start"],
body.news-revealed #startGameButton,
body.news-revealed .l2-start-wrap,
body.news-revealed .play-button,
body.news-revealed .start-button,
body.news-revealed .startGameButton,
body.news-revealed .game-start,
body.news-revealed .start-game,
body.news-revealed .lux-start-button,
body.news-revealed .premium-start-button,
body.news-revealed [data-start-game],
body.news-revealed [data-action="start"] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(18px) scale(.96) !important;
  transition:
    opacity .28s ease,
    visibility .28s ease,
    transform .28s ease !important;
}

/* При возврате наверх кнопка снова видна */
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) #startGameButton,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .l2-start-wrap,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .play-button,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .start-button,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .startGameButton,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .game-start,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .start-game,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .lux-start-button,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) .premium-start-button,
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) [data-start-game],
body:not(.lineage-book-open):not(.news-revealed):not(.news-scroll-active) [data-action="start"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* === END NEWS HIDE START BUTTON FIX === */


/* === PRO BOOK BURN FINAL === */

/* Убираем карту и falling ash, возвращаем дорогую книгу */
.book-falling-ash-field,
.book-falling-ash,
.book-flame-stage,
.flame-tongue,
.flame-smoke-layer,
.flame-bright-line {
  display: none !important;
  opacity: 0 !important;
  animation: none !important;
}

.lineage-book {
  width: min(965px, 92vw) !important;
  min-height: 545px !important;
  border-radius: 42px !important;
  overflow: visible !important;
  transform-style: preserve-3d !important;
  background:
    linear-gradient(145deg, rgba(65,24,5,.98), rgba(22,7,1,.98) 45%, rgba(91,45,11,.96)) !important;
  border: none !important;
  box-shadow:
    0 100px 128px rgba(0,0,0,.99),
    0 0 112px rgba(230,132,42,.52),
    0 0 245px rgba(255,116,0,.23) !important;
  clip-path: none !important;
}

.book-page {
  min-height: 545px !important;
  background:
    radial-gradient(circle at 18% 13%, rgba(255,255,255,.42) 0 1px, transparent 18px),
    radial-gradient(circle at 80% 75%, rgba(85,39,13,.16) 0 2px, transparent 24px),
    radial-gradient(circle at 38% 64%, rgba(83,44,12,.12) 0 18px, transparent 52px),
    radial-gradient(circle at 72% 32%, rgba(90,42,10,.10) 0 14px, transparent 48px),
    radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.32), transparent 44%),
    linear-gradient(90deg, rgba(102,54,19,.21), transparent 18%, transparent 82%, rgba(102,54,19,.21)),
    linear-gradient(180deg, #f7e4aa 0%, #d2a766 45%, #a36b33 100%) !important;
  border: 1px solid rgba(255,218,136,.25) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -30px 48px rgba(55,22,5,.40),
    inset 0 0 82px rgba(40,17,4,.26) !important;
}

.book-page-left {
  box-shadow:
    inset -44px 0 56px rgba(42,14,2,.34),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -28px 46px rgba(55,22,5,.36),
    inset 0 0 78px rgba(34,14,3,.24) !important;
}

.book-page-right {
  box-shadow:
    inset 44px 0 56px rgba(42,14,2,.34),
    inset 0 1px 0 rgba(255,255,255,.46),
    inset 0 -28px 46px rgba(55,22,5,.36),
    inset 0 0 78px rgba(34,14,3,.24) !important;
}

.book-real-gutter {
  display: block !important;
  position: absolute !important;
  top: 8px !important;
  bottom: 8px !important;
  left: 50% !important;
  width: 76px !important;
  transform: translateX(-50%) translateZ(38px) !important;
  z-index: 24 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.60) 0%, rgba(0,0,0,.34) 22%, transparent 64%),
    linear-gradient(90deg, rgba(25,7,1,.66), rgba(255,224,146,.16) 46%, rgba(255,232,158,.15) 54%, rgba(25,7,1,.66)) !important;
  opacity: .96 !important;
}

.book-metal-corner,
.book-outer-gold,
.book-jewel,
.book-engraving {
  display: block !important;
}

.book-age-layer {
  inset: 18px !important;
  border-radius: 28px !important;
  opacity: .40 !important;
}

.book-torn-edge {
  opacity: .60 !important;
}

/* Canvas-огонь поверх книги */
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2147480900 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
}

.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}

/* Никаких старых тяжёлых полос и пузырей */
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn,
.lineage-book-overlay.is-canvas-burning .burn-edge {
  opacity: 0 !important;
  animation: none !important;
}

/* === END PRO BOOK BURN FINAL === */




/* === MEDIEVAL BOOK REAL FIRE UPGRADE === */
.book-flame-stage,
.book-falling-ash-field,
.book-falling-ash,
.flame-tongue,
.flame-smoke-layer,
.flame-bright-line,
.book-ink-map {
  display: none !important;
  opacity: 0 !important;
  animation: none !important;
}

.lineage-book {
  width: min(980px, 92vw) !important;
  min-height: 560px !important;
  border-radius: 40px !important;
  overflow: visible !important;
  background:
    linear-gradient(145deg, rgba(68,28,7,.98), rgba(23,8,2,.99) 42%, rgba(92,44,10,.98)) !important;
  box-shadow:
    0 100px 134px rgba(0,0,0,.99),
    0 0 115px rgba(228,128,38,.44),
    0 0 240px rgba(255,116,0,.18) !important;
}
.lineage-book::before {
  content: "" !important;
  position: absolute !important;
  inset: 10px !important;
  border-radius: 34px !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(255,224,150,.12), transparent 12%, transparent 86%, rgba(0,0,0,.20)),
    linear-gradient(90deg, rgba(255,218,138,.08), transparent 18%, transparent 82%, rgba(255,218,138,.06));
  box-shadow: inset 0 0 0 1px rgba(255,219,143,.14), inset 0 0 26px rgba(255,177,74,.10) !important;
}
.book-page {
  min-height: 560px !important;
  background:
    radial-gradient(circle at 9% 15%, rgba(255,255,255,.18) 0 1px, transparent 12px),
    radial-gradient(circle at 86% 72%, rgba(84,36,12,.12) 0 2px, transparent 18px),
    radial-gradient(circle at 28% 80%, rgba(96,48,16,.10) 0 18px, transparent 44px),
    radial-gradient(circle at 74% 18%, rgba(98,50,16,.11) 0 14px, transparent 36px),
    repeating-linear-gradient(0deg, rgba(86,46,14,.028) 0 1px, transparent 1px 10px),
    linear-gradient(90deg, rgba(104,60,25,.25), transparent 16%, transparent 84%, rgba(104,60,25,.22)),
    linear-gradient(180deg, #faebbc 0%, #d8b177 45%, #9f6935 100%) !important;
  border: 1px solid rgba(255,219,144,.26) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -34px 54px rgba(52,22,6,.36),
    inset 0 0 84px rgba(36,15,4,.23) !important;
}
.book-page-left,
.book-page-right {
  position: relative !important;
}
.book-page-left::before,
.book-page-right::before {
  content: "" !important;
  position: absolute !important;
  top: 20px !important;
  bottom: 20px !important;
  width: 18px !important;
  pointer-events: none !important;
  opacity: .78 !important;
  background:
    radial-gradient(circle at 50% 6%, rgba(62,28,10,.42) 0 7px, transparent 8px),
    radial-gradient(circle at 50% 18%, rgba(62,28,10,.30) 0 5px, transparent 6px),
    radial-gradient(circle at 50% 33%, rgba(62,28,10,.45) 0 7px, transparent 8px),
    radial-gradient(circle at 50% 51%, rgba(62,28,10,.35) 0 5px, transparent 6px),
    radial-gradient(circle at 50% 70%, rgba(62,28,10,.38) 0 7px, transparent 8px),
    radial-gradient(circle at 50% 88%, rgba(62,28,10,.44) 0 7px, transparent 8px) !important;
  filter: blur(.2px) !important;
}
.book-page-left::before { left: 8px !important; }
.book-page-right::before { right: 8px !important; transform: scaleX(-1) !important; }
.book-age-layer {
  opacity: .52 !important;
  background:
    radial-gradient(circle at 10% 16%, rgba(72,36,12,.22), transparent 28px),
    radial-gradient(circle at 90% 20%, rgba(72,36,12,.18), transparent 30px),
    radial-gradient(circle at 18% 84%, rgba(62,26,8,.24), transparent 36px),
    radial-gradient(circle at 80% 78%, rgba(62,26,8,.20), transparent 32px),
    radial-gradient(circle at 52% 48%, rgba(68,30,10,.10), transparent 130px),
    repeating-linear-gradient(0deg, rgba(70,34,10,.05) 0 1px, transparent 1px 8px),
    repeating-linear-gradient(90deg, rgba(70,34,10,.03) 0 1px, transparent 1px 12px) !important;
}
.book-torn-edge {
  width: 28px !important;
  opacity: .82 !important;
}
.book-real-gutter {
  width: 82px !important;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.66) 0%, rgba(0,0,0,.38) 22%, transparent 66%),
    linear-gradient(90deg, rgba(30,10,2,.78), rgba(255,224,146,.15) 46%, rgba(255,232,158,.14) 54%, rgba(30,10,2,.78)) !important;
}
.book-page h2,
.book-page h3,
.book-subtitle,
.book-seal {
  text-shadow: 0 1px 0 rgba(255,255,255,.10), 0 0 16px rgba(255,190,92,.10) !important;
}
.book-burn-canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2147480900 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  mix-blend-mode: screen !important;
}
.lineage-book-overlay.is-canvas-burning .book-burn-canvas {
  opacity: 1 !important;
}
.lineage-book-overlay.is-canvas-burning .book-real-fire-wall,
.lineage-book-overlay.is-canvas-burning .book-video-burn,
.lineage-book-overlay.is-canvas-burning .burn-edge,
.lineage-book-overlay.is-canvas-burning .book-ash-field,
.lineage-book-overlay.is-canvas-burning .book-fragment-field {
  opacity: 0 !important;
  animation: none !important;
}
/* === END MEDIEVAL BOOK REAL FIRE UPGRADE === */


/* Burn disappearance fix */
.lineage-book{ --burn-progress: 0; }
.lineage-book::before,
.lineage-book::after{ transition: opacity .08s linear; }
.lineage-book-overlay.is-canvas-burning .lineage-book::before,
.lineage-book-overlay.is-canvas-burning .lineage-book::after{ opacity: calc(1 - var(--burn-progress, 0) * 1.35) !important; }
.lineage-book-overlay.is-canvas-burning .book-page,
.lineage-book-overlay.is-canvas-burning .book-spine,
.lineage-book-overlay.is-canvas-burning .book-spine-glow,
.lineage-book-overlay.is-canvas-burning .book-spine-gems,
.lineage-book-overlay.is-canvas-burning .book-real-gutter,
.lineage-book-overlay.is-canvas-burning .book-age-layer,
.lineage-book-overlay.is-canvas-burning .book-torn-edge,
.lineage-book-overlay.is-canvas-burning .book-metal-corner,
.lineage-book-overlay.is-canvas-burning .book-engraving,
.lineage-book-overlay.is-canvas-burning .book-jewel,
.lineage-book-overlay.is-canvas-burning .book-world-aura,
.lineage-book-overlay.is-canvas-burning .book-back-plate,
.lineage-book-overlay.is-canvas-burning .book-outer-gold,
.lineage-book-overlay.is-canvas-burning .book-left-thickness,
.lineage-book-overlay.is-canvas-burning .book-right-thickness,
.lineage-book-overlay.is-canvas-burning .book-soul-flame{ opacity: calc(1 - var(--burn-progress, 0) * 1.25) !important; }


/* === PREMIUM HOTFIX: smoother close + softer background + lava mist === */
.bg-layer {
  filter: brightness(0.94) contrast(0.97) saturate(0.88) !important;
}

body.phoenix-center-lit .bg-layer {
  filter:
    brightness(1.08)
    contrast(1.03)
    saturate(1.02)
    drop-shadow(0 0 14px rgba(255, 190, 84, .10))
    drop-shadow(0 0 28px rgba(255, 96, 0, .10)) !important;
}

.bg-soften-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 9 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 22%, rgba(255, 168, 78, .06), transparent 28%),
    radial-gradient(ellipse at 50% 86%, rgba(255, 92, 0, .08), transparent 32%),
    linear-gradient(180deg, rgba(8, 5, 4, .08), rgba(8, 5, 4, .14) 38%, rgba(8, 5, 4, .18) 100%) !important;
  mix-blend-mode: screen !important;
}

.lava-mist {
  position: absolute !important;
  left: -6% !important;
  right: -6% !important;
  bottom: -2.5vh !important;
  height: 26vh !important;
  z-index: 18 !important;
  pointer-events: none !important;
  opacity: .78 !important;
  background:
    radial-gradient(ellipse at 10% 92%, rgba(255, 172, 100, .18), transparent 36%),
    radial-gradient(ellipse at 28% 88%, rgba(255, 132, 58, .15), transparent 34%),
    radial-gradient(ellipse at 50% 96%, rgba(255, 202, 156, .20), transparent 40%),
    radial-gradient(ellipse at 72% 90%, rgba(255, 144, 78, .14), transparent 34%),
    radial-gradient(ellipse at 90% 92%, rgba(255, 176, 108, .18), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(150, 110, 88, .10) 38%, rgba(38, 30, 26, .30) 100%) !important;
  filter: blur(20px) saturate(1.02) !important;
  animation: lavaMistFlow 7.5s ease-in-out infinite alternate !important;
}

.lava-mist::before,
.lava-mist::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}

.lava-mist::before {
  background:
    radial-gradient(ellipse at 22% 100%, rgba(255, 226, 196, .18), transparent 28%),
    radial-gradient(ellipse at 54% 96%, rgba(255, 240, 220, .14), transparent 24%),
    radial-gradient(ellipse at 78% 102%, rgba(255, 215, 180, .12), transparent 24%) !important;
  filter: blur(14px) !important;
  opacity: .82 !important;
  animation: lavaMistDriftA 9s ease-in-out infinite !important;
}

.lava-mist::after {
  background:
    radial-gradient(ellipse at 38% 96%, rgba(80, 70, 66, .12), transparent 28%),
    radial-gradient(ellipse at 68% 94%, rgba(120, 96, 82, .10), transparent 24%) !important;
  filter: blur(22px) !important;
  opacity: .65 !important;
  animation: lavaMistDriftB 11s ease-in-out infinite !important;
}

@keyframes lavaMistFlow {
  0% { transform: translate3d(0, 0, 0) scale(1); opacity: .72; }
  100% { transform: translate3d(0, -8px, 0) scale(1.02); opacity: .84; }
}
@keyframes lavaMistDriftA {
  0%,100% { transform: translateX(-1.2%) translateY(0); }
  50% { transform: translateX(1.4%) translateY(-6px); }
}
@keyframes lavaMistDriftB {
  0%,100% { transform: translateX(1.5%) translateY(0); }
  50% { transform: translateX(-1.2%) translateY(-4px); }
}

.lineage-book-overlay.is-hidden-clean {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.lineage-book-overlay.is-closing-final .lineage-book {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.lineage-book-overlay.is-closing-final .book-close,
.lineage-book-overlay.is-closing-final .book-floor-shadow,
.lineage-book-overlay.is-closing-final .book-cinematic-fog,
.lineage-book-overlay.is-closing-final .book-stained-light {
  opacity: 0 !important;
  transition: opacity .18s linear !important;
}

@media (max-width: 768px) {
  .bg-layer {
    filter: brightness(0.95) contrast(0.98) saturate(0.90) !important;
  }
  .lava-mist {
    height: 20vh !important;
    bottom: -1vh !important;
    filter: blur(14px) !important;
    opacity: .68 !important;
  }
}
/* === END PREMIUM HOTFIX === */


/* === PREMIUM PARCHMENT SCROLL OVERRIDES === */
.lineage-book {
  width: min(1040px, 90vw) !important;
  min-height: 560px !important;
  padding: 64px 58px 58px !important;
  border-radius: 28px !important;
  background: transparent !important;
  box-shadow:
    0 40px 110px rgba(0,0,0,.58),
    0 18px 44px rgba(0,0,0,.30),
    0 0 0 1px rgba(255,218,164,.14),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  transform: perspective(1600px) rotateX(1.6deg) !important;
  overflow: visible !important;
}

.lineage-book::before,
.lineage-book::after {
  content: "";
  position: absolute;
  left: 38px;
  right: 38px;
  height: 28px;
  border-radius: 999px;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(175,116,57,.95) 0%, rgba(120,71,33,.96) 34%, rgba(68,38,16,.98) 100%);
  box-shadow:
    inset 0 2px 4px rgba(255,214,150,.28),
    inset 0 -4px 8px rgba(0,0,0,.34),
    0 5px 10px rgba(0,0,0,.32);
}

.lineage-book::before {
  top: 18px;
}

.lineage-book::after {
  bottom: 18px;
}

.book-world-aura,
.book-back-plate,
.book-outer-gold,
.book-left-thickness,
.book-right-thickness,
.book-soul-flame,
.book-spine,
.book-spine-glow,
.book-spine-gems,
.book-real-gutter,
.book-metal-corner,
.book-engraving,
.book-jewel,
.page-red-ribbon,
.book-rune,
.page-gold-line,
.book-floor-shadow {
  display: none !important;
}

.book-age-layer,
.book-ink-map {
  display: block !important;
  position: absolute !important;
  inset: 44px 38px !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

.book-age-layer {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 14% 12%, rgba(147, 98, 43, .18), transparent 22%),
    radial-gradient(circle at 88% 16%, rgba(122, 74, 30, .14), transparent 18%),
    radial-gradient(circle at 50% 88%, rgba(95, 61, 28, .10), transparent 30%),
    linear-gradient(180deg, rgba(255,247,220,.12), rgba(124,84,40,.05)) !important;
  mix-blend-mode: multiply !important;
  opacity: .9 !important;
}

.book-ink-map {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 24% 44%, rgba(89,60,31,.06), transparent 18%),
    radial-gradient(circle at 66% 56%, rgba(89,60,31,.05), transparent 16%),
    linear-gradient(115deg, transparent 0 14%, rgba(95, 70, 44, .06) 14.6%, transparent 15.2% 28%, rgba(95,70,44,.04) 28.5%, transparent 29.2% 55%, rgba(95,70,44,.045) 55.6%, transparent 56.2% 100%) !important;
  opacity: .7 !important;
}

.book-page {
  position: relative !important;
  z-index: 1 !important;
  min-height: 430px !important;
  padding: 34px 34px 30px !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,250,234,.72), transparent 24%),
    radial-gradient(circle at 82% 12%, rgba(248,233,197,.24), transparent 18%),
    linear-gradient(180deg, rgba(243,223,185,.98) 0%, rgba(229,202,159,.99) 44%, rgba(210,177,131,.98) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 0 32px rgba(106, 65, 24, .09),
    inset 0 -10px 24px rgba(110,72,31,.10),
    0 8px 24px rgba(0,0,0,.18) !important;
  overflow: hidden !important;
}

.book-page::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(111,71,30,.15), transparent 4%, transparent 96%, rgba(111,71,30,.15)),
    linear-gradient(180deg, rgba(255,255,255,.12), transparent 16%, transparent 82%, rgba(84,54,22,.08));
  mix-blend-mode: multiply;
}

.book-page::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    radial-gradient(circle at 20% 28%, rgba(130, 80, 36, .08) 0 1px, transparent 2px),
    radial-gradient(circle at 72% 66%, rgba(130, 80, 36, .05) 0 1px, transparent 2px),
    radial-gradient(circle at 44% 80%, rgba(130, 80, 36, .04) 0 1px, transparent 2px);
  background-size: 140px 140px, 180px 180px, 160px 160px;
  opacity: .7;
}

.book-page-left {
  border-top-right-radius: 10px !important;
  border-bottom-right-radius: 10px !important;
}

.book-page-right {
  border-top-left-radius: 10px !important;
  border-bottom-left-radius: 10px !important;
}

.book-page-left .burn-edge,
.book-page-right .burn-edge {
  position: absolute !important;
  top: 10px !important;
  bottom: 10px !important;
  width: 26px !important;
  z-index: 3 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 20% 14%, rgba(91,52,20,.16), transparent 26%),
    radial-gradient(circle at 60% 32%, rgba(91,52,20,.10), transparent 18%),
    radial-gradient(circle at 40% 84%, rgba(91,52,20,.14), transparent 20%) !important;
  filter: blur(.2px) !important;
}

.book-page-left .burn-edge {
  left: -6px !important;
  clip-path: polygon(22% 0%, 74% 2%, 92% 8%, 78% 14%, 98% 22%, 80% 30%, 94% 40%, 74% 48%, 98% 58%, 76% 67%, 92% 77%, 68% 86%, 84% 94%, 48% 100%, 0% 100%, 0% 0%);
}

.book-page-right .burn-edge {
  right: -6px !important;
  clip-path: polygon(100% 0%, 100% 100%, 52% 100%, 16% 94%, 32% 86%, 8% 77%, 24% 67%, 2% 58%, 26% 48%, 6% 40%, 20% 30%, 2% 22%, 22% 14%, 8% 8%, 26% 2%, 78% 0%);
}

.book-page-left .page-depth-shadow,
.book-page-right .page-depth-shadow,
.book-page-left .page-grain,
.book-page-right .page-grain,
.book-page-left .page-inner-light,
.book-page-right .page-inner-light {
  opacity: .9 !important;
}

.book-page-left {
  border-right: 1px solid rgba(93,64,33,.18) !important;
}
.book-page-right {
  border-left: 1px solid rgba(255,248,228,.22) !important;
}

.lineage-book .book-torn-edge {
  display: block !important;
  position: absolute !important;
  top: 42px !important;
  bottom: 42px !important;
  width: 18px !important;
  z-index: 2 !important;
  opacity: .72 !important;
  pointer-events: none !important;
}

.lineage-book .torn-left {
  left: 36px !important;
  background: linear-gradient(90deg, rgba(116,78,42,.34), rgba(137,91,49,.12), transparent) !important;
  clip-path: polygon(0 0, 82% 0, 66% 8%, 92% 16%, 68% 24%, 90% 34%, 60% 46%, 86% 58%, 62% 70%, 84% 82%, 56% 92%, 76% 100%, 0 100%);
}

.lineage-book .torn-right {
  right: 36px !important;
  background: linear-gradient(270deg, rgba(116,78,42,.34), rgba(137,91,49,.12), transparent) !important;
  clip-path: polygon(100% 0, 18% 0, 34% 8%, 8% 16%, 32% 24%, 10% 34%, 40% 46%, 14% 58%, 38% 70%, 16% 82%, 44% 92%, 24% 100%, 100% 100%);
}

.book-page h2,
.book-page h3 {
  color: #5a3315 !important;
  text-shadow: 0 1px 0 rgba(255,248,228,.45), 0 0 10px rgba(152,108,58,.10) !important;
  letter-spacing: .07em !important;
}

.book-subtitle,
.book-page p,
.book-page li,
.book-stats span,
.book-seal {
  color: #5f3c1f !important;
}

.book-page p,
.book-page li {
  line-height: 1.75 !important;
}

.book-stats span {
  background: rgba(111,69,31,.07) !important;
  border: 1px solid rgba(111,69,31,.12) !important;
}

.book-seal {
  border: 1px solid rgba(122, 74, 30, .22) !important;
  background: linear-gradient(180deg, rgba(144,92,42,.14), rgba(99,58,23,.08)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24), 0 8px 18px rgba(0,0,0,.12) !important;
}

.book-close {
  top: 8px !important;
  right: 16px !important;
  z-index: 4 !important;
  background: linear-gradient(180deg, #8c5d2f, #5f3917) !important;
  border: 1px solid rgba(240,214,172,.46) !important;
}

@media (max-width: 920px) {
  .lineage-book {
    width: min(92vw, 760px) !important;
    min-height: 0 !important;
    padding: 52px 22px 48px !important;
  }
  .lineage-book::before,
  .lineage-book::after {
    left: 16px !important;
    right: 16px !important;
  }
  .book-age-layer,
  .book-ink-map {
    inset: 36px 14px !important;
  }
}

@media (max-width: 768px) {
  .lineage-book {
    width: min(94vw, 620px) !important;
    padding: 48px 14px 42px !important;
    border-radius: 22px !important;
  }
  .lineage-book::before,
  .lineage-book::after {
    left: 10px !important;
    right: 10px !important;
    height: 22px !important;
  }
  .book-page {
    min-height: auto !important;
    padding: 24px 18px 22px !important;
  }
  .book-page-left,
  .book-page-right {
    border-radius: 14px !important;
    border-left: none !important;
    border-right: none !important;
  }
  .lineage-book .torn-left,
  .lineage-book .torn-right {
    display: none !important;
  }
}
/* === END PREMIUM PARCHMENT SCROLL OVERRIDES === */


/* === LAVA RETURN + ANCIENT PARCHMENT EDGES FIX === */
#lava {
  z-index: 17 !important;
  opacity: 1 !important;
  mix-blend-mode: screen !important;
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 22%, rgba(0,0,0,.65) 42%, rgba(0,0,0,.18) 64%, rgba(0,0,0,0) 78%) !important;
  mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 22%, rgba(0,0,0,.65) 42%, rgba(0,0,0,.18) 64%, rgba(0,0,0,0) 78%) !important;
  filter: saturate(1.18) brightness(1.06) blur(.2px) !important;
}

.lava-flow {
  z-index: 15 !important;
  bottom: -8% !important;
  height: 40% !important;
  opacity: .86 !important;
  background:
    radial-gradient(ellipse at 50% 102%, rgba(255, 236, 160, 0.52), rgba(255, 114, 22, 0.30) 22%, rgba(255, 68, 0, 0.16) 38%, transparent 67%),
    radial-gradient(ellipse at 24% 100%, rgba(255, 178, 86, 0.24), transparent 28%),
    radial-gradient(ellipse at 76% 100%, rgba(255, 178, 86, 0.24), transparent 28%),
    repeating-linear-gradient(112deg,
      rgba(255, 216, 120, 0.00) 0px,
      rgba(255, 216, 120, 0.14) 14px,
      rgba(255, 82, 0, 0.12) 28px,
      rgba(255, 176, 74, 0.08) 40px,
      rgba(255, 216, 120, 0.00) 62px
    ) !important;
  filter: blur(10px) saturate(1.16) !important;
  animation: lavaMovePremium 6.8s ease-in-out infinite !important;
}

@keyframes lavaMovePremium {
  0% { transform: translateX(-2.2%) translateY(0) scaleY(.98); opacity: .74; }
  50% { transform: translateX(2.5%) translateY(-2.2%) scaleY(1.04); opacity: .92; }
  100% { transform: translateX(-2.2%) translateY(0) scaleY(.98); opacity: .74; }
}

.lava-mist {
  z-index: 18 !important;
  bottom: -2vh !important;
  height: 28vh !important;
  opacity: .92 !important;
  background:
    radial-gradient(ellipse at 8% 96%, rgba(255, 182, 118, .20), transparent 34%),
    radial-gradient(ellipse at 28% 90%, rgba(255, 148, 78, .18), transparent 30%),
    radial-gradient(ellipse at 50% 98%, rgba(255, 214, 172, .24), transparent 40%),
    radial-gradient(ellipse at 72% 90%, rgba(255, 148, 78, .18), transparent 30%),
    radial-gradient(ellipse at 92% 96%, rgba(255, 182, 118, .20), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(170, 118, 86, .12) 32%, rgba(38, 30, 26, .36) 100%) !important;
}

.lineage-book {
  overflow: visible !important;
}

.book-page {
  clip-path: polygon(
    1.2% 1.2%, 7% .3%, 14% 1.5%, 22% .6%, 31% 1.4%, 39% .8%, 49% 1.6%, 60% .7%, 70% 1.8%, 80% .9%, 89% 1.5%, 96% .5%,
    98.8% 3.2%, 99.5% 10%, 98.3% 17%, 99.4% 25%, 98.1% 33%, 99.5% 42%, 98.2% 51%, 99.2% 61%, 98% 71%, 99.5% 81%, 98.1% 91%, 97.2% 97.4%,
    90% 99.4%, 82% 98.4%, 74% 99.3%, 65% 98.2%, 56% 99.2%, 47% 98.1%, 38% 99.4%, 29% 98.3%, 20% 99.2%, 12% 98.4%, 4% 99.2%,
    1.1% 96%, .5% 88%, 1.6% 80%, .4% 71%, 1.5% 63%, .6% 54%, 1.4% 46%, .4% 36%, 1.7% 27%, .7% 18%, 1.4% 10%
  ) !important;
}

.book-page-left,
.book-page-right {
  position: relative !important;
}

.book-page-left::before,
.book-page-right::before,
.book-page-left::after,
.book-page-right::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 4;
}

.book-page-left::before,
.book-page-right::before {
  top: -6px;
  left: 12px;
  right: 12px;
  height: 18px;
  background:
    radial-gradient(circle at 2% 70%, rgba(119, 74, 32, .18) 0 4px, transparent 5px),
    radial-gradient(circle at 15% 30%, rgba(119, 74, 32, .12) 0 3px, transparent 4px),
    radial-gradient(circle at 31% 76%, rgba(119, 74, 32, .14) 0 4px, transparent 5px),
    radial-gradient(circle at 47% 24%, rgba(119, 74, 32, .12) 0 3px, transparent 4px),
    radial-gradient(circle at 63% 80%, rgba(119, 74, 32, .14) 0 4px, transparent 5px),
    radial-gradient(circle at 79% 26%, rgba(119, 74, 32, .13) 0 3px, transparent 4px),
    radial-gradient(circle at 97% 72%, rgba(119, 74, 32, .18) 0 4px, transparent 5px);
  opacity: .74;
  filter: blur(.2px);
}

.book-page-left::after,
.book-page-right::after {
  bottom: -7px;
  left: 16px;
  right: 16px;
  height: 18px;
  background:
    radial-gradient(circle at 6% 30%, rgba(119, 74, 32, .16) 0 4px, transparent 5px),
    radial-gradient(circle at 22% 78%, rgba(119, 74, 32, .14) 0 3px, transparent 4px),
    radial-gradient(circle at 40% 24%, rgba(119, 74, 32, .12) 0 4px, transparent 5px),
    radial-gradient(circle at 58% 80%, rgba(119, 74, 32, .15) 0 4px, transparent 5px),
    radial-gradient(circle at 76% 22%, rgba(119, 74, 32, .12) 0 3px, transparent 4px),
    radial-gradient(circle at 94% 74%, rgba(119, 74, 32, .16) 0 4px, transparent 5px);
  opacity: .7;
  filter: blur(.2px);
}

.book-page-left .burn-edge,
.book-page-right .burn-edge {
  width: 36px !important;
  top: 6px !important;
  bottom: 6px !important;
  opacity: .95 !important;
  background:
    radial-gradient(circle at 24% 8%, rgba(70,37,13,.42), transparent 16%),
    radial-gradient(circle at 62% 20%, rgba(100,57,24,.26), transparent 18%),
    radial-gradient(circle at 34% 40%, rgba(83,46,18,.22), transparent 16%),
    radial-gradient(circle at 66% 58%, rgba(100,57,24,.24), transparent 18%),
    radial-gradient(circle at 22% 78%, rgba(70,37,13,.34), transparent 16%),
    radial-gradient(circle at 60% 92%, rgba(94,50,20,.22), transparent 14%) !important;
}

.book-page-left .burn-edge {
  left: -14px !important;
  clip-path: polygon(54% 0%, 78% 2%, 62% 7%, 84% 12%, 58% 16%, 90% 22%, 64% 28%, 88% 34%, 56% 40%, 92% 47%, 60% 53%, 86% 60%, 58% 66%, 90% 72%, 62% 79%, 82% 86%, 52% 92%, 70% 100%, 0% 100%, 0% 0%);
}

.book-page-right .burn-edge {
  right: -14px !important;
  clip-path: polygon(100% 0%, 100% 100%, 30% 100%, 48% 92%, 18% 86%, 38% 79%, 10% 72%, 42% 66%, 14% 60%, 40% 53%, 8% 47%, 44% 40%, 12% 34%, 36% 28%, 10% 22%, 42% 16%, 16% 12%, 38% 7%, 22% 2%, 46% 0%);
}

.lineage-book .book-torn-edge {
  top: 34px !important;
  bottom: 34px !important;
  width: 26px !important;
  opacity: .88 !important;
}

.lineage-book .torn-left {
  left: 28px !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(101,65,32,.36), transparent 18%),
    radial-gradient(circle at 56% 34%, rgba(125,82,44,.18), transparent 20%),
    linear-gradient(90deg, rgba(104,68,34,.38), rgba(137,91,49,.16), transparent 78%) !important;
  clip-path: polygon(0 0, 88% 0, 62% 6%, 92% 11%, 58% 17%, 86% 25%, 52% 33%, 90% 40%, 54% 49%, 82% 57%, 50% 67%, 88% 74%, 58% 82%, 78% 90%, 42% 96%, 70% 100%, 0 100%);
}

.lineage-book .torn-right {
  right: 28px !important;
  background:
    radial-gradient(circle at 12% 12%, rgba(101,65,32,.36), transparent 18%),
    radial-gradient(circle at 44% 34%, rgba(125,82,44,.18), transparent 20%),
    linear-gradient(270deg, rgba(104,68,34,.38), rgba(137,91,49,.16), transparent 78%) !important;
  clip-path: polygon(100% 0, 12% 0, 38% 6%, 8% 11%, 42% 17%, 14% 25%, 48% 33%, 10% 40%, 46% 49%, 18% 57%, 50% 67%, 12% 74%, 42% 82%, 22% 90%, 58% 96%, 30% 100%, 100% 100%);
}

@media (max-width: 768px) {
  #lava {
    -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.92) 28%, rgba(0,0,0,.46) 52%, rgba(0,0,0,0) 72%) !important;
    mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.92) 28%, rgba(0,0,0,.46) 52%, rgba(0,0,0,0) 72%) !important;
  }
  .lava-flow {
    height: 34% !important;
    opacity: .78 !important;
  }
  .lava-mist {
    height: 22vh !important;
    opacity: .78 !important;
  }
}
/* === END LAVA RETURN + ANCIENT PARCHMENT EDGES FIX === */


/* === SINGLE ANCIENT SCROLL + LAVA FIX === */
.lava-mist { display:none !important; }
.bg-soften-overlay {
  background:
    radial-gradient(ellipse at 50% 86%, rgba(255, 98, 0, .05), transparent 34%),
    linear-gradient(180deg, rgba(8,5,4,.05), rgba(8,5,4,.10) 38%, rgba(8,5,4,.12) 100%) !important;
}
#lava {
  z-index: 17 !important;
  opacity: 1 !important;
  mix-blend-mode: screen !important;
  filter: saturate(1.2) brightness(1.12) !important;
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 24%, rgba(0,0,0,.72) 44%, rgba(0,0,0,.24) 62%, rgba(0,0,0,0) 78%) !important;
  mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 24%, rgba(0,0,0,.72) 44%, rgba(0,0,0,.24) 62%, rgba(0,0,0,0) 78%) !important;
}
.lava-flow {
  z-index: 16 !important;
  bottom: -7% !important;
  height: 42% !important;
  opacity: .96 !important;
  filter: blur(8px) saturate(1.22) brightness(1.12) !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 220, 132, 0.54), rgba(255, 112, 12, 0.34) 20%, rgba(255, 72, 0, 0.20) 38%, transparent 68%),
    radial-gradient(ellipse at 18% 100%, rgba(255, 165, 76, 0.22), transparent 26%),
    radial-gradient(ellipse at 82% 100%, rgba(255, 165, 76, 0.22), transparent 26%),
    repeating-linear-gradient(112deg,
      rgba(255, 215, 120, 0.0) 0px,
      rgba(255, 215, 120, 0.16) 14px,
      rgba(255, 78, 0, 0.12) 28px,
      rgba(255, 176, 74, 0.08) 42px,
      rgba(255, 215, 120, 0.0) 64px
    ) !important;
}
.lineage-book {
  display: block !important;
  width: min(960px, 90vw) !important;
  min-height: 0 !important;
  padding: 56px 52px 52px !important;
  overflow: hidden !important;
}
.lineage-book .book-spine,
.lineage-book .book-spine-glow,
.lineage-book .book-spine-gems,
.lineage-book .book-real-gutter,
.lineage-book .book-left-thickness,
.lineage-book .book-right-thickness,
.lineage-book .book-metal-corner,
.lineage-book .book-engraving,
.lineage-book .book-jewel,
.lineage-book .book-soul-flame,
.lineage-book .book-torn-edge,
.lineage-book .book-outer-gold,
.lineage-book .book-back-plate,
.lineage-book .book-world-aura {
  display:none !important;
}
.lineage-book::before,
.lineage-book::after {
  z-index: 1 !important;
}
.scroll-page-full {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  min-height: 436px !important;
  padding: 38px 42px 34px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  clip-path: polygon(
    1.4% 1.2%, 8% .2%, 16% 1.6%, 24% .6%, 34% 1.4%, 43% .8%, 52% 1.8%, 61% .7%, 70% 1.6%, 79% .8%, 88% 1.4%, 96% .3%,
    98.8% 3%, 99.6% 9%, 98.3% 17%, 99.4% 25%, 98.1% 34%, 99.4% 43%, 98.1% 53%, 99.2% 63%, 98.0% 73%, 99.4% 83%, 98.1% 92%, 96.8% 98%,
    88% 99.5%, 79% 98.4%, 70% 99.4%, 60% 98.1%, 50% 99.2%, 40% 98.1%, 30% 99.4%, 21% 98.3%, 12% 99.2%, 4% 98.3%,
    1.0% 95%, .4% 86%, 1.4% 77%, .5% 67%, 1.6% 57%, .5% 47%, 1.5% 37%, .6% 27%, 1.3% 18%, .5% 9%
  ) !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(255,250,235,.68), transparent 20%),
    radial-gradient(circle at 86% 14%, rgba(214,174,122,.18), transparent 16%),
    linear-gradient(180deg, rgba(236,212,169,.98) 0%, rgba(222,191,145,.99) 45%, rgba(200,166,122,.98) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 0 28px rgba(94,60,24,.10),
    inset 0 -10px 24px rgba(110,72,31,.12),
    0 10px 24px rgba(0,0,0,.20) !important;
}
.scroll-page-full::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(104,68,34,.16), transparent 4%, transparent 96%, rgba(104,68,34,.16)),
    linear-gradient(180deg, rgba(255,255,255,.12), transparent 14%, transparent 84%, rgba(84,54,22,.10));
  mix-blend-mode:multiply;
}
.scroll-page-full::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 8% 5%, rgba(105,68,32,.22) 0 4px, transparent 5px),
    radial-gradient(circle at 18% 2%, rgba(105,68,32,.18) 0 3px, transparent 4px),
    radial-gradient(circle at 30% 6%, rgba(105,68,32,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 44% 3%, rgba(105,68,32,.16) 0 3px, transparent 4px),
    radial-gradient(circle at 58% 6%, rgba(105,68,32,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 72% 2%, rgba(105,68,32,.16) 0 3px, transparent 4px),
    radial-gradient(circle at 87% 5%, rgba(105,68,32,.2) 0 4px, transparent 5px),
    radial-gradient(circle at 94% 10%, rgba(105,68,32,.18) 0 3px, transparent 4px),
    radial-gradient(circle at 7% 95%, rgba(105,68,32,.22) 0 4px, transparent 5px),
    radial-gradient(circle at 17% 98%, rgba(105,68,32,.18) 0 3px, transparent 4px),
    radial-gradient(circle at 31% 94%, rgba(105,68,32,.16) 0 4px, transparent 5px),
    radial-gradient(circle at 46% 98%, rgba(105,68,32,.18) 0 3px, transparent 4px),
    radial-gradient(circle at 61% 95%, rgba(105,68,32,.16) 0 4px, transparent 5px),
    radial-gradient(circle at 78% 98%, rgba(105,68,32,.18) 0 3px, transparent 4px),
    radial-gradient(circle at 93% 94%, rgba(105,68,32,.22) 0 4px, transparent 5px),
    radial-gradient(circle at 2% 10%, rgba(95,60,27,.24) 0 5px, transparent 6px),
    radial-gradient(circle at 3% 26%, rgba(95,60,27,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 1% 42%, rgba(95,60,27,.22) 0 5px, transparent 6px),
    radial-gradient(circle at 4% 58%, rgba(95,60,27,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 2% 76%, rgba(95,60,27,.22) 0 5px, transparent 6px),
    radial-gradient(circle at 98% 12%, rgba(95,60,27,.24) 0 5px, transparent 6px),
    radial-gradient(circle at 97% 28%, rgba(95,60,27,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 99% 44%, rgba(95,60,27,.22) 0 5px, transparent 6px),
    radial-gradient(circle at 96% 62%, rgba(95,60,27,.18) 0 4px, transparent 5px),
    radial-gradient(circle at 98% 80%, rgba(95,60,27,.22) 0 5px, transparent 6px);
  opacity:.74;
}
.scroll-columns {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 34px;
}
.scroll-inner-shadow {
  position:absolute;
  top:14px; bottom:14px; left:50%; width:1px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(120,82,38,.04), rgba(104,68,34,.22) 18%, rgba(255,248,224,.16) 52%, rgba(104,68,34,.18) 82%, rgba(120,82,38,.04));
  box-shadow: 0 0 18px rgba(255,244,220,.12);
  pointer-events:none;
  z-index:1;
}
.scroll-col { position:relative; z-index:2; }
.scroll-col-main { padding-right: 8px; }
.scroll-col-side { padding-left: 12px; }
.scroll-page-full h2,
.scroll-page-full h3 { color:#5a3315 !important; text-shadow:0 1px 0 rgba(255,248,228,.45), 0 0 10px rgba(152,108,58,.10) !important; }
.scroll-page-full p,
.scroll-page-full li,
.scroll-page-full .book-subtitle,
.scroll-page-full .book-seal,
.scroll-page-full .book-stats span { color:#5f3c1f !important; }
.scroll-page-full p,
.scroll-page-full li { line-height:1.8 !important; }
.scroll-page-full ul { margin: 16px 0 0 18px !important; padding:0 !important; }
.scroll-page-full li { margin: 0 0 10px 0 !important; }
.scroll-page-full .book-stats { margin: 8px 0 22px 0 !important; }
.scroll-page-full .book-stats span { background:rgba(111,69,31,.08) !important; border:1px solid rgba(111,69,31,.14) !important; }
.scroll-page-full .book-seal { margin-top:18px !important; display:inline-flex !important; }
/* make burn remove the whole scroll cleanly */
.lineage-book-overlay.is-canvas-burning .lineage-book { overflow: hidden !important; }
.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * { opacity:0 !important; visibility:hidden !important; }
@media (max-width: 920px) {
  .lineage-book { width:min(92vw,760px) !important; padding:52px 24px 48px !important; }
  .scroll-columns { grid-template-columns:1fr; gap:18px; }
  .scroll-inner-shadow { display:none !important; }
  .scroll-col-side { padding-left:0 !important; }
}
@media (max-width: 768px) {
  #lava {
    -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.95) 28%, rgba(0,0,0,.58) 48%, rgba(0,0,0,.10) 68%, rgba(0,0,0,0) 80%) !important;
    mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.95) 28%, rgba(0,0,0,.58) 48%, rgba(0,0,0,.10) 68%, rgba(0,0,0,0) 80%) !important;
  }
  .lineage-book { width:min(94vw,620px) !important; padding:46px 14px 40px !important; }
  .scroll-page-full { min-height:auto !important; padding:24px 18px 22px !important; }
}
/* === END SINGLE ANCIENT SCROLL + LAVA FIX === */


/* === UE4 SCROLL CLEANUP + MOVING LAVA + BURN OPT === */
.smoke,
.lava-mist {
  display: none !important;
  opacity: 0 !important;
  background: none !important;
  animation: none !important;
}

.bg-soften-overlay {
  background:
    radial-gradient(ellipse at 50% 88%, rgba(255, 92, 0, .035), transparent 34%),
    linear-gradient(180deg, rgba(8,5,4,.03), rgba(8,5,4,.06) 42%, rgba(8,5,4,.08) 100%) !important;
}

#lava {
  opacity: 1 !important;
  z-index: 18 !important;
  filter: saturate(1.22) brightness(1.14) !important;
  -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 24%, rgba(0,0,0,.84) 42%, rgba(0,0,0,.34) 60%, rgba(0,0,0,0) 76%) !important;
  mask-image: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,.98) 24%, rgba(0,0,0,.84) 42%, rgba(0,0,0,.34) 60%, rgba(0,0,0,0) 76%) !important;
}

.lava-flow {
  left: -12% !important;
  right: -12% !important;
  bottom: -6% !important;
  height: 38% !important;
  opacity: .98 !important;
  z-index: 17 !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 233, 152, 0.58), rgba(255, 122, 22, 0.36) 20%, rgba(255, 72, 0, 0.22) 40%, transparent 70%),
    radial-gradient(ellipse at 18% 100%, rgba(255, 164, 76, 0.28), transparent 28%),
    radial-gradient(ellipse at 82% 100%, rgba(255, 164, 76, 0.28), transparent 28%),
    repeating-linear-gradient(112deg,
      rgba(255, 222, 136, 0.00) 0px,
      rgba(255, 222, 136, 0.24) 16px,
      rgba(255, 88, 0, 0.18) 32px,
      rgba(255, 190, 84, 0.12) 48px,
      rgba(255, 222, 136, 0.00) 74px
    ) !important;
  background-size: 100% 100%, 100% 100%, 100% 100%, 260px 100% !important;
  background-position: center bottom, left bottom, right bottom, 0 0 !important;
  filter: blur(7px) saturate(1.26) brightness(1.14) !important;
  animation: lavaFloatStrong 4.6s ease-in-out infinite, lavaTextureFlowStrong 8s linear infinite !important;
  will-change: transform, background-position, opacity !important;
}

@keyframes lavaFloatStrong {
  0%   { transform: translate3d(-2.8%, 0, 0) scaleY(.98); opacity: .86; }
  50%  { transform: translate3d(2.8%, -3.2%, 0) scaleY(1.05); opacity: 1; }
  100% { transform: translate3d(-2.8%, 0, 0) scaleY(.98); opacity: .86; }
}

@keyframes lavaTextureFlowStrong {
  0%   { background-position: center bottom, left bottom, right bottom, 0 0; }
  100% { background-position: center bottom, left bottom, right bottom, 260px 0; }
}

.lineage-book {
  width: min(760px, 74vw) !important;
  padding: 42px 34px 38px !important;
  border-radius: 24px !important;
  box-shadow:
    0 34px 86px rgba(0,0,0,.54),
    0 10px 28px rgba(0,0,0,.26),
    0 0 0 1px rgba(255,218,164,.14),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.lineage-book::before,
.lineage-book::after {
  left: 22px !important;
  right: 22px !important;
  height: 24px !important;
}

.scroll-page-full {
  min-height: 330px !important;
  padding: 28px 30px 24px !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 16% 10%, rgba(255,251,240,.50), transparent 18%),
    radial-gradient(circle at 84% 12%, rgba(214,174,122,.12), transparent 16%),
    linear-gradient(180deg, rgba(235,214,176,.985) 0%, rgba(224,196,152,.992) 48%, rgba(208,173,128,.985) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.40),
    inset 0 0 20px rgba(94,60,24,.06),
    inset 0 -7px 18px rgba(110,72,31,.09),
    0 8px 20px rgba(0,0,0,.16) !important;
}

.scroll-page-full::before {
  background:
    linear-gradient(90deg, rgba(104,68,34,.10), transparent 3%, transparent 97%, rgba(104,68,34,.10)),
    linear-gradient(180deg, rgba(255,255,255,.10), transparent 14%, transparent 86%, rgba(84,54,22,.08)),
    repeating-linear-gradient(90deg,
      rgba(134, 93, 48, 0.028) 0px,
      rgba(134, 93, 48, 0.028) 1px,
      rgba(255,255,255,0) 2px,
      rgba(255,255,255,0) 14px
    ) !important;
  mix-blend-mode: multiply !important;
}

.scroll-page-full::after {
  background-image:
    radial-gradient(circle at 20% 24%, rgba(150,112,70,.04) 0 2px, transparent 3px),
    radial-gradient(circle at 74% 66%, rgba(150,112,70,.03) 0 2px, transparent 3px),
    linear-gradient(115deg, transparent 0 20%, rgba(120,84,44,.04) 20.8%, transparent 21.4% 48%, rgba(120,84,44,.03) 48.8%, transparent 49.5% 72%, rgba(120,84,44,.025) 72.6%, transparent 73.4% 100%) !important;
  opacity: .36 !important;
}

.scroll-columns {
  gap: 26px !important;
  grid-template-columns: 1.08fr .92fr !important;
}

.scroll-inner-shadow {
  top: 12px !important;
  bottom: 12px !important;
  background: linear-gradient(180deg, rgba(120,82,38,.03), rgba(104,68,34,.15) 18%, rgba(255,248,224,.10) 52%, rgba(104,68,34,.12) 82%, rgba(120,82,38,.03)) !important;
  box-shadow: 0 0 10px rgba(255,244,220,.08) !important;
}

.scroll-page-full h2,
.scroll-page-full h3 {
  text-shadow: 0 1px 0 rgba(255,248,228,.42), 0 0 8px rgba(152,108,58,.08) !important;
}

.scroll-page-full p,
.scroll-page-full li {
  line-height: 1.68 !important;
}

@media (max-width: 920px) {
  .lineage-book {
    width: min(84vw, 680px) !important;
    padding: 38px 22px 34px !important;
  }
}

@media (max-width: 768px) {
  .lineage-book {
    width: min(92vw, 600px) !important;
    padding: 34px 14px 30px !important;
  }
  .scroll-page-full {
    min-height: auto !important;
    padding: 22px 18px 20px !important;
  }
  .lava-flow {
    height: 33% !important;
    filter: blur(6px) saturate(1.16) brightness(1.08) !important;
  }
}
/* === END UE4 SCROLL CLEANUP + MOVING LAVA + BURN OPT === */


/* === CINEMATIC LAVA SCROLL UPGRADE === */

/* Более яркая, живая лава без тумана */
.smoke,
.lava-mist {
  display: none !important;
  opacity: 0 !important;
  background: none !important;
  animation: none !important;
}

#lava {
  opacity: 1 !important;
  z-index: 19 !important;
  mix-blend-mode: screen !important;
  filter: saturate(1.42) brightness(1.24) contrast(1.08) !important;
  -webkit-mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 24%,
    rgba(0,0,0,.88) 42%,
    rgba(0,0,0,.40) 62%,
    rgba(0,0,0,0) 80%) !important;
  mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 24%,
    rgba(0,0,0,.88) 42%,
    rgba(0,0,0,.40) 62%,
    rgba(0,0,0,0) 80%) !important;
}

.lava-flow {
  z-index: 18 !important;
  left: -16% !important;
  right: -16% !important;
  bottom: -5% !important;
  height: 42% !important;
  opacity: 1 !important;
  background:
    radial-gradient(ellipse at 50% 100%,
      rgba(255, 245, 174, .72) 0%,
      rgba(255, 144, 32, .46) 22%,
      rgba(255, 78, 0, .30) 42%,
      transparent 72%),
    radial-gradient(ellipse at 18% 100%, rgba(255, 196, 86, .34), transparent 30%),
    radial-gradient(ellipse at 82% 100%, rgba(255, 196, 86, .34), transparent 30%),
    repeating-linear-gradient(112deg,
      rgba(255, 230, 142, 0.00) 0px,
      rgba(255, 230, 142, 0.34) 16px,
      rgba(255, 98, 0, 0.22) 34px,
      rgba(255, 196, 76, 0.16) 52px,
      rgba(255, 230, 142, 0.00) 82px
    ),
    repeating-linear-gradient(68deg,
      rgba(255, 80, 0, 0.00) 0px,
      rgba(255, 80, 0, 0.16) 18px,
      rgba(255, 216, 110, 0.10) 42px,
      rgba(255, 80, 0, 0.00) 70px
    ) !important;
  background-size: 100% 100%, 100% 100%, 100% 100%, 300px 100%, 360px 100% !important;
  background-position: center bottom, left bottom, right bottom, 0 0, 0 0 !important;
  filter: blur(6px) saturate(1.38) brightness(1.22) contrast(1.06) !important;
  animation:
    lavaBreathPremium 4.4s ease-in-out infinite,
    lavaTextureFlowPremium 7.2s linear infinite,
    lavaGlowPulsePremium 2.7s ease-in-out infinite !important;
  will-change: transform, background-position, filter, opacity !important;
}

@keyframes lavaBreathPremium {
  0% { transform: translate3d(-2.8%, 0, 0) scaleY(.98); }
  50% { transform: translate3d(2.6%, -3.6%, 0) scaleY(1.07); }
  100% { transform: translate3d(-2.8%, 0, 0) scaleY(.98); }
}

@keyframes lavaTextureFlowPremium {
  0% { background-position: center bottom, left bottom, right bottom, 0 0, 0 0; }
  100% { background-position: center bottom, left bottom, right bottom, 300px 0, -360px 0; }
}

@keyframes lavaGlowPulsePremium {
  0%, 100% { opacity: .86; filter: blur(6px) saturate(1.30) brightness(1.12) contrast(1.04); }
  50% { opacity: 1; filter: blur(8px) saturate(1.52) brightness(1.32) contrast(1.08); }
}

/* Дороже и чище пергамент */
.lineage-book {
  width: min(720px, 72vw) !important;
  padding: 40px 32px 36px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(ellipse at 50% 8%, rgba(255, 212, 126, .10), transparent 36%),
    linear-gradient(145deg, rgba(69, 33, 12, .34), rgba(10, 3, 0, .16)) !important;
  box-shadow:
    0 38px 96px rgba(0,0,0,.58),
    0 12px 34px rgba(0,0,0,.32),
    0 0 0 1px rgba(255,226,170,.18),
    0 0 42px rgba(255,118,22,.14),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.lineage-book::before,
.lineage-book::after {
  height: 24px !important;
  left: 20px !important;
  right: 20px !important;
  background:
    linear-gradient(180deg, rgba(214, 150, 78, .98), rgba(125, 72, 28, .98) 45%, rgba(54, 28, 10, .99)) !important;
  box-shadow:
    inset 0 2px 5px rgba(255,236,182,.32),
    inset 0 -5px 9px rgba(0,0,0,.42),
    0 7px 14px rgba(0,0,0,.34),
    0 0 14px rgba(255,152,48,.14) !important;
}

.scroll-page-full {
  min-height: 320px !important;
  padding: 26px 30px 24px !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 18% 10%, rgba(255,252,244,.48), transparent 20%),
    radial-gradient(circle at 84% 12%, rgba(235,205,158,.12), transparent 16%),
    linear-gradient(180deg,
      rgba(237, 218, 179, .995) 0%,
      rgba(225, 199, 157, .995) 48%,
      rgba(210, 176, 130, .995) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.44),
    inset 0 0 20px rgba(94,60,24,.05),
    inset 0 -8px 18px rgba(110,72,31,.08),
    0 10px 24px rgba(0,0,0,.18) !important;
}

.scroll-page-full::before {
  background:
    linear-gradient(90deg, rgba(104,68,34,.08), transparent 3%, transparent 97%, rgba(104,68,34,.08)),
    linear-gradient(180deg, rgba(255,255,255,.10), transparent 16%, transparent 84%, rgba(84,54,22,.06)),
    repeating-linear-gradient(90deg,
      rgba(138, 94, 46, .020) 0px,
      rgba(138, 94, 46, .020) 1px,
      rgba(255,255,255,0) 2px,
      rgba(255,255,255,0) 16px
    ) !important;
  opacity: .82 !important;
}

.scroll-page-full::after {
  background-image:
    radial-gradient(circle at 18% 20%, rgba(145,106,64,.030) 0 2px, transparent 3px),
    radial-gradient(circle at 72% 68%, rgba(145,106,64,.024) 0 2px, transparent 3px),
    linear-gradient(115deg,
      transparent 0 18%,
      rgba(120,84,44,.035) 18.6%,
      transparent 19.2% 50%,
      rgba(120,84,44,.026) 50.6%,
      transparent 51.3% 100%) !important;
  opacity: .24 !important;
}

.scroll-cinematic-gold {
  position: absolute;
  inset: 8px;
  z-index: 1;
  pointer-events: none;
  border-radius: 14px;
  background:
    linear-gradient(90deg, rgba(255,210,122,.20), transparent 9%, transparent 91%, rgba(255,210,122,.18)),
    linear-gradient(180deg, rgba(255,238,176,.16), transparent 12%, transparent 88%, rgba(112,70,28,.12));
  mix-blend-mode: soft-light;
}

.scroll-hot-edge {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(ellipse at 50% 96%, rgba(255,122,28,.20), transparent 44%),
    linear-gradient(180deg, transparent 0%, transparent 82%, rgba(255,168,64,.10) 100%);
  transition: opacity .25s ease;
}

.lineage-book-overlay.is-canvas-burning .scroll-hot-edge {
  opacity: .9;
}

.scroll-columns {
  gap: 22px !important;
  grid-template-columns: 1.06fr .94fr !important;
}

.scroll-page-full h2 {
  font-size: clamp(34px, 4vw, 56px) !important;
  letter-spacing: .10em !important;
}

.scroll-page-full h3 {
  font-size: clamp(20px, 2.1vw, 30px) !important;
}

.scroll-page-full p,
.scroll-page-full li {
  line-height: 1.62 !important;
}

.scroll-page-full .book-stats span {
  background: linear-gradient(180deg, rgba(142,91,38,.10), rgba(84,48,18,.05)) !important;
  border: 1px solid rgba(128,80,34,.13) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.scroll-page-full .book-seal {
  background:
    radial-gradient(circle at 50% 35%, rgba(255,232,174,.14), transparent 44%),
    linear-gradient(180deg, rgba(142,88,36,.14), rgba(92,52,18,.08)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 7px 16px rgba(0,0,0,.10) !important;
}

/* Кинематографичнее сгорание без большой нагрузки */
.book-burn-canvas {
  filter: saturate(1.18) contrast(1.08) brightness(1.06) !important;
}

.lineage-book-overlay.is-canvas-burning .lineage-book {
  box-shadow:
    0 30px 80px rgba(0,0,0,.52),
    0 0 46px rgba(255, 112, 20, .22),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * {
  opacity: 0 !important;
  visibility: hidden !important;
}

@media (max-width: 920px) {
  .lineage-book {
    width: min(82vw, 660px) !important;
    padding: 36px 22px 32px !important;
  }

  .scroll-columns {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .scroll-inner-shadow {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .lineage-book {
    width: min(92vw, 560px) !important;
    padding: 34px 14px 30px !important;
  }

  .scroll-page-full {
    min-height: auto !important;
    padding: 22px 18px 20px !important;
  }

  .lava-flow {
    height: 34% !important;
    filter: blur(6px) saturate(1.28) brightness(1.14) !important;
  }
}
/* === END CINEMATIC LAVA SCROLL UPGRADE === */


/* === BOOK IMAGE NO BOTTOM EFFECTS FINAL === */

/* Полностью убираем некачественные нижние эффекты */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
  background: none !important;
  filter: none !important;
  pointer-events: none !important;
}

/* Книга по загруженной картинке */
.lineage-book {
  width: min(1040px, 86vw) !important;
  aspect-ratio: 1280 / 768 !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: block !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
  box-shadow:
    0 42px 120px rgba(0,0,0,.66),
    0 18px 52px rgba(0,0,0,.42),
    0 0 72px rgba(255,120,24,.14) !important;
  filter:
    drop-shadow(0 36px 52px rgba(0,0,0,.72))
    drop-shadow(0 0 42px rgba(255,130,34,.14)) !important;
}

.book-reference-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  z-index: 1 !important;
  pointer-events: none !important;
  user-select: none !important;
  filter:
    brightness(1.05)
    contrast(1.05)
    saturate(1.03)
    drop-shadow(0 24px 34px rgba(0,0,0,.52)) !important;
}

/* Прячем старые декоративные части свитка/книги, чтобы не мешали картинке */
.lineage-book::before,
.lineage-book::after,
.lineage-book .book-world-aura,
.lineage-book .book-back-plate,
.lineage-book .book-outer-gold,
.lineage-book .book-left-thickness,
.lineage-book .book-right-thickness,
.lineage-book .book-soul-flame,
.lineage-book .book-spine,
.lineage-book .book-spine-glow,
.lineage-book .book-spine-gems,
.lineage-book .book-real-gutter,
.lineage-book .book-age-layer,
.lineage-book .book-torn-edge,
.lineage-book .book-ink-map,
.lineage-book .book-metal-corner,
.lineage-book .book-engraving,
.lineage-book .book-jewel,
.scroll-cinematic-gold,
.scroll-hot-edge,
.scroll-inner-shadow {
  display: none !important;
}

/* Текст аккуратно кладём на страницы этой книги */
.scroll-page-full {
  position: absolute !important;
  left: 11.8% !important;
  top: 15.5% !important;
  width: 76.4% !important;
  height: 67.2% !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  clip-path: none !important;
  overflow: visible !important;
  z-index: 3 !important;
}

.scroll-page-full::before,
.scroll-page-full::after {
  display: none !important;
}

.scroll-columns {
  height: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12.8% !important;
  position: relative !important;
  z-index: 4 !important;
}

.scroll-col {
  position: relative !important;
  z-index: 4 !important;
  padding: 0 !important;
}

.scroll-col-main {
  padding-left: 2.8% !important;
  padding-right: 0 !important;
}

.scroll-col-side {
  padding-left: 0 !important;
  padding-right: 2.5% !important;
}

.scroll-page-full h2 {
  margin: 0 0 4px !important;
  color: rgba(64, 38, 18, .88) !important;
  font-size: clamp(28px, 3.1vw, 48px) !important;
  line-height: 1.02 !important;
  letter-spacing: .12em !important;
  text-shadow: 0 1px 0 rgba(255,240,205,.36) !important;
}

.scroll-page-full h3 {
  margin: 0 0 12px !important;
  color: rgba(64, 38, 18, .86) !important;
  font-size: clamp(18px, 1.75vw, 28px) !important;
  line-height: 1.08 !important;
  text-shadow: 0 1px 0 rgba(255,240,205,.30) !important;
}

.scroll-page-full .book-subtitle {
  margin: 0 0 14px !important;
  color: rgba(87, 58, 30, .74) !important;
  font-size: clamp(12px, 1.05vw, 16px) !important;
  letter-spacing: .08em !important;
}

.scroll-page-full p,
.scroll-page-full li {
  color: rgba(65, 43, 24, .82) !important;
  font-size: clamp(12px, .96vw, 15px) !important;
  line-height: 1.55 !important;
  text-shadow: 0 1px 0 rgba(255,246,220,.22) !important;
}

.scroll-page-full p {
  margin: 0 0 12px !important;
}

.scroll-page-full ul {
  margin: 0 0 0 18px !important;
  padding: 0 !important;
}

.scroll-page-full li {
  margin-bottom: 7px !important;
}

.scroll-page-full .book-stats {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
  margin: 0 0 14px !important;
}

.scroll-page-full .book-stats span {
  width: fit-content !important;
  color: rgba(76, 48, 22, .82) !important;
  background: rgba(95, 59, 27, .055) !important;
  border: 1px solid rgba(95, 59, 27, .10) !important;
  box-shadow: none !important;
  padding: 4px 9px !important;
  border-radius: 999px !important;
  font-size: clamp(10px, .82vw, 12px) !important;
}

.scroll-page-full .book-seal {
  margin-top: 12px !important;
  color: rgba(88, 48, 20, .76) !important;
  background: rgba(95, 59, 27, .055) !important;
  border: 1px solid rgba(95, 59, 27, .12) !important;
  box-shadow: none !important;
}

/* Кнопка закрытия поверх книги */
.book-close {
  top: 7.5% !important;
  right: 6.8% !important;
  z-index: 30 !important;
  width: 38px !important;
  height: 38px !important;
  line-height: 34px !important;
  font-size: 25px !important;
  background: linear-gradient(180deg, rgba(108,64,28,.96), rgba(42,20,8,.98)) !important;
  border: 1px solid rgba(238,202,144,.44) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.42), 0 0 16px rgba(170,54,28,.24) !important;
}

/* Сгорание должно резать всю картинку книги целиком */
.lineage-book-overlay.is-canvas-burning .lineage-book {
  overflow: hidden !important;
}

.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * {
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Canvas огня поверх всей книги */
.book-burn-canvas {
  filter: saturate(1.18) contrast(1.08) brightness(1.05) !important;
}

@media (max-width: 920px) {
  .lineage-book {
    width: min(92vw, 780px) !important;
  }

  .scroll-page-full {
    left: 12.5% !important;
    top: 16.2% !important;
    width: 75% !important;
    height: 65% !important;
  }

  .scroll-page-full p,
  .scroll-page-full li {
    font-size: clamp(10px, 1.45vw, 13px) !important;
    line-height: 1.42 !important;
  }
}

@media (max-width: 768px) {
  .lineage-book {
    width: min(96vw, 620px) !important;
  }

  .scroll-page-full {
    left: 13% !important;
    top: 16.5% !important;
    width: 74% !important;
    height: 64% !important;
  }

  .scroll-page-full h2 {
    font-size: clamp(20px, 6vw, 30px) !important;
  }

  .scroll-page-full h3 {
    font-size: clamp(15px, 4.1vw, 22px) !important;
  }

  .scroll-page-full .book-subtitle {
    font-size: 10px !important;
    margin-bottom: 8px !important;
  }

  .scroll-page-full p,
  .scroll-page-full li {
    font-size: 9.5px !important;
    line-height: 1.32 !important;
  }

  .scroll-page-full li {
    margin-bottom: 3px !important;
  }

  .scroll-page-full .book-stats {
    gap: 3px !important;
    margin-bottom: 6px !important;
  }

  .scroll-page-full .book-stats span {
    font-size: 8.5px !important;
    padding: 2px 6px !important;
  }
}

/* === END BOOK IMAGE NO BOTTOM EFFECTS FINAL === */


/* === BOOK TEXT ON REAL PAGES + PREMIUM LAVA FINAL === */

/* Отключаем старые нижние эффекты, оставляем только новую красивую лаву */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
  background: none !important;
  filter: none !important;
  pointer-events: none !important;
}

/* Премиальная лава снизу, поднимается к кнопке "Начать игру" */
.premium-lava-rising {
  position: fixed !important;
  left: -10vw !important;
  right: -10vw !important;
  bottom: -9vh !important;
  height: 30vh !important;
  z-index: 2147482100 !important;
  pointer-events: none !important;
  opacity: .96 !important;
  background:
    radial-gradient(ellipse at 50% 100%,
      rgba(255, 245, 174, .78) 0%,
      rgba(255, 148, 34, .52) 18%,
      rgba(255, 72, 0, .28) 38%,
      rgba(120, 18, 0, .06) 66%,
      transparent 78%),
    radial-gradient(ellipse at 22% 100%, rgba(255, 186, 78, .32), transparent 32%),
    radial-gradient(ellipse at 78% 100%, rgba(255, 186, 78, .32), transparent 32%),
    repeating-linear-gradient(112deg,
      rgba(255, 232, 142, 0.00) 0px,
      rgba(255, 232, 142, .34) 14px,
      rgba(255, 96, 0, .22) 30px,
      rgba(255, 198, 80, .14) 48px,
      rgba(255, 232, 142, 0.00) 78px),
    repeating-linear-gradient(68deg,
      rgba(255, 76, 0, 0.00) 0px,
      rgba(255, 76, 0, .16) 18px,
      rgba(255, 216, 108, .10) 40px,
      rgba(255, 76, 0, 0.00) 70px) !important;
  background-size: 100% 100%, 100% 100%, 100% 100%, 320px 100%, 380px 100% !important;
  background-position: center bottom, left bottom, right bottom, 0 0, 0 0 !important;
  filter: blur(5px) saturate(1.45) brightness(1.20) contrast(1.08) !important;
  mix-blend-mode: screen !important;
  animation:
    premiumLavaRise 4.8s ease-in-out infinite,
    premiumLavaTexture 7.4s linear infinite,
    premiumLavaPulse 2.9s ease-in-out infinite !important;
  will-change: transform, background-position, opacity, filter !important;
}

.premium-lava-rising::before {
  content: "" !important;
  position: absolute !important;
  left: 8vw !important;
  right: 8vw !important;
  bottom: 6vh !important;
  height: 12vh !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 196, 82, .30), rgba(255, 72, 0, .10) 42%, transparent 72%),
    repeating-linear-gradient(92deg,
      rgba(255, 218, 114, 0) 0px,
      rgba(255, 218, 114, .18) 12px,
      rgba(255, 92, 0, .10) 24px,
      rgba(255, 218, 114, 0) 52px) !important;
  filter: blur(10px) saturate(1.35) !important;
  opacity: .80 !important;
  animation: premiumLavaUpperWave 5.8s ease-in-out infinite !important;
}

.premium-lava-rising::after {
  content: "" !important;
  position: absolute !important;
  left: 18vw !important;
  right: 18vw !important;
  bottom: 16vh !important;
  height: 8vh !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 160, 60, .20), transparent 68%) !important;
  filter: blur(16px) !important;
  opacity: .54 !important;
  animation: premiumLavaGlowToButton 3.8s ease-in-out infinite !important;
}

@keyframes premiumLavaRise {
  0%, 100% {
    transform: translate3d(-2%, 0, 0) scaleY(.98);
  }
  50% {
    transform: translate3d(2%, -3.6vh, 0) scaleY(1.09);
  }
}

@keyframes premiumLavaTexture {
  0% {
    background-position: center bottom, left bottom, right bottom, 0 0, 0 0;
  }
  100% {
    background-position: center bottom, left bottom, right bottom, 320px 0, -380px 0;
  }
}

@keyframes premiumLavaPulse {
  0%, 100% {
    opacity: .84;
    filter: blur(5px) saturate(1.32) brightness(1.08) contrast(1.05);
  }
  50% {
    opacity: 1;
    filter: blur(7px) saturate(1.58) brightness(1.30) contrast(1.10);
  }
}

@keyframes premiumLavaUpperWave {
  0%, 100% { transform: translateX(-1.8%) translateY(0); opacity: .60; }
  50% { transform: translateX(1.8%) translateY(-1.2vh); opacity: .92; }
}

@keyframes premiumLavaGlowToButton {
  0%, 100% { transform: translateY(0) scaleX(.94); opacity: .32; }
  50% { transform: translateY(-1.6vh) scaleX(1.08); opacity: .68; }
}

/* Книга выглядит как загруженная картинка: никаких "страничных слоёв" поверх */
.lineage-book {
  width: min(1040px, 86vw) !important;
  aspect-ratio: 1280 / 768 !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: block !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
  box-shadow:
    0 42px 120px rgba(0,0,0,.66),
    0 18px 52px rgba(0,0,0,.42),
    0 0 72px rgba(255,120,24,.14) !important;
  filter:
    drop-shadow(0 36px 52px rgba(0,0,0,.72))
    drop-shadow(0 0 42px rgba(255,130,34,.14)) !important;
}

.book-reference-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  z-index: 1 !important;
  pointer-events: none !important;
  user-select: none !important;
  opacity: 1 !important;
  filter:
    brightness(1.05)
    contrast(1.05)
    saturate(1.03)
    drop-shadow(0 24px 34px rgba(0,0,0,.52)) !important;
}

/* Убираем старые декоративные слои, чтобы страницы книги были настоящими из картинки */
.lineage-book::before,
.lineage-book::after,
.lineage-book .book-world-aura,
.lineage-book .book-back-plate,
.lineage-book .book-outer-gold,
.lineage-book .book-left-thickness,
.lineage-book .book-right-thickness,
.lineage-book .book-soul-flame,
.lineage-book .book-spine,
.lineage-book .book-spine-glow,
.lineage-book .book-spine-gems,
.lineage-book .book-real-gutter,
.lineage-book .book-age-layer,
.lineage-book .book-torn-edge,
.lineage-book .book-ink-map,
.lineage-book .book-metal-corner,
.lineage-book .book-engraving,
.lineage-book .book-jewel,
.scroll-cinematic-gold,
.scroll-hot-edge,
.scroll-inner-shadow {
  display: none !important;
}

/* Надписи именно на страницах книги: прозрачный блок без фона */
.scroll-page-full {
  position: absolute !important;
  left: 12.1% !important;
  top: 15.6% !important;
  width: 75.8% !important;
  height: 66.8% !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  clip-path: none !important;
  overflow: visible !important;
  z-index: 3 !important;
}

.scroll-page-full::before,
.scroll-page-full::after {
  display: none !important;
}

.scroll-columns {
  height: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 13.2% !important;
  position: relative !important;
  z-index: 4 !important;
}

.scroll-col {
  position: relative !important;
  z-index: 4 !important;
  padding: 0 !important;
  background: transparent !important;
  mix-blend-mode: multiply !important;
}

.scroll-col-main {
  padding-left: 2.8% !important;
  padding-right: 0 !important;
}

.scroll-col-side {
  padding-left: 0 !important;
  padding-right: 2.4% !important;
}

.scroll-page-full h2 {
  margin: 0 0 4px !important;
  color: rgba(54, 32, 15, .78) !important;
  font-size: clamp(28px, 3.0vw, 46px) !important;
  line-height: 1.02 !important;
  letter-spacing: .12em !important;
  text-shadow: 0 1px 0 rgba(255,240,205,.18) !important;
}

.scroll-page-full h3 {
  margin: 0 0 11px !important;
  color: rgba(54, 32, 15, .76) !important;
  font-size: clamp(18px, 1.65vw, 27px) !important;
  line-height: 1.08 !important;
  text-shadow: 0 1px 0 rgba(255,240,205,.16) !important;
}

.scroll-page-full .book-subtitle {
  margin: 0 0 13px !important;
  color: rgba(73, 49, 26, .62) !important;
  font-size: clamp(12px, 1.0vw, 16px) !important;
  letter-spacing: .08em !important;
}

.scroll-page-full p,
.scroll-page-full li {
  color: rgba(56, 38, 22, .72) !important;
  font-size: clamp(12px, .92vw, 15px) !important;
  line-height: 1.54 !important;
  text-shadow: none !important;
}

.scroll-page-full p {
  margin: 0 0 11px !important;
}

.scroll-page-full ul {
  margin: 0 0 0 18px !important;
  padding: 0 !important;
}

.scroll-page-full li {
  margin-bottom: 7px !important;
}

.scroll-page-full .book-stats {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
  margin: 0 0 13px !important;
}

.scroll-page-full .book-stats span {
  width: fit-content !important;
  color: rgba(58, 37, 19, .70) !important;
  background: transparent !important;
  border: 1px solid rgba(72, 43, 18, .10) !important;
  box-shadow: none !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  font-size: clamp(10px, .78vw, 12px) !important;
}

.scroll-page-full .book-seal {
  margin-top: 11px !important;
  color: rgba(68, 37, 16, .66) !important;
  background: transparent !important;
  border: 1px solid rgba(72, 43, 18, .12) !important;
  box-shadow: none !important;
}

.book-close {
  top: 7.6% !important;
  right: 6.8% !important;
  z-index: 30 !important;
  width: 38px !important;
  height: 38px !important;
  line-height: 34px !important;
  font-size: 25px !important;
  background: linear-gradient(180deg, rgba(108,64,28,.96), rgba(42,20,8,.98)) !important;
  border: 1px solid rgba(238,202,144,.44) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.42), 0 0 16px rgba(170,54,28,.24) !important;
}

/* Сгорание по всему размеру книги */
.lineage-book-overlay.is-canvas-burning .lineage-book {
  overflow: hidden !important;
}

.book-burn-canvas {
  filter: saturate(1.18) contrast(1.08) brightness(1.05) !important;
}

.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * {
  opacity: 0 !important;
  visibility: hidden !important;
}

@media (max-width: 920px) {
  .lineage-book {
    width: min(92vw, 780px) !important;
  }

  .scroll-page-full p,
  .scroll-page-full li {
    font-size: clamp(10px, 1.35vw, 13px) !important;
    line-height: 1.40 !important;
  }
}

@media (max-width: 768px) {
  .premium-lava-rising {
    height: 22vh !important;
    bottom: -7vh !important;
    filter: blur(4px) saturate(1.32) brightness(1.08) !important;
  }

  .lineage-book {
    width: min(96vw, 620px) !important;
  }

  .scroll-page-full {
    left: 13% !important;
    top: 16.5% !important;
    width: 74% !important;
    height: 64% !important;
  }

  .scroll-page-full h2 {
    font-size: clamp(20px, 6vw, 30px) !important;
  }

  .scroll-page-full h3 {
    font-size: clamp(15px, 4vw, 22px) !important;
  }

  .scroll-page-full .book-subtitle {
    font-size: 10px !important;
    margin-bottom: 8px !important;
  }

  .scroll-page-full p,
  .scroll-page-full li {
    font-size: 9.5px !important;
    line-height: 1.30 !important;
  }

  .scroll-page-full li {
    margin-bottom: 3px !important;
  }

  .scroll-page-full .book-stats {
    gap: 3px !important;
    margin-bottom: 6px !important;
  }

  .scroll-page-full .book-stats span {
    font-size: 8.5px !important;
    padding: 2px 6px !important;
  }
}
/* === END BOOK TEXT ON REAL PAGES + PREMIUM LAVA FINAL === */


/* === BAKED BOOK TEXT + LAVA BUBBLES FINAL === */

/* Убираем все старые нижние эффекты и непонятную лавовую полосу */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
  background: none !important;
  filter: none !important;
  pointer-events: none !important;
}

/* Вместо полосы — поднимающиеся лавовые пузыри */
.lava-bubbles-layer {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 34vh !important;
  z-index: 2147482100 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  opacity: .98 !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 88, 0, .20), transparent 58%),
    linear-gradient(180deg, transparent 0%, rgba(255, 78, 0, .06) 70%, rgba(255, 112, 20, .18) 100%) !important;
  mix-blend-mode: screen !important;
}

.lava-bubbles-layer::before,
.lava-bubbles-layer::after {
  content: "" !important;
  position: absolute !important;
  left: -5vw !important;
  right: -5vw !important;
  bottom: -12vh !important;
  height: 46vh !important;
  pointer-events: none !important;
  background-repeat: repeat !important;
  background-size:
    160px 260px,
    220px 320px,
    280px 360px,
    340px 420px !important;
  filter: blur(.4px) saturate(1.35) brightness(1.14) !important;
  animation: lavaBubbleRiseA 6.8s linear infinite !important;
}

.lava-bubbles-layer::before {
  opacity: .95 !important;
  background-image:
    radial-gradient(circle at 28px 230px, rgba(255, 238, 154, .86) 0 3px, rgba(255, 148, 32, .58) 4px, rgba(255, 64, 0, .18) 9px, transparent 16px),
    radial-gradient(circle at 120px 280px, rgba(255, 224, 130, .72) 0 4px, rgba(255, 118, 22, .48) 5px, rgba(255, 48, 0, .15) 12px, transparent 22px),
    radial-gradient(circle at 190px 310px, rgba(255, 242, 172, .74) 0 2px, rgba(255, 130, 28, .52) 4px, rgba(255, 55, 0, .14) 10px, transparent 18px),
    radial-gradient(circle at 260px 360px, rgba(255, 210, 104, .58) 0 5px, rgba(255, 98, 18, .38) 7px, rgba(255, 40, 0, .12) 16px, transparent 30px) !important;
}

.lava-bubbles-layer::after {
  opacity: .58 !important;
  filter: blur(2px) saturate(1.25) brightness(1.06) !important;
  background-size:
    210px 300px,
    300px 380px,
    380px 460px !important;
  background-image:
    radial-gradient(circle at 60px 260px, rgba(255, 184, 82, .40) 0 9px, rgba(255, 78, 0, .18) 13px, transparent 34px),
    radial-gradient(circle at 180px 340px, rgba(255, 142, 54, .38) 0 12px, rgba(255, 56, 0, .16) 18px, transparent 44px),
    radial-gradient(circle at 310px 420px, rgba(255, 205, 100, .32) 0 8px, rgba(255, 86, 0, .13) 14px, transparent 36px) !important;
  animation: lavaBubbleRiseB 10.5s linear infinite !important;
}

@keyframes lavaBubbleRiseA {
  0% {
    transform: translateY(24vh) translateX(0) scale(1);
    background-position: 0 0, 40px 0, 80px 0, 120px 0;
  }
  100% {
    transform: translateY(-22vh) translateX(1.8vw) scale(1.04);
    background-position: 0 -260px, 40px -320px, 80px -360px, 120px -420px;
  }
}

@keyframes lavaBubbleRiseB {
  0% {
    transform: translateY(28vh) translateX(1vw) scale(1);
    background-position: 0 0, 90px 0, 160px 0;
  }
  100% {
    transform: translateY(-25vh) translateX(-1.5vw) scale(1.05);
    background-position: 0 -300px, 90px -380px, 160px -460px;
  }
}

/* Книга использует чистый фон, а текст берётся из настроек административной панели. */
.book-reference-bg {
  content: normal !important;
  opacity: 1 !important;
  filter:
    brightness(1.05)
    contrast(1.05)
    saturate(1.03)
    drop-shadow(0 24px 34px rgba(0,0,0,.52)) !important;
}

/* Скрываем только лишние декоративные подложки, не скрывая динамический текст книги. */
.scroll-inner-shadow,
.scroll-cinematic-gold,
.scroll-hot-edge {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  background: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Сохраняем книгу чистой, без дополнительных страниц/подложек */
.lineage-book {
  width: min(1040px, 86vw) !important;
  aspect-ratio: 1280 / 768 !important;
  min-height: 0 !important;
  padding: 0 !important;
  display: block !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
  box-shadow:
    0 42px 120px rgba(0,0,0,.66),
    0 18px 52px rgba(0,0,0,.42),
    0 0 72px rgba(255,120,24,.14) !important;
  filter:
    drop-shadow(0 36px 52px rgba(0,0,0,.72))
    drop-shadow(0 0 42px rgba(255,130,34,.14)) !important;
}

.lineage-book::before,
.lineage-book::after,
.lineage-book .book-world-aura,
.lineage-book .book-back-plate,
.lineage-book .book-outer-gold,
.lineage-book .book-left-thickness,
.lineage-book .book-right-thickness,
.lineage-book .book-soul-flame,
.lineage-book .book-spine,
.lineage-book .book-spine-glow,
.lineage-book .book-spine-gems,
.lineage-book .book-real-gutter,
.lineage-book .book-age-layer,
.lineage-book .book-torn-edge,
.lineage-book .book-ink-map,
.lineage-book .book-metal-corner,
.lineage-book .book-engraving,
.lineage-book .book-jewel {
  display: none !important;
}

/* Сгорание по всему размеру картинки книги */
.lineage-book-overlay.is-canvas-burning .lineage-book {
  overflow: hidden !important;
}

.book-burn-canvas {
  filter: saturate(1.18) contrast(1.08) brightness(1.05) !important;
}

.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * {
  opacity: 0 !important;
  visibility: hidden !important;
}

@media (max-width: 768px) {
  .lava-bubbles-layer {
    height: 25vh !important;
    opacity: .82 !important;
  }

  .lava-bubbles-layer::before,
  .lava-bubbles-layer::after {
    filter: blur(1px) saturate(1.2) brightness(1.02) !important;
  }

  .lineage-book {
    width: min(96vw, 620px) !important;
  }
}

/* === END BAKED BOOK TEXT + LAVA BUBBLES FINAL === */


/* === LAVA ATOM + CENTER BOOK BURN FINAL === */

/* Старые CSS-пузыри выключены, теперь работает canvas с атомным растворением */
.lava-bubbles-layer {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.lava-bubbles-canvas {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147482100 !important;
  width: 100vw !important;
  height: 100vh !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
  opacity: .95 !important;
  -webkit-mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 23%,
    rgba(0,0,0,.82) 42%,
    rgba(0,0,0,.32) 58%,
    rgba(0,0,0,0) 70%) !important;
  mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 23%,
    rgba(0,0,0,.82) 42%,
    rgba(0,0,0,.32) 58%,
    rgba(0,0,0,0) 70%) !important;
}

/* Сгорание теперь от центра книги */
.lineage-book-overlay.is-canvas-burning .lineage-book {
  overflow: hidden !important;
  will-change: mask-image, -webkit-mask-image, opacity, transform, filter !important;
}

.lineage-book-overlay.is-canvas-burning .book-reference-bg {
  filter:
    brightness(1.08)
    contrast(1.08)
    saturate(1.04)
    drop-shadow(0 24px 34px rgba(0,0,0,.52))
    drop-shadow(0 0 22px rgba(255,120,24,.18)) !important;
}

.book-burn-canvas {
  z-index: 50 !important;
  filter: saturate(1.22) contrast(1.10) brightness(1.08) !important;
}

/* После финала блок гарантированно исчезает */
.lineage-book-overlay.is-closing-final .lineage-book,
.lineage-book-overlay.is-closing-final .lineage-book * {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 768px) {
  .lava-bubbles-canvas {
    opacity: .82 !important;
    -webkit-mask-image: linear-gradient(to top,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,.94) 24%,
      rgba(0,0,0,.55) 44%,
      rgba(0,0,0,.08) 62%,
      rgba(0,0,0,0) 72%) !important;
    mask-image: linear-gradient(to top,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,.94) 24%,
      rgba(0,0,0,.55) 44%,
      rgba(0,0,0,.08) 62%,
      rgba(0,0,0,0) 72%) !important;
  }
}

/* === END LAVA ATOM + CENTER BOOK BURN FINAL === */

/* === ROLLBACK ATOM LAVA VISIBLE === */

/* Отключаем старые/битые нижние эффекты, чтобы не конфликтовали */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising,
.lava-bubbles-layer,
.lava-bubbles-canvas {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Нижний жар под пузырями */
.atom-lava-base {
  position: fixed !important;
  left: -8vw !important;
  right: -8vw !important;
  bottom: -5vh !important;
  height: 22vh !important;
  z-index: 2147482098 !important;
  pointer-events: none !important;
  opacity: .96 !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255,236,150,.58), rgba(255,116,20,.40) 28%, rgba(255,64,0,.22) 52%, transparent 76%),
    radial-gradient(ellipse at 20% 100%, rgba(255,170,70,.30), transparent 34%),
    radial-gradient(ellipse at 80% 100%, rgba(255,170,70,.30), transparent 34%) !important;
  filter: blur(5px) saturate(1.38) brightness(1.18) !important;
  mix-blend-mode: screen !important;
  animation: atomLavaBasePulse 3.8s ease-in-out infinite !important;
}

@keyframes atomLavaBasePulse {
  0%,100% { transform: translateY(0) scaleY(.96); opacity:.80; }
  50% { transform: translateY(-2.2vh) scaleY(1.08); opacity:1; }
}

/* Новый canvas лавы на всю ширину сайта */
.atom-lava-canvas {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147482100 !important;
  width: 100vw !important;
  height: 100vh !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
  -webkit-mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 21%,
    rgba(0,0,0,.88) 35%,
    rgba(0,0,0,.50) 50%,
    rgba(0,0,0,.12) 64%,
    rgba(0,0,0,0) 72%) !important;
  mask-image: linear-gradient(to top,
    rgba(0,0,0,1) 0%,
    rgba(0,0,0,1) 21%,
    rgba(0,0,0,.88) 35%,
    rgba(0,0,0,.50) 50%,
    rgba(0,0,0,.12) 64%,
    rgba(0,0,0,0) 72%) !important;
}

/* Кнопка старт всегда поверх лавы */
#startGameButton,
.l2-start-wrap,
.l2-start-button {
  z-index: 2147483647 !important;
}

@media (max-width: 768px) {
  .atom-lava-base {
    height: 17vh !important;
    bottom: -5vh !important;
    opacity: .86 !important;
  }

  .atom-lava-canvas {
    opacity: .88 !important;
    -webkit-mask-image: linear-gradient(to top,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,.94) 24%,
      rgba(0,0,0,.55) 44%,
      rgba(0,0,0,.10) 62%,
      rgba(0,0,0,0) 72%) !important;
    mask-image: linear-gradient(to top,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,.94) 24%,
      rgba(0,0,0,.55) 44%,
      rgba(0,0,0,.10) 62%,
      rgba(0,0,0,0) 72%) !important;
  }
}
/* === END ROLLBACK ATOM LAVA VISIBLE === */

/* === ATOM LAVA HARD VISIBLE FIX === */

/* На всякий случай выключаем все старые лавовые/дымовые слои */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising,
.lava-bubbles-layer,
.lava-bubbles-canvas {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Видимый нижний жар на всю ширину */
.atom-lava-base {
  display: block !important;
  position: fixed !important;
  left: -10vw !important;
  right: -10vw !important;
  bottom: -5vh !important;
  height: 25vh !important;
  z-index: 2147483000 !important;
  pointer-events: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255,238,150,.68), rgba(255,118,20,.48) 26%, rgba(255,60,0,.25) 52%, transparent 78%),
    radial-gradient(ellipse at 22% 100%, rgba(255,172,70,.34), transparent 36%),
    radial-gradient(ellipse at 78% 100%, rgba(255,172,70,.34), transparent 36%) !important;
  filter: blur(5px) saturate(1.45) brightness(1.22) !important;
  mix-blend-mode: screen !important;
  animation: atomLavaBaseHardPulse 3.6s ease-in-out infinite !important;
}

@keyframes atomLavaBaseHardPulse {
  0%,100% { transform: translateY(0) scaleY(.96); opacity:.82; }
  50% { transform: translateY(-2.4vh) scaleY(1.1); opacity:1; }
}

/* Новый canvas поверх сцены, точно видимый */
.atom-lava-canvas {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 2147483001 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
  filter: saturate(1.2) brightness(1.1) !important;
}

/* Кнопка и книга должны быть поверх лавы */
#startGameButton,
.l2-start-wrap,
.l2-start-button,
.start-btn,
.start-button,
.lineage-book-overlay {
  z-index: 2147483600 !important;
}

@media (max-width: 768px) {
  .atom-lava-base {
    height: 19vh !important;
    bottom: -5vh !important;
    opacity: .9 !important;
  }
  .atom-lava-canvas {
    opacity: .92 !important;
  }
}
/* === END ATOM LAVA HARD VISIBLE FIX === */

/* === CSS ATOM LAVA ALWAYS VISIBLE === */

/* Старые попытки лавы выключены окончательно */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising,
.lava-bubbles-layer,
.lava-bubbles-canvas,
.atom-lava-base,
.atom-lava-canvas {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Рабочая лава без canvas: пузыри поднимаются снизу до кнопки и распадаются */
.css-atom-lava-field {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: clamp(155px, 24vh, 215px) !important;
  z-index: 2147483500 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  isolation: isolate !important;
  mix-blend-mode: screen !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 230, 140, .34), rgba(255, 118, 22, .24) 28%, rgba(255, 64, 0, .12) 52%, transparent 78%),
    radial-gradient(ellipse at 18% 100%, rgba(255, 180, 72, .22), transparent 36%),
    radial-gradient(ellipse at 82% 100%, rgba(255, 180, 72, .22), transparent 36%) !important;
  filter: saturate(1.28) brightness(1.08) !important;
}

.css-atom-lava-field::before {
  content: "" !important;
  position: absolute !important;
  left: -10% !important;
  right: -10% !important;
  bottom: -50px !important;
  height: 120px !important;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(255, 245, 168, .58), rgba(255, 122, 22, .38) 34%, rgba(255, 52, 0, .14) 70%, transparent 100%) !important;
  filter: blur(10px) saturate(1.4) !important;
  animation: cssLavaBasePulse 3.4s ease-in-out infinite !important;
}

.css-atom-lava-field span {
  position: absolute !important;
  left: var(--x) !important;
  bottom: -42px !important;
  width: var(--s) !important;
  height: var(--s) !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  filter: blur(var(--blur)) saturate(1.35) brightness(1.16) !important;
  background:
    radial-gradient(circle at 34% 30%,
      rgba(255, 255, 220, .98) 0%,
      rgba(255, 225, 120, .88) 18%,
      rgba(255, 142, 28, .72) 42%,
      rgba(255, 62, 0, .38) 68%,
      rgba(255, 62, 0, 0) 100%) !important;
  box-shadow:
    0 0 calc(var(--s) * .55) rgba(255, 225, 130, .72),
    0 0 calc(var(--s) * 1.35) rgba(255, 90, 0, .42),
    inset 0 0 calc(var(--s) * .32) rgba(255, 255, 210, .58) !important;
  animation: cssLavaBubbleAtom var(--d) linear infinite !important;
  animation-delay: var(--delay) !important;
  will-change: transform, opacity, filter !important;
}

.css-atom-lava-field span::before,
.css-atom-lava-field span::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 28% !important;
  height: 28% !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  background: radial-gradient(circle, rgba(255, 248, 178, .95), rgba(255, 98, 0, .52) 56%, transparent 100%) !important;
  transform: translate(-50%, -50%) !important;
}

@keyframes cssLavaBasePulse {
  0%, 100% { transform: translateY(0) scaleY(.96); opacity: .76; }
  50% { transform: translateY(-12px) scaleY(1.10); opacity: 1; }
}

@keyframes cssLavaBubbleAtom {
  0% {
    opacity: 0;
    transform: translate3d(0, 36px, 0) scale(.45);
  }
  10% {
    opacity: var(--o);
    transform: translate3d(calc(var(--drift) * .08), 18px, 0) scale(.82);
  }
  68% {
    opacity: var(--o);
    transform: translate3d(calc(var(--drift) * .64), calc(-1 * var(--rise) * .72), 0) scale(1);
  }
  82% {
    opacity: calc(var(--o) * .74);
    transform: translate3d(var(--drift), calc(-1 * var(--rise)), 0) scale(.70);
    filter: blur(calc(var(--blur) + .5px)) saturate(1.45) brightness(1.24);
  }
  100% {
    opacity: 0;
    transform:
      translate3d(calc(var(--drift) + 26px), calc(-1 * var(--rise) - 24px), 0)
      scale(.12);
    filter: blur(2.2px) saturate(1.7) brightness(1.35);
  }
}

.css-atom-lava-field span:nth-child(3n)::before {
  animation: cssAtomSplitA var(--d) linear infinite !important;
  animation-delay: var(--delay) !important;
}

.css-atom-lava-field span:nth-child(3n)::after {
  animation: cssAtomSplitB var(--d) linear infinite !important;
  animation-delay: var(--delay) !important;
}

@keyframes cssAtomSplitA {
  0%, 68% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.2);
  }
  82% {
    opacity: .86;
    transform: translate(calc(-50% - 12px), calc(-50% - 8px)) scale(.7);
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% - 38px), calc(-50% - 34px)) scale(.15);
  }
}

@keyframes cssAtomSplitB {
  0%, 68% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.2);
  }
  82% {
    opacity: .74;
    transform: translate(calc(-50% + 12px), calc(-50% + 9px)) scale(.65);
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + 36px), calc(-50% - 26px)) scale(.12);
  }
}

/* Кнопка всегда выше пузырей */
#startGameButton,
.l2-start-wrap,
.l2-start-button,
.start-btn,
.start-button {
  z-index: 2147483647 !important;
}

@media (max-width: 768px) {
  .css-atom-lava-field {
    height: clamp(130px, 21vh, 175px) !important;
    opacity: .88 !important;
  }

  .css-atom-lava-field span {
    filter: blur(calc(var(--blur) + .4px)) saturate(1.18) brightness(1.02) !important;
  }
}
/* === END CSS ATOM LAVA ALWAYS VISIBLE === */

/* === RESTORED BEAUTIFUL LAVA INLINE FIX === */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising,
.lava-bubbles-layer,
.lava-bubbles-canvas,
.atom-lava-base,
.atom-lava-canvas,
.css-atom-lava-field {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
/* === END RESTORED BEAUTIFUL LAVA INLINE FIX === */

/* === GOLD LAVA DUST OPTIMIZED FIX === */
#embers,
#lava,
.lava-flow,
.lava-sky,
.lava-mist,
.smoke,
.heat,
.bg-soften-overlay,
.premium-lava-rising,
.lava-bubbles-layer,
.lava-bubbles-canvas,
.atom-lava-base,
.atom-lava-canvas,
.css-atom-lava-field,
#phoenixRestoredLava {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Новый слой пыли всегда ниже кнопки */
#phoenixLavaDust {
  display: block !important;
}

#startGameButton,
.l2-start-wrap,
.l2-start-button,
.start-btn,
.start-button {
  z-index: 2147483647 !important;
}
/* === END GOLD LAVA DUST OPTIMIZED FIX === */


/* === PHOENIX NEWS BEAUTY + PERFORMANCE PATCH === */
.bg-fill {
  background-image: image-set(url("assets/bg.webp") type("image/webp"), url("assets/bg.png") type("image/png")) !important;
}

.bg-layer {
  background-image: image-set(url("assets/bg.webp") type("image/webp"), url("assets/bg.png") type("image/png")) !important;
}

@media (max-width: 768px) {
  .bg-layer {
    background-image: image-set(url("assets/bg_mobile.webp") type("image/webp"), url("assets/bg_mobile.png") type("image/png")) !important;
  }
}

@media (max-width: 900px) and (orientation: landscape) {
  .bg-layer {
    background-image: image-set(url("assets/bg.webp") type("image/webp"), url("assets/bg.png") type("image/png")) !important;
  }
}

.book-reference-bg {
  content: normal !important;
}

.phoenix-news-section {
  padding: clamp(82px, 10vh, 116px) 18px clamp(98px, 12vh, 130px) !important;
  background:
    radial-gradient(ellipse at 50% -10%, rgba(255, 181, 80, .18), transparent 44%),
    radial-gradient(ellipse at 12% 72%, rgba(255, 90, 18, .12), transparent 40%),
    radial-gradient(ellipse at 88% 68%, rgba(255, 202, 105, .10), transparent 42%),
    linear-gradient(180deg, rgba(6, 1, 0, .58), rgba(7, 2, 0, .94) 32%, rgba(3, 1, 0, .98)) !important;
  content-visibility: auto !important;
  contain-intrinsic-size: 100vh 860px !important;
}

.news-bg-fire {
  opacity: .64 !important;
  animation: none !important;
  background:
    radial-gradient(ellipse at 22% 66%, rgba(255, 112, 30, .18), transparent 43%),
    radial-gradient(ellipse at 78% 70%, rgba(255, 205, 112, .12), transparent 44%) !important;
}

.news-bg-smoke {
  opacity: .42 !important;
  filter: blur(18px) !important;
}

.news-shell {
  max-width: 1180px !important;
  padding: clamp(22px, 3vw, 34px) !important;
  border-radius: clamp(26px, 4vw, 42px) !important;
  border: 1px solid rgba(255, 214, 137, .24) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,0) 28%),
    radial-gradient(ellipse at 50% 0%, rgba(255, 155, 54, .12), transparent 48%),
    rgba(15, 6, 2, .54) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -1px 0 rgba(255, 188, 92, .09),
    0 34px 80px rgba(0,0,0,.46),
    0 0 58px rgba(255, 100, 20, .08) !important;
  backdrop-filter: blur(10px) saturate(1.06) !important;
  contain: layout paint style !important;
}

.news-header {
  margin-bottom: clamp(30px, 4vw, 44px) !important;
}

.news-kicker {
  padding: 7px 13px !important;
  border: 1px solid rgba(255, 211, 128, .28) !important;
  border-radius: 999px !important;
  background: rgba(34, 12, 4, .54) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 0 22px rgba(255, 122, 22, .10) !important;
}

.news-header h2 {
  letter-spacing: .09em !important;
  background: linear-gradient(180deg, #fff2bf 0%, #ffd36e 42%, #b95f1b 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  text-shadow: 0 2px 0 rgba(58, 17, 2, .62), 0 0 24px rgba(255, 134, 38, .18) !important;
}

.news-header p {
  color: rgba(255, 231, 190, .74) !important;
}

.news-carousel {
  padding: 0 54px !important;
}

.news-track {
  gap: 18px !important;
  padding: 12px 6px 30px !important;
  scroll-snap-type: x proximity !important;
  overscroll-behavior-x: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

.news-card {
  flex: 0 0 min(356px, 82vw) !important;
  min-height: 292px !important;
  padding: 25px 24px 23px !important;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 26px !important;
  border: 1px solid rgba(255, 214, 142, .30) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), transparent 24%),
    radial-gradient(circle at 18% 0%, rgba(255, 216, 126, .17), transparent 35%),
    radial-gradient(circle at 100% 100%, rgba(255, 82, 14, .13), transparent 44%),
    linear-gradient(145deg, rgba(72, 31, 8, .88), rgba(17, 6, 1, .95) 58%, rgba(5, 1, 0, .98)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -22px 36px rgba(0,0,0,.34),
    0 22px 46px rgba(0,0,0,.42),
    0 0 28px rgba(255, 126, 30, .08) !important;
  isolation: isolate !important;
  contain: layout paint style !important;
  transform: translateZ(0) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease !important;
}

.news-card-featured {
  flex-basis: min(392px, 86vw) !important;
}

.news-card-frame {
  position: absolute !important;
  inset: 8px !important;
  z-index: 1 !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255, 210, 128, .13) !important;
  pointer-events: none !important;
}

.news-card::before {
  content: "" !important;
  position: absolute !important;
  left: 22px !important;
  right: 22px !important;
  top: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255, 232, 160, .62), transparent) !important;
  opacity: .65 !important;
}

.news-card:hover {
  transform: translateY(-6px) !important;
  filter: brightness(1.08) !important;
  border-color: rgba(255, 224, 156, .48) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.17),
    inset 0 -22px 36px rgba(0,0,0,.36),
    0 26px 52px rgba(0,0,0,.48),
    0 0 34px rgba(255, 152, 42, .18) !important;
}

.news-card-glow {
  inset: -70px !important;
  opacity: .42 !important;
  background: radial-gradient(circle at 28% 8%, rgba(255, 198, 92, .30), transparent 38%) !important;
}

.news-date {
  align-items: center !important;
  gap: 9px !important;
  width: fit-content !important;
  margin-bottom: 18px !important;
  padding: 7px 10px 7px 12px !important;
  border-color: rgba(255, 214, 137, .34) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), transparent),
    rgba(28, 9, 2, .66) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 0 16px rgba(255, 119, 24, .10) !important;
}

.news-date span {
  font-weight: 700 !important;
}

.news-date small {
  padding-left: 9px !important;
  border-left: 1px solid rgba(255, 214, 137, .22) !important;
  color: rgba(255, 229, 181, .66) !important;
  font-size: 10px !important;
  letter-spacing: .12em !important;
}

.news-card h3 {
  margin-bottom: 14px !important;
  font-size: clamp(22px, 2vw, 25px) !important;
  line-height: 1.14 !important;
}

.news-card p {
  flex: 1 1 auto !important;
  color: rgba(255, 230, 188, .76) !important;
  font-size: 14.5px !important;
  line-height: 1.62 !important;
}

.news-card-footer {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-top: 4px !important;
}

.news-tag {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(255, 209, 128, .22) !important;
  border-radius: 999px !important;
  color: rgba(255, 222, 164, .72) !important;
  background: rgba(0,0,0,.18) !important;
  font-size: 11px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.news-card a.news-cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(255, 202, 112, .30) !important;
  border-radius: 999px !important;
  color: #ffd98c !important;
  background: linear-gradient(180deg, rgba(255, 178, 66, .11), rgba(255, 96, 20, .06)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10) !important;
  transition: transform .18s ease, background .18s ease, border-color .18s ease !important;
}

.news-card a.news-cta:hover {
  transform: translateX(2px) !important;
  border-color: rgba(255, 224, 156, .48) !important;
  background: linear-gradient(180deg, rgba(255, 190, 82, .18), rgba(255, 107, 22, .10)) !important;
}

.news-arrow {
  width: 44px !important;
  height: 78px !important;
  border-color: rgba(255, 216, 142, .36) !important;
  background:
    radial-gradient(circle at 35% 20%, rgba(255,255,255,.13), transparent 26%),
    linear-gradient(145deg, rgba(58, 24, 7, .86), rgba(8, 2, 1, .94)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 16px 30px rgba(0,0,0,.42) !important;
}

body.news-revealed #phoenixLavaDust,
body.lineage-book-open #phoenixLavaDust {
  display: none !important;
}

@media (max-width: 760px) {
  .phoenix-news-section {
    padding: 74px 10px 88px !important;
  }

  .news-shell {
    padding: 18px 12px 20px !important;
    border-radius: 26px !important;
    backdrop-filter: none !important;
  }

  .news-carousel {
    padding: 0 !important;
  }

  .news-track {
    gap: 14px !important;
    padding: 8px 4px 24px !important;
  }

  .news-card,
  .news-card-featured {
    flex-basis: 86vw !important;
    min-height: 284px !important;
    padding: 22px 20px !important;
  }

  .news-card:hover {
    transform: none !important;
  }

  #phoenixLavaDust .lava-dust:nth-of-type(n+70) {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
  }

  .bg-layer,
  .news-card,
  .news-bg-fire,
  .phoenix-scroll-hint,
  #phoenixLavaDust .dust-base,
  #phoenixLavaDust .dust-glow,
  #phoenixLavaDust .lava-dust {
    animation: none !important;
    transition: none !important;
  }

  #phoenixLavaDust .lava-dust:nth-of-type(n+38) {
    display: none !important;
  }
}
/* === END PHOENIX NEWS BEAUTY + PERFORMANCE PATCH === */


/* === PHOENIX DYNAMIC BOOK TEXT FIX ===
   Текст книги всегда выводится из data/phoenix/site.json и больше не заменяется
   изображением со встроенными надписями. */
.lineage-book .book-reference-bg {
  content: normal !important;
}

.lineage-book .scroll-page-full {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full .book-spread {
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full .book-spread:not(.is-active) {
  display: none !important;
}

.lineage-book .scroll-page-full .book-spread.is-active {
  display: block !important;
}

.lineage-book .scroll-page-full .scroll-columns {
  display: grid !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full .scroll-col,
.lineage-book .scroll-page-full h2,
.lineage-book .scroll-page-full h3,
.lineage-book .scroll-page-full p,
.lineage-book .scroll-page-full ul,
.lineage-book .scroll-page-full .book-subtitle,
.lineage-book .scroll-page-full .book-seal {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full li {
  display: list-item !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full .book-stats {
  display: grid !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.lineage-book .scroll-page-full .book-stats span {
  display: inline-flex !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* === END PHOENIX DYNAMIC BOOK TEXT FIX === */

/* Phoenix language links: preserve button appearance and clickability. */
.phx-lang-option {
  text-decoration: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

/* === PHOENIX BOOK PAGE TEXT + CENTER EMBLEM TRIGGER FIX v1 === */
/* The book is activated only over the small phoenix emblem above the PHOENIX title. */
.phoenix-hover-zone {
  position: fixed !important;
  left: 50% !important;
  top: 30.5% !important;
  width: 27vh !important;
  height: 20.5vh !important;
  max-width: 15vw !important;
  min-width: 120px !important;
  max-height: 210px !important;
  min-height: 105px !important;
  transform: translateX(-50%) !important;
  border-radius: 46% 54% 50% 50% / 42% 44% 56% 58% !important;
  clip-path: ellipse(48% 49% at 50% 50%) !important;
}

/* Keep the hover glow inside the emblem instead of spreading over the title text. */
.phoenix-hover-zone::before,
.phoenix-hover-zone::after {
  inset: -8% !important;
}

/* Text stays within the printable area of both paper sheets. */
#lineageServerBook .phoenix-book-text-layer {
  left: 13.1% !important;
  top: 17.4% !important;
  width: 73.8% !important;
  height: 63.4% !important;
  column-gap: 15.2% !important;
}

#lineageServerBook .phoenix-book-text-page {
  box-sizing: border-box !important;
  padding: 0.7% 4.8% 3.8% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable !important;
  text-align: justify !important;
  text-justify: inter-word !important;
  hyphens: auto !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

#lineageServerBook .phoenix-book-text-left {
  padding-left: 4.5% !important;
  padding-right: 5.8% !important;
}

#lineageServerBook .phoenix-book-text-right {
  padding-left: 5.8% !important;
  padding-right: 4.5% !important;
}

#lineageServerBook .phoenix-book-text-page p {
  margin: 0 0 0.8em !important;
  text-indent: 1.45em !important;
  white-space: pre-line !important;
  text-align: justify !important;
  line-height: 1.5 !important;
}

#lineageServerBook .phoenix-book-text-page p:first-of-type {
  margin-top: 0 !important;
}

#lineageServerBook .phoenix-book-text-page h2,
#lineageServerBook .phoenix-book-text-page h3,
#lineageServerBook .phoenix-book-subtitle,
#lineageServerBook .phoenix-book-stats,
#lineageServerBook .phoenix-book-text-page ul,
#lineageServerBook .phoenix-book-seal {
  text-indent: 0 !important;
  text-align: center !important;
}

#lineageServerBook .phoenix-book-text-page ul {
  text-align: left !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 900px) {
  /* The mobile artwork has one large phoenix; the touch target follows its head. */
  .phoenix-hover-zone {
    left: 46% !important;
    top: 23% !important;
    width: 34vw !important;
    height: 23vh !important;
    min-width: 110px !important;
    max-width: 210px !important;
    min-height: 100px !important;
    max-height: 190px !important;
    transform: translateX(-50%) rotate(-5deg) !important;
  }

  #lineageServerBook .phoenix-book-text-layer {
    left: 13.4% !important;
    top: 17.2% !important;
    width: 73.2% !important;
    height: 63.5% !important;
    column-gap: 14.3% !important;
  }

  #lineageServerBook .phoenix-book-text-page {
    padding-top: 0 !important;
    padding-bottom: 3% !important;
  }

  #lineageServerBook .phoenix-book-text-page p {
    text-indent: 1.15em !important;
    line-height: 1.35 !important;
  }
}
/* === END PHOENIX BOOK PAGE TEXT + CENTER EMBLEM TRIGGER FIX v1 === */


/* === PHOENIX CENTRAL EMBLEM + READABLE GLASS SECTIONS FIX v2 === */
/* The actual trigger is moved directly under body by JS so it is no longer
   trapped under the fixed scene. It covers only the small central phoenix. */
html body > #phoenixHoverZone {
  position: fixed !important;
  left: 50% !important;
  top: 31.5vh !important;
  width: clamp(150px, 12vw, 230px) !important;
  height: clamp(132px, 19vh, 205px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  transform: translateX(-50%) !important;
  clip-path: ellipse(48% 49% at 50% 50%) !important;
  border-radius: 50% !important;
  z-index: 2147483000 !important;
  pointer-events: auto !important;
  cursor: url("assets/cursors/lineage2_original.cur"), pointer !important;
  outline: none !important;
  background: transparent !important;
}

html body > #phoenixHoverZone::before,
html body > #phoenixHoverZone::after {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
  opacity: 0 !important;
  transition: opacity .22s ease, transform .28s ease, filter .28s ease !important;
}

html body > #phoenixHoverZone::before {
  inset: -18% !important;
  border-radius: 50% !important;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(255,255,222,.90) 0%, rgba(255,226,132,.62) 16%, rgba(255,137,36,.38) 38%, rgba(255,63,0,.12) 62%, transparent 76%) !important;
  mix-blend-mode: screen !important;
  filter: blur(16px) saturate(1.14) !important;
}

html body > #phoenixHoverZone::after {
  inset: -28% !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle at 30% 35%, rgba(255,249,192,.92) 0 1px, transparent 3px),
    radial-gradient(circle at 69% 29%, rgba(255,181,71,.86) 0 1.4px, transparent 4px),
    radial-gradient(circle at 78% 62%, rgba(255,89,18,.78) 0 1.5px, transparent 5px),
    radial-gradient(circle at 24% 70%, rgba(255,217,120,.72) 0 1.2px, transparent 4px) !important;
  filter: drop-shadow(0 0 10px rgba(255,130,30,.72)) !important;
}

body.phoenix-center-lit > #phoenixHoverZone::before,
body.phoenix-center-lit > #phoenixHoverZone::after,
html body > #phoenixHoverZone:hover::before,
html body > #phoenixHoverZone:hover::after,
html body > #phoenixHoverZone:focus-visible::before,
html body > #phoenixHoverZone:focus-visible::after {
  opacity: 1 !important;
  transform: scale(1.08) !important;
}

body.phoenix-center-lit .bg-layer {
  filter: brightness(1.17) contrast(1.07) saturate(1.18)
          drop-shadow(0 0 22px rgba(255,209,119,.22))
          drop-shadow(0 0 58px rgba(255,92,0,.20)) !important;
  transform: scale(1.028) !important;
}

body.phoenix-center-lit .light-core,
body.phoenix-center-lit .wing-glow,
body.phoenix-center-lit .phoenix-left-aura,
body.phoenix-center-lit .phoenix-wing-breath {
  opacity: 1 !important;
}

/* Preserve the original homepage artwork behind the content sections. */
.phoenix-news-section,
.phoenix-server-section,
.phoenix-description-section,
#phoenixNews,
#phoenixServers {
  background: transparent !important;
  background-color: transparent !important;
}

.news-bg-fire,
.news-bg-smoke,
.server-bg-fire,
.server-bg-smoke {
  opacity: .20 !important;
  mix-blend-mode: screen !important;
}

/* Translucent section shells: readable but the background remains visible. */
.news-shell,
.premium-server-shell,
.server-shell {
  border: 1px solid rgba(255,220,150,.52) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(255,190,82,.15), transparent 35%),
    radial-gradient(circle at 90% 12%, rgba(255,70,15,.11), transparent 36%),
    linear-gradient(145deg, rgba(12,8,8,.58), rgba(5,5,8,.48) 52%, rgba(16,7,5,.58)) !important;
  backdrop-filter: blur(11px) saturate(1.12) !important;
  -webkit-backdrop-filter: blur(11px) saturate(1.12) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    inset 0 0 0 1px rgba(255,126,31,.09),
    0 24px 72px rgba(0,0,0,.42),
    0 0 38px rgba(255,103,20,.10) !important;
}

.news-shell::before,
.premium-server-shell::before,
.server-shell::before {
  opacity: .45 !important;
  background: linear-gradient(135deg, rgba(255,255,255,.09), transparent 30%, transparent 78%, rgba(255,143,43,.07)) !important;
}

/* Cards use dark glass rather than a solid block. */
.news-card,
.server-card,
.premium-server-card {
  border: 1px solid rgba(255,225,164,.46) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(255,205,116,.12), transparent 34%),
    linear-gradient(145deg, rgba(9,8,10,.74), rgba(5,5,7,.62) 56%, rgba(18,8,5,.70)) !important;
  backdrop-filter: blur(14px) saturate(1.12) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 0 30px rgba(255,126,27,.045),
    0 22px 56px rgba(0,0,0,.44),
    0 0 28px rgba(255,105,21,.08) !important;
}

.news-card::before,
.server-card::before,
.premium-server-card::before {
  opacity: .32 !important;
}

/* A soft internal veil behind text increases contrast without hiding the page background. */
.news-card h3,
.news-card p,
.news-date,
.news-card-footer,
.server-card-content,
.server-card-content > *,
.premium-server-card h3,
.premium-server-card p,
.premium-server-card small {
  position: relative !important;
  z-index: 3 !important;
}

.news-card h3,
.server-card h3,
.premium-server-card h3,
.news-header h2,
.phoenix-server-header h2,
.server-section-header h2 {
  color: #fff1c7 !important;
  text-shadow: 0 2px 5px rgba(0,0,0,.96), 0 0 16px rgba(255,145,44,.18) !important;
}

.news-card p,
.server-card p,
.premium-server-card p,
.news-header p,
.phoenix-server-header p,
.server-section-header p {
  color: rgba(255,255,255,.92) !important;
  text-shadow: 0 2px 4px rgba(0,0,0,.98) !important;
  line-height: 1.62 !important;
}

.news-date,
.news-date small,
.news-tag,
.premium-server-card small,
.server-card small {
  color: rgba(255,225,166,.88) !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.96) !important;
}

.news-card-media::after,
.server-card-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.18) 58%, rgba(0,0,0,.62)) !important;
}

@media (max-width: 900px) {
  html body > #phoenixHoverZone {
    left: 46% !important;
    top: 22.5vh !important;
    width: clamp(120px, 31vw, 200px) !important;
    height: clamp(112px, 21vh, 185px) !important;
    transform: translateX(-50%) rotate(-4deg) !important;
  }
  .news-shell,
  .premium-server-shell,
  .server-shell {
    backdrop-filter: blur(8px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(8px) saturate(1.08) !important;
  }
}
/* === END PHOENIX CENTRAL EMBLEM + READABLE GLASS SECTIONS FIX v2 === */


/* === PHOENIX FINAL DIRECT TRIGGER FIX v3 ===
   The central emblem is detected from document pointer coordinates, so no
   decorative layer can intercept or disable the hover effect. */
html body > #phoenixHoverZone,
#phoenixHoverZone {
  position: fixed !important;
  left: 50% !important;
  top: 31.2vh !important;
  width: clamp(170px, 13vw, 250px) !important;
  height: clamp(135px, 20vh, 215px) !important;
  transform: translateX(-50%) !important;
  z-index: 2147482990 !important;
  pointer-events: none !important;
  overflow: visible !important;
  clip-path: none !important;
  border-radius: 48% !important;
  background: transparent !important;
}

html body > #phoenixHoverZone::before,
#phoenixHoverZone::before {
  content: "" !important;
  position: absolute !important;
  inset: -25% -28% !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(255,255,220,.96) 0 8%, rgba(255,220,122,.72) 18%, rgba(255,135,32,.43) 38%, rgba(255,67,0,.18) 58%, transparent 75%) !important;
  mix-blend-mode: screen !important;
  filter: blur(15px) saturate(1.18) !important;
  transform: scale(.84) !important;
  transition: opacity .16s ease, transform .3s ease !important;
}

html body > #phoenixHoverZone::after,
#phoenixHoverZone::after {
  content: "" !important;
  position: absolute !important;
  inset: -34% !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 30% 31%, rgba(255,247,188,.94) 0 1px, transparent 3px),
    radial-gradient(circle at 68% 27%, rgba(255,181,63,.90) 0 1.5px, transparent 4px),
    radial-gradient(circle at 76% 66%, rgba(255,86,9,.82) 0 1.5px, transparent 5px),
    radial-gradient(circle at 24% 71%, rgba(255,211,112,.80) 0 1.3px, transparent 4px),
    radial-gradient(circle at 53% 18%, rgba(255,236,155,.72) 0 1.2px, transparent 4px) !important;
  filter: drop-shadow(0 0 11px rgba(255,139,31,.88)) !important;
  transform: scale(.9) rotate(-2deg) !important;
  transition: opacity .15s ease, transform .3s ease !important;
}

body.phoenix-center-lit #phoenixHoverZone::before,
body.phoenix-center-lit #phoenixHoverZone::after {
  opacity: 1 !important;
  transform: scale(1.08) rotate(0deg) !important;
  animation: phoenixEmblemPulseV3 1.45s ease-in-out infinite alternate !important;
}

body.phoenix-center-lit .bg-layer {
  filter: brightness(1.22) contrast(1.08) saturate(1.22)
          drop-shadow(0 0 24px rgba(255,222,135,.26))
          drop-shadow(0 0 64px rgba(255,87,0,.22)) !important;
}

body.phoenix-center-lit .light-core {
  opacity: 1 !important;
  transform: scale(1.18) !important;
  filter: blur(21px) brightness(1.48) saturate(1.16)
          drop-shadow(0 0 42px rgba(255,218,125,.55)) !important;
}

@keyframes phoenixEmblemPulseV3 {
  from { filter: blur(14px) saturate(1.08); }
  to   { filter: blur(19px) saturate(1.28); }
}

/* Extra text contrast while preserving the original art behind the sections. */
.news-shell,
.premium-server-shell,
.server-shell {
  background: linear-gradient(145deg, rgba(8,7,9,.66), rgba(5,5,7,.53) 55%, rgba(15,7,5,.63)) !important;
  backdrop-filter: blur(9px) saturate(1.1) !important;
  -webkit-backdrop-filter: blur(9px) saturate(1.1) !important;
}

.news-card,
.server-card,
.premium-server-card {
  background: linear-gradient(145deg, rgba(7,7,9,.82), rgba(6,6,8,.69) 58%, rgba(16,8,5,.76)) !important;
  border-color: rgba(255,222,155,.52) !important;
}

.news-card h3,
.server-card h3,
.premium-server-card h3 {
  color: #fff3d0 !important;
  text-shadow: 0 2px 5px #000, 0 0 14px rgba(255,151,43,.20) !important;
}

.news-card p,
.server-card p,
.premium-server-card p {
  color: rgba(255,255,255,.95) !important;
  text-shadow: 0 2px 4px rgba(0,0,0,1) !important;
}

@media (max-width: 900px) {
  html body > #phoenixHoverZone,
  #phoenixHoverZone {
    left: 45% !important;
    top: 24vh !important;
    width: clamp(150px, 36vw, 220px) !important;
    height: clamp(140px, 24vh, 215px) !important;
    transform: translateX(-50%) rotate(-4deg) !important;
  }
}
/* === END PHOENIX FINAL DIRECT TRIGGER FIX v3 === */


/* === LA2PHOENIX FINAL: CENTRAL PHOENIX 4-SECOND HOVER === */
html body > #phoenixHoverZone,
#phoenixHoverZone {
  position: fixed !important;
  left: 50% !important;
  top: 33.2vh !important;
  width: clamp(220px, 18vw, 360px) !important;
  height: clamp(150px, 19.5vh, 245px) !important;
  transform: translateX(-50%) !important;
  z-index: 2147482500 !important;
  pointer-events: auto !important;
  overflow: visible !important;
  clip-path: ellipse(48% 48% at 50% 50%) !important;
  border-radius: 50% !important;
  background: transparent !important;
  cursor: url("assets/cursors/lineage2_original.cur"), pointer !important;
  outline: none !important;
}

html body > #phoenixHoverZone::before,
html body > #phoenixHoverZone::after,
#phoenixHoverZone::before,
#phoenixHoverZone::after {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
  border-radius: 50% !important;
  opacity: 0 !important;
  transition: opacity .22s ease, transform .32s ease, filter .32s ease !important;
}

html body > #phoenixHoverZone::before,
#phoenixHoverZone::before {
  inset: -30% -34% !important;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(255,255,232,.98) 0 7%, rgba(255,224,129,.78) 18%, rgba(255,145,38,.52) 39%, rgba(255,68,0,.22) 59%, transparent 76%) !important;
  mix-blend-mode: screen !important;
  filter: blur(18px) saturate(1.2) !important;
  transform: scale(.82) !important;
}

html body > #phoenixHoverZone::after,
#phoenixHoverZone::after {
  inset: -40% !important;
  background:
    radial-gradient(circle at 28% 30%, rgba(255,251,199,.96) 0 1.3px, transparent 4px),
    radial-gradient(circle at 70% 26%, rgba(255,189,72,.93) 0 1.7px, transparent 5px),
    radial-gradient(circle at 78% 66%, rgba(255,91,13,.88) 0 1.8px, transparent 5px),
    radial-gradient(circle at 22% 72%, rgba(255,220,123,.84) 0 1.5px, transparent 5px),
    radial-gradient(circle at 53% 16%, rgba(255,241,166,.82) 0 1.4px, transparent 4px) !important;
  filter: drop-shadow(0 0 13px rgba(255,139,31,.94)) !important;
  transform: scale(.88) rotate(-3deg) !important;
}

body.phoenix-center-lit #phoenixHoverZone::before,
body.phoenix-center-lit #phoenixHoverZone::after,
#phoenixHoverZone.is-hovering::before,
#phoenixHoverZone.is-hovering::after,
#phoenixHoverZone:hover::before,
#phoenixHoverZone:hover::after,
#phoenixHoverZone:focus-visible::before,
#phoenixHoverZone:focus-visible::after {
  opacity: 1 !important;
  transform: scale(1.08) rotate(0deg) !important;
  animation: la2PhoenixHoverPulse 1.35s ease-in-out infinite alternate !important;
}

#phoenixHoverZone.is-holding::before {
  filter: blur(20px) brightness(1.18) saturate(1.32) !important;
}

body.phoenix-center-lit .bg-layer {
  filter: brightness(1.20) contrast(1.08) saturate(1.23)
          drop-shadow(0 0 26px rgba(255,225,144,.28))
          drop-shadow(0 0 68px rgba(255,91,0,.24)) !important;
}

body.phoenix-center-lit .light-core {
  opacity: 1 !important;
  transform: scale(1.18) !important;
  filter: blur(22px) brightness(1.55) saturate(1.18)
          drop-shadow(0 0 44px rgba(255,221,132,.58)) !important;
}

@keyframes la2PhoenixHoverPulse {
  from { opacity: .78; filter: blur(15px) saturate(1.08); }
  to   { opacity: 1; filter: blur(21px) saturate(1.30); }
}

@media (max-width: 900px) {
  html body > #phoenixHoverZone,
  #phoenixHoverZone {
    left: 50% !important;
    top: 33vh !important;
    width: clamp(170px, 38vw, 255px) !important;
    height: clamp(135px, 21vh, 210px) !important;
    transform: translateX(-50%) !important;
  }
}
/* === END CENTRAL PHOENIX 4-SECOND HOVER === */


/* === LA2PHOENIX CLEAN PHOENIX GLOW + EMAIL RELEASE v1 ===
   The hover target stays interactive but draws no oval over the phoenix. */
html body > #phoenixHoverZone,
#phoenixHoverZone {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}
html body > #phoenixHoverZone::before,
html body > #phoenixHoverZone::after,
#phoenixHoverZone::before,
#phoenixHoverZone::after,
body.phoenix-center-lit #phoenixHoverZone::before,
body.phoenix-center-lit #phoenixHoverZone::after,
#phoenixHoverZone.is-hovering::before,
#phoenixHoverZone.is-hovering::after,
#phoenixHoverZone.is-holding::before,
#phoenixHoverZone:hover::before,
#phoenixHoverZone:hover::after,
#phoenixHoverZone:focus-visible::before,
#phoenixHoverZone:focus-visible::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  background: none !important;
  box-shadow: none !important;
  filter: none !important;
  animation: none !important;
}
body.phoenix-center-lit .bg-layer {
  filter: brightness(1.20) contrast(1.08) saturate(1.22)
          drop-shadow(0 0 24px rgba(255,220,138,.24))
          drop-shadow(0 0 64px rgba(255,92,0,.22)) !important;
  transform: scale(1.028) !important;
}
body.phoenix-center-lit .light-core,
body.phoenix-center-lit .wing-glow,
body.phoenix-center-lit .phoenix-left-aura,
body.phoenix-center-lit .phoenix-wing-breath { opacity: 1 !important; }
/* === END CLEAN PHOENIX GLOW === */
