/* ---
 * Uncook — fond ambiant B (DA), AUTONOME, pour les pages qui ne chargent PAS
 * shared.css (legal / privacy / terms / about / blog). Même gradient mouvant
 * subtil que les homes/pro/everyday, dosé identique (flou, opacité .4, drift lent).
 * z-index-safe universel : le contenu passe au-dessus via
 *   body > *:not(.page-bg){position:relative;z-index:1}
 * (le .page-bg fixe est en z-index:0, enfant de body → au-dessus du fond body,
 * sous le contenu). Jamais au détriment de la lisibilité.
 * Version : V1.0 · 2026-07-14
 * --- */
.page-bg{position:fixed;inset:-22%;z-index:0;pointer-events:none;filter:blur(84px);opacity:.4}
.page-bg span{position:absolute;width:48%;height:54%;border-radius:50%}
.page-bg .b1{background:radial-gradient(circle,rgba(255,45,85,.34),transparent 62%);top:-6%;left:44%;animation:pbgA 34s ease-in-out infinite}
.page-bg .b2{background:radial-gradient(circle,rgba(255,122,61,.30),transparent 62%);top:38%;left:60%;animation:pbgB 40s ease-in-out infinite}
.page-bg .b3{background:radial-gradient(circle,rgba(255,214,222,.5),transparent 60%);top:6%;left:0%;animation:pbgC 38s ease-in-out infinite}
.page-bg .b4{background:radial-gradient(circle,rgba(255,159,120,.26),transparent 60%);top:46%;left:10%;animation:pbgA 44s ease-in-out infinite reverse}
@keyframes pbgA{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-7%,6%) scale(1.12)}}
@keyframes pbgB{0%,100%{transform:translate(0,0) scale(1.05)}50%{transform:translate(-10%,-7%) scale(.93)}}
@keyframes pbgC{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(8%,5%) scale(1.1)}}
body > *:not(.page-bg){position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.page-bg span{animation:none!important}}
