/* Nền chung của cả platform — hub và mọi tool cùng nạp file này, nên dashboard
   và trang trong tool có cùng một nền, không lệch nhau.

   Chuyển từ app.css của gncrawl sang: các gradient dùng màu rgba cứng chứ không
   phụ thuộc biến thiết kế của tool, nên mang đi được nguyên vẹn.

   Cách dùng: nạp file này rồi đặt <div class="bg-glow" aria-hidden="true"></div>
   làm con trực tiếp của <body>. Phải là con trực tiếp — tổ tiên nào tạo stacking
   context sẽ nhốt z-index:-1 lại và nền biến mất. */

.bg-glow {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(100% 80% at 6% -8%, rgba(251, 60, 56, 0.32), transparent 66%),
    radial-gradient(95% 78% at 110% 4%, rgba(246, 111, 27, 0.28), transparent 66%),
    radial-gradient(100% 85% at 96% 106%, rgba(31, 135, 255, 0.22), transparent 68%),
    radial-gradient(90% 80% at 0% 104%, rgba(255, 97, 49, 0.20), transparent 70%);
  animation: glow-drift 26s ease-in-out infinite alternate;
  will-change: transform;
}
:root[data-theme="light"] .bg-glow {
  background:
    radial-gradient(100% 80% at 6% -8%, rgba(251, 60, 56, 0.20), transparent 68%),
    radial-gradient(95% 78% at 110% 4%, rgba(246, 111, 27, 0.18), transparent 68%),
    radial-gradient(100% 85% at 96% 106%, rgba(31, 135, 255, 0.13), transparent 70%),
    radial-gradient(90% 80% at 0% 104%, rgba(255, 97, 49, 0.12), transparent 72%);
}
@keyframes glow-drift {
  0%   { transform: scale(1) translate3d(0, 0, 0); }
  100% { transform: scale(1.09) translate3d(-2.5%, 2%, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .bg-glow { animation: none; }
}
