.guest-background-layer {
    position: fixed;
    z-index: 0;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    background: linear-gradient(180deg, #b91c1c, #450a0a);
}

.guest-background-media,
.guest-background-overlay {
    position: absolute;
    inset: -18px;
    width: calc(100% + 36px);
    height: calc(100% + 36px);
}

.guest-background-media {
    object-fit: cover;
    object-position: center;
    transform: scale(1.025);
}

.guest-background-overlay {
    z-index: 1;
    background: rgba(39, 7, 7, .58);
}

html.guest-has-custom-background body {
    background: transparent !important;
}

html.guest-has-custom-background .container,
html.guest-has-custom-background .guest-container,
html.guest-has-custom-background .phone-frame-wrapper {
    position: relative;
    z-index: 2;
}

html.guest-has-custom-background .phone-frame-wrapper {
    background: transparent !important;
}

html.guest-has-custom-background .phone-device {
    background: rgba(248, 250, 252, .92) !important;
    backdrop-filter: blur(5px);
}

@media (max-width: 560px) {
    .guest-background-media { transform: scale(1.04); }
}

@media (prefers-reduced-motion: reduce) {
    .guest-background-media { transform: none; }
}
