.space-bg {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #334155 100%);
    background-image:
        radial-gradient(white, rgba(255, 255, 255, .2) 2px, transparent 3px),
        radial-gradient(white, rgba(255, 255, 255, .15) 1px, transparent 2px),
        radial-gradient(white, rgba(255, 255, 255, .1) 2px, transparent 3px);
    background-size: 550px 550px, 350px 350px, 250px 250px;
    background-position: 0 0, 40 60, 130 270;
}

.number-card {
    cursor: grab;
    transition: transform 0.2s, box-shadow 0.2s;
}

.number-card:active {
    cursor: grabbing;
    transform: scale(1.1);
    z-index: 50;
}

.drop-zone {
    transition: all 0.3s;
}

.drop-zone.drag-over {
    background-color: rgba(56, 189, 248, 0.3);
    border-color: #38bdf8;
    transform: scale(1.05);
}

/* High-quality claymation background */
body::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('clay_background.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    z-index: -1;
}