.sand-world { position: fixed; inset: 0; overflow: hidden; z-index: 0; pointer-events: none; background: radial-gradient(circle at 50% 18%, rgba(42,46,91,0.7) 0%, transparent 55%), radial-gradient(circle at 70% 38%, rgba(30,33,80,0.6) 0%, transparent 55%), linear-gradient(to bottom, #060d1a 0%, #080f20 50%, #0a1228 100%); }
.sky-glow { position: absolute; top: 35%; left: 50%; width: 900px; height: 500px; transform: translateX(-50%); background: radial-gradient(circle, rgba(255,140,70,0.2) 0%, rgba(220,90,50,0.1) 35%, transparent 70%); filter: blur(100px); animation: skyMove 14s ease-in-out infinite alternate; }
@keyframes skyMove { 0% { opacity: .4; transform: translateX(-50%) scale(1); } 100% { opacity: .8; transform: translateX(-50%) scale(1.12); } }
.dune { position: absolute; width: 220%; height: 220%; bottom: -40%; left: -60%; filter: blur(80px); }
.dune1 { background: radial-gradient(ellipse at 50% 70%, rgba(255,150,80,.28) 0%, rgba(200,100,55,.18) 35%, transparent 70%); animation: duneMove1 32s ease-in-out infinite alternate; }
.dune2 { background: radial-gradient(ellipse at 62% 72%, rgba(200,110,65,.22) 0%, transparent 70%); animation: duneMove2 44s ease-in-out infinite alternate; opacity: .65; }
.dune3 { background: radial-gradient(ellipse at 38% 76%, rgba(160,80,45,.20) 0%, transparent 70%); animation: duneMove3 28s ease-in-out infinite alternate; opacity: .55; }
@keyframes duneMove1 { 0% { transform: translateX(-2%) translateY(0); } 100% { transform: translateX(2%) translateY(-2%); } }
@keyframes duneMove2 { 0% { transform: translateX(1%) translateY(1%); } 100% { transform: translateX(-2%) translateY(-1%); } }
@keyframes duneMove3 { 0% { transform: translateX(-1%) translateY(0); } 100% { transform: translateX(1%) translateY(-1%); } }
body.theme-night .sand-world { background: linear-gradient(to bottom, #03060e 0%, #060a18 50%, #040812 100%); }
body.theme-night .sky-glow { background: radial-gradient(circle, rgba(100,100,255,.12) 0%, transparent 70%); }
