body { background-color: #0b0e14; color: #ffffff; font-family: sans-serif; overflow: hidden; }
.glow { text-shadow: 0 0 20px rgba(34, 197, 94, 0.8); }
.coin-glow { box-shadow: 0 0 50px rgba(38, 161, 123, 0.3), inset 0 0 30px rgba(0, 0, 0, 0.8); }
* { user-select: none; -webkit-tap-highlight-color: transparent; }
@keyframes spin { 100% { transform: rotate(360deg); } }
.spin-slow { animation: spin 20s linear infinite; }

/* 3D Анімація Діаманта */
@keyframes flip-3d {
    0% { transform: perspective(400px) rotateY(0deg); }
    100% { transform: perspective(400px) rotateY(360deg); }
}
.spin-3d { animation: flip-3d 3s linear infinite; display: inline-block; }

.floating-num { position: fixed; color: #4ade80; font-weight: 900; font-size: 1.25rem; pointer-events: none; z-index: 100; text-shadow: 0 0 10px rgba(34, 197, 94, 0.9); animation: float-up 1s ease-out forwards; }
@keyframes float-up { 0% { opacity: 1; transform: translateY(0) scale(1); } 100% { opacity: 0; transform: translateY(-80px) scale(1.3); } }
input:focus { outline: none; border-color: #22c55e; }
.input-error { border-color: #ef4444 !important; }
/* СТИЛІ КОЛЕСА ФОРТУНИ */
.wheel-container { position: relative; width: 280px; height: 280px; margin: 0 auto; }
.wheel { width: 100%; height: 100%; border-radius: 50%; background: conic-gradient( #fbbf24 0deg 30deg, #8b5cf6 30deg 60deg, #10b981 60deg 90deg, #2563eb 90deg 120deg, #e11d48 120deg 150deg, #0d9488 150deg 180deg, #4f46e5 180deg 210deg, #ea580c 210deg 240deg, #15803d 240deg 270deg, #eab308 270deg 300deg, #7e22ce 300deg 330deg, #db2777 330deg 360deg ); border: 8px solid #1f2937; box-shadow: 0 0 30px rgba(0,0,0,0.9), inset 0 0 20px rgba(0,0,0,0.6); transition: transform 4s cubic-bezier(0.17, 0.67, 0.12, 0.99); position: relative; }
.wheel::after { content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 50px; height: 50px; background-color: #111827; border-radius: 50%; border: 4px solid #374151; z-index: 5; box-shadow: inset 0 0 10px rgba(0,0,0,0.8); }
.wheel-pointer { position: absolute; top: -18px; left: 50%; transform: translateX(-50%); width: 0; height: 0; border-left: 18px solid transparent; border-right: 18px solid transparent; border-top: 36px solid #ffffff; z-index: 10; filter: drop-shadow(0 5px 8px rgba(0,0,0,0.8)); }
.slice-text { position: absolute; top: 50%; left: 50%; transform-origin: 0 50%; width: 120px; text-align: right; padding-right: 15px; font-weight: 800; font-size: 14px; color: white; text-shadow: 2px 2px 4px rgba(0,0,0,1); z-index: 2; margin-top: -10px; }
.custom-scroll::-webkit-scrollbar { width: 4px; }
.custom-scroll::-webkit-scrollbar-thumb { background: #374151; border-radius: 4px; }