body.albirroja-mode {
    background:
        radial-gradient(circle at 18% 10%, rgba(208, 16, 16, 0.24), transparent 30rem),
        radial-gradient(circle at 84% 18%, rgba(30, 64, 175, 0.22), transparent 28rem),
        linear-gradient(180deg, #080808 0%, #101010 45%, #080808 100%);
}

body.albirroja-mode .albirroja-ambient {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

body.albirroja-mode .albirroja-ambient__wash {
    position: absolute;
    inset: -18% -10%;
    background:
        linear-gradient(115deg, rgba(208, 16, 16, 0.18), transparent 34%),
        linear-gradient(245deg, rgba(255, 255, 255, 0.10), transparent 38%),
        linear-gradient(315deg, rgba(37, 99, 235, 0.16), transparent 42%);
    opacity: 0.88;
    transform: translate3d(0, 0, 0);
    animation: albirrojaWash 14s ease-in-out infinite alternate;
}

body.albirroja-mode .albirroja-ambient__stripe {
    position: absolute;
    left: -20%;
    right: -20%;
    height: 12rem;
    transform: rotate(-13deg);
    filter: blur(0.2px);
    opacity: 0.26;
}

body.albirroja-mode .albirroja-ambient__stripe--red {
    top: 12%;
    background: linear-gradient(90deg, transparent, rgba(208, 16, 16, 0.72), transparent);
}

body.albirroja-mode .albirroja-ambient__stripe--white {
    top: 29%;
    height: 7rem;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.46), transparent);
    opacity: 0.16;
}

body.albirroja-mode .albirroja-ambient__stripe--blue {
    top: 43%;
    background: linear-gradient(90deg, transparent, rgba(29, 78, 216, 0.60), transparent);
}

body.albirroja-mode nav,
body.albirroja-mode main,
body.albirroja-mode footer {
    position: relative;
    z-index: 1;
}

body.albirroja-mode main .rounded-2xl,
body.albirroja-mode main .rounded-3xl {
    box-shadow:
        0 18px 60px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(255, 255, 255, 0.035);
}

body.albirroja-mode main button,
body.albirroja-mode main a {
    transition-property: color, background-color, border-color, box-shadow, transform, opacity;
}

body.albirroja-mode main button:hover,
body.albirroja-mode main a:hover {
    box-shadow: 0 0 24px rgba(208, 16, 16, 0.16);
}

body.albirroja-mode #toast-container,
body.albirroja-mode #searchModal,
body.albirroja-mode #sideMenu {
    z-index: 100;
}

@keyframes albirrojaWash {
    from {
        opacity: 0.62;
        transform: translate3d(-1.2rem, -0.8rem, 0) scale(1);
    }
    to {
        opacity: 0.9;
        transform: translate3d(1rem, 0.7rem, 0) scale(1.02);
    }
}

@media (max-width: 640px) {
    body.albirroja-mode .albirroja-ambient__stripe {
        height: 8rem;
        opacity: 0.18;
    }

    body.albirroja-mode .albirroja-ambient__stripe--white {
        height: 5rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.albirroja-mode .albirroja-ambient__wash {
        animation: none;
        transform: none;
    }
}
