/* Приглушённый спектральный свет за содержимым. Документы остаются статичными. */
body{isolation:isolate}
body::before,body::after{content:"";position:fixed;z-index:-1;pointer-events:none;inset:0;}
body::before{background:radial-gradient(ellipse 58% 49% at 2% 6%,rgb(80 104 188 / .30),transparent 77%),radial-gradient(ellipse 48% 57% at 101% 37%,rgb(107 75 149 / .25),transparent 76%),radial-gradient(ellipse 54% 37% at 46% 103%,rgb(42 117 113 / .20),transparent 80%);}
body::after{background:radial-gradient(ellipse 38% 48% at 92% -9%,rgb(167 119 68 / .16),transparent 80%),radial-gradient(ellipse 42% 44% at 4% 88%,rgb(65 99 151 / .16),transparent 80%);}
/* Пониженная интенсивность у длинных документов и таблиц. */
body:has(.prose)::before,body:has(.finance-output)::before{opacity:.75}
body:has(.prose)::after,body:has(.finance-output)::after{opacity:.65}
/* Однократное появление на главной: без бесконечного движения и нового контроллера. */
body:has(#motion-toggle)::before{animation:exme-spectrum-arrive 2.8s cubic-bezier(.22,1,.36,1) both}
body:has(#motion-toggle)::after{animation:exme-spectrum-arrive 3.6s cubic-bezier(.22,1,.36,1) both}
@keyframes exme-spectrum-arrive{from{opacity:0}to{opacity:1}}
/* Пауза показывает устойчивое конечное состояние, а не полупрозрачный переход. */
body.paused::before,body.paused::after{animation:none!important}
@media(prefers-reduced-motion:reduce){body::before,body::after{animation:none!important}}
@media(forced-colors:active){body::before,body::after{display:none}}
@media print{body::before,body::after{display:none!important}}
