html body.tongvh-post-bg-active {
    background: #0b141e !important;
}

body.tongvh-post-bg-active {
    position: relative;
    isolation: isolate;
}

#tongvh-post-bg-layer {
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
    background: #0b141e;
    transform: translateZ(0);
}

#tongvh-post-bg-layer > span {
    position: absolute;
    inset: 0;
    display: block;
}

#tongvh-post-bg-layer .tongvh-post-bg-image {
    background-image: var(--tongvh-post-bg-image);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: var(--tongvh-post-bg-position, center top);
    background-attachment: var(--tongvh-post-bg-attachment, fixed);
    opacity: var(--tongvh-post-bg-image-opacity, 0.18);
    filter: saturate(0.92) contrast(1.02);
    transform: scale(1.02);
}

#tongvh-post-bg-layer .tongvh-post-bg-tone {
    opacity: var(--tongvh-post-bg-tone-strength, 0.78);
}

#tongvh-post-bg-layer.tone-steam_blue_glow .tongvh-post-bg-tone {
    background:
        linear-gradient(180deg, rgba(8, 18, 28, 0.92) 0%, rgba(9, 22, 34, 0.80) 16%, rgba(10, 23, 36, 0.68) 40%, rgba(8, 18, 28, 0.88) 100%),
        linear-gradient(90deg, rgba(6, 14, 22, 0.84) 0%, rgba(10, 25, 39, 0.42) 18%, rgba(12, 28, 44, 0.12) 50%, rgba(10, 25, 39, 0.42) 82%, rgba(6, 14, 22, 0.84) 100%);
}

#tongvh-post-bg-layer.tone-steam_blue_glow .tongvh-post-bg-glow {
    background:
        radial-gradient(circle at 50% 24%, rgba(103, 193, 245, 0.20) 0%, rgba(103, 193, 245, 0.09) 18%, rgba(103, 193, 245, 0.00) 42%),
        radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0.00) 24%);
    opacity: calc(var(--tongvh-post-bg-tone-strength, 0.78) * 0.95);
}

#tongvh-post-bg-layer.tone-steam_dark .tongvh-post-bg-tone {
    background:
        linear-gradient(180deg, rgba(6, 12, 18, 0.96) 0%, rgba(8, 15, 24, 0.86) 20%, rgba(10, 18, 28, 0.76) 45%, rgba(6, 12, 18, 0.94) 100%),
        linear-gradient(90deg, rgba(4, 10, 16, 0.90) 0%, rgba(6, 14, 22, 0.48) 22%, rgba(8, 18, 28, 0.12) 50%, rgba(6, 14, 22, 0.48) 78%, rgba(4, 10, 16, 0.90) 100%);
}

#tongvh-post-bg-layer.tone-steam_dark .tongvh-post-bg-glow {
    background:
        radial-gradient(circle at 50% 22%, rgba(103, 193, 245, 0.10) 0%, rgba(103, 193, 245, 0.03) 18%, rgba(103, 193, 245, 0.00) 38%);
    opacity: calc(var(--tongvh-post-bg-tone-strength, 0.78) * 0.75);
}

#tongvh-post-bg-layer.tone-steam_soft_fog .tongvh-post-bg-tone {
    background:
        linear-gradient(180deg, rgba(11, 19, 28, 0.82) 0%, rgba(15, 28, 40, 0.68) 18%, rgba(15, 29, 42, 0.58) 44%, rgba(9, 17, 26, 0.82) 100%),
        linear-gradient(90deg, rgba(8, 16, 24, 0.82) 0%, rgba(12, 22, 34, 0.36) 20%, rgba(14, 25, 38, 0.08) 50%, rgba(12, 22, 34, 0.36) 80%, rgba(8, 16, 24, 0.82) 100%);
}

#tongvh-post-bg-layer.tone-steam_soft_fog .tongvh-post-bg-glow {
    background:
        radial-gradient(circle at 50% 20%, rgba(103, 193, 245, 0.14) 0%, rgba(103, 193, 245, 0.06) 18%, rgba(103, 193, 245, 0.00) 40%),
        radial-gradient(circle at 50% 48%, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.00) 28%);
    opacity: calc(var(--tongvh-post-bg-tone-strength, 0.78) * 0.90);
}

#tongvh-post-bg-layer .tongvh-post-bg-vignette {
    background:
        radial-gradient(ellipse at center, rgba(0, 0, 0, 0.00) 42%, rgba(0, 0, 0, 0.16) 66%, rgba(0, 0, 0, 0.42) 100%);
    opacity: 1;
    box-shadow:
        inset 0 0 180px rgba(103, 193, 245, 0.05),
        inset 0 0 340px rgba(0, 0, 0, 0.36);
}

@media (max-width: 900px) {
    #tongvh-post-bg-layer .tongvh-post-bg-image {
        background-attachment: scroll;
    }
}
