.rmbe-effect-lantern {
    --rmbe-lantern-x: 50%;
    --rmbe-lantern-y: 50%;
    --rmbe-lantern-glow: 0;
    background: #17130f;
    border: 1px solid rgba(127, 96, 58, 0.78);
    box-shadow:
        inset 0 1px 0 rgba(255, 226, 173, 0.07),
        inset 0 -10px 20px rgba(0, 0, 0, 0.38),
        inset 0 0 22px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(50, 32, 20, 0.28);
}

.rmbe-effect-lantern .rmbe-button__surface {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(0, 0, 0, 0.08)),
        repeating-linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.018) 0,
            rgba(255, 255, 255, 0.018) 22px,
            rgba(255, 235, 201, 0.055) 23px,
            rgba(255, 235, 201, 0.055) 24px,
            rgba(0, 0, 0, 0.15) 25px,
            rgba(0, 0, 0, 0.15) 29px
        ),
        linear-gradient(90deg, #211a14 0%, #191510 50%, #211a14 100%);
}

.rmbe-effect-lantern .rmbe-button__surface::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.10), transparent 12%, transparent 88%, rgba(0, 0, 0, 0.15)),
        linear-gradient(180deg, rgba(255, 236, 196, 0.05), transparent 35%, rgba(0, 0, 0, 0.18));
    pointer-events: none;
}

.rmbe-effect-lantern .rmbe-button__waves {
    opacity: var(--rmbe-lantern-glow);
    background:
        radial-gradient(
            ellipse 58px 36px at var(--rmbe-lantern-x) var(--rmbe-lantern-y),
            rgba(255, 250, 207, 0.96) 0%,
            rgba(255, 225, 139, 0.84) 18%,
            rgba(247, 176, 86, 0.64) 38%,
            rgba(177, 99, 43, 0.42) 58%,
            rgba(96, 48, 23, 0.18) 72%,
            transparent 86%
        ),
        radial-gradient(
            ellipse 105px 52px at var(--rmbe-lantern-x) var(--rmbe-lantern-y),
            rgba(255, 194, 103, 0.25) 0%,
            rgba(194, 104, 46, 0.15) 46%,
            transparent 78%
        );
    filter: saturate(1.08);
    transition: opacity 210ms ease;
    mix-blend-mode: screen;
}

.rmbe-effect-lantern .rmbe-button__label {
    z-index: 3;
    color: #fffdf8;
    text-shadow:
        0 1px 4px rgba(0, 0, 0, 0.72),
        0 0 10px rgba(255, 206, 119, 0.18);
}

.rmbe-effect-lantern:hover,
.rmbe-effect-lantern:focus-visible {
    border-color: rgba(168, 126, 72, 0.88);
    box-shadow:
        inset 0 1px 0 rgba(255, 226, 173, 0.09),
        inset 0 -10px 20px rgba(0, 0, 0, 0.34),
        inset 0 0 22px rgba(0, 0, 0, 0.28),
        0 0 10px rgba(144, 89, 39, 0.08);
}

@media (prefers-reduced-motion: reduce) {
    .rmbe-effect-lantern .rmbe-button__waves {
        transition: none;
    }
}
