.lamp {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    overflow: hidden;
    filter: blur(10px);
}

.lava {
    filter: url("#goo");
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 4;
    filter: blur(5px);
}

.blob {
    border-radius: 50%;
    background: #7B68EE;
    position: absolute;
}

.blob.top {
    border-radius: 50%;
    width: 150%;
    height: 1.2%;
    top: -1%;
    left: -25%;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, #7B68EE 70%);
}

.blob.bottom {
    border-radius: 50%;
    width: 150%;
    height: 1.2%;
    bottom: -1%;
    left: -25%;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.15) 0%, #7B68EE 70%);
}

/* Distribuzione migliorata con delay più spaziati e durate prime */
.blob:nth-child(1) {
    width: 200px;
    height: 200px;
    left: 35%;
    bottom: -15%;
    animation: wobble 28s ease-in-out alternate infinite, blob-one 307s ease-in-out infinite;
    animation-delay: -12s;
}

.blob:nth-child(2) {
    width: 330px;
    height: 330px;
    right: 24%;
    bottom: -65%;
    animation: wobble 40s ease-in-out alternate infinite, blob-two 479s ease-in-out infinite;
    animation-delay: -156s;
}

.blob:nth-child(3) {
    width: 150px;
    height: 150px;
    bottom: -15%;
    left: 34%;
    animation: wobble 52s ease-in-out alternate infinite, blob-three 367s ease-in-out infinite;
    animation-delay: -234s;
}

.blob:nth-child(4) {
    width: 235px;
    height: 235px;
    bottom: -19%;
    left: 30%;
    animation: wobble 76s ease-in-out alternate infinite, blob-four 293s ease-in-out infinite;
    animation-delay: -87s;
}

.blob:nth-child(5) {
    width: 55px;
    height: 55px;
    bottom: -25%;
    left: 34%;
    animation: wobble 88s ease-in-out alternate infinite, blob-five 661s ease-in-out infinite;
    animation-delay: -445s;
}

.blob:nth-child(6) {
    width: 35px;
    height: 35px;
    bottom: -25%;
    right: 34%;
    animation: wobble 100s ease-in-out alternate infinite, blob-six 337s ease-in-out infinite;
    animation-delay: -178s;
}

.blob:nth-child(7) {
    width: 435px;
    height: 435px;
    bottom: -85%;
    right: 40%;
    animation: wobble 112s ease-in-out alternate infinite, blob-seven 719s ease-in-out infinite;
    animation-delay: -523s;
}

.blob:nth-child(8) {
    width: 250px;
    height: 250px;
    left: 50%;
    bottom: -20%;
    animation: wobble 64s ease-in-out alternate infinite, blob-eight 421s ease-in-out infinite;
    animation-delay: -298s;
}

.blob:nth-child(9) {
    width: 180px;
    height: 180px;
    right: 5%;
    bottom: -30%;
    animation: wobble 40s ease-in-out alternate infinite, blob-nine 271s ease-in-out infinite;
    animation-delay: -45s;
}

.blob:nth-child(10) {
    width: 300px;
    height: 300px;
    left: 10%;
    bottom: -50%;
    animation: wobble 88s ease-in-out alternate infinite, blob-ten 541s ease-in-out infinite;
    animation-delay: -367s;
}

.blob:nth-child(11) {
    width: 70px;
    height: 70px;
    right: 15%;
    bottom: -10%;
    animation: wobble 28s ease-in-out alternate infinite, blob-eleven 211s ease-in-out infinite;
    animation-delay: -123s;
}

.blob:nth-child(12) {
    width: 120px;
    height: 120px;
    left: 60%;
    bottom: -40%;
    animation: wobble 70s ease-in-out alternate infinite, blob-twelve 449s ease-in-out infinite;
    animation-delay: -267s;
}

.blob:nth-child(13) {
    width: 280px;
    height: 280px;
    right: 30%;
    bottom: -70%;
    animation: wobble 58s ease-in-out alternate infinite, blob-thirteen 389s ease-in-out infinite;
    animation-delay: -198s;
}

.blob:nth-child(14) {
    width: 90px;
    height: 90px;
    left: 25%;
    bottom: -5%;
    animation: wobble 34s ease-in-out alternate infinite, blob-fourteen 241s ease-in-out infinite;
    animation-delay: -78s;
}

.blob:nth-child(15) {
    width: 400px;
    height: 400px;
    right: 50%;
    bottom: -90%;
    animation: wobble 82s ease-in-out alternate infinite, blob-fifteen 599s ease-in-out infinite;
    animation-delay: -412s;
}

.blob:nth-child(16) {
    width: 180px;
    height: 180px;
    left: 20%;
    bottom: -35%;
    animation: wobble 45s ease-in-out alternate infinite, blob-sixteen 283s ease-in-out infinite;
    animation-delay: -156s;
}

.blob:nth-child(17) {
    width: 270px;
    height: 270px;
    right: 10%;
    bottom: -50%;
    animation: wobble 55s ease-in-out alternate infinite, blob-seventeen 353s ease-in-out infinite;
    animation-delay: -289s;
}

.blob:nth-child(18) {
    width: 110px;
    height: 110px;
    left: 70%;
    bottom: -25%;
    animation: wobble 38s ease-in-out alternate infinite, blob-eighteen 199s ease-in-out infinite;
    animation-delay: -67s;
}

.blob:nth-child(19) {
    width: 350px;
    height: 350px;
    right: 45%;
    bottom: -75%;
    animation: wobble 65s ease-in-out alternate infinite, blob-nineteen 401s ease-in-out infinite;
    animation-delay: -334s;
}

.blob:nth-child(20) {
    width: 80px;
    height: 80px;
    left: 5%;
    bottom: -10%;
    animation: wobble 32s ease-in-out alternate infinite, blob-twenty 181s ease-in-out infinite;
    animation-delay: -98s;
}

.blob:nth-child(21) {
    width: 220px;
    height: 220px;
    right: 28%;
    bottom: -40%;
    animation: wobble 50s ease-in-out alternate infinite, blob-twenty-one 317s ease-in-out infinite;
    animation-delay: -223s;
}

.blob:nth-child(22) {
    width: 140px;
    height: 140px;
    left: 40%;
    bottom: -18%;
    animation: wobble 48s ease-in-out alternate infinite, blob-twenty-two 287s ease-in-out infinite;
    animation-delay: -143s;
}

.blob:nth-child(23) {
    width: 380px;
    height: 380px;
    right: 20%;
    bottom: -80%;
    animation: wobble 70s ease-in-out alternate infinite, blob-twenty-three 457s ease-in-out infinite;
    animation-delay: -378s;
}

.blob:nth-child(24) {
    width: 60px;
    height: 60px;
    left: 80%;
    bottom: -5%;
    animation: wobble 26s ease-in-out alternate infinite, blob-twenty-four 151s ease-in-out infinite;
    animation-delay: -89s;
}

.blob:nth-child(25) {
    width: 290px;
    height: 290px;
    right: 60%;
    bottom: -60%;
    animation: wobble 62s ease-in-out alternate infinite, blob-twenty-five 383s ease-in-out infinite;
    animation-delay: -267s;
}

.blob:nth-child(26) {
    width: 190px;
    height: 190px;
    left: 15%;
    bottom: -20%;
    animation: wobble 41s ease-in-out alternate infinite, blob-twenty-six 263s ease-in-out infinite;
    animation-delay: -156s;
}

.blob:nth-child(27) {
    width: 310px;
    height: 310px;
    right: 55%;
    bottom: -95%;
    animation: wobble 80s ease-in-out alternate infinite, blob-twenty-seven 503s ease-in-out infinite;
    animation-delay: -423s;
}

.blob:nth-child(28) {
    width: 100px;
    height: 100px;
    left: 90%;
    bottom: -15%;
    animation: wobble 35s ease-in-out alternate infinite, blob-twenty-eight 223s ease-in-out infinite;
    animation-delay: -112s;
}

.blob:nth-child(29) {
    width: 260px;
    height: 260px;
    left: 30%;
    bottom: -45%;
    animation: wobble 56s ease-in-out alternate infinite, blob-twenty-nine 343s ease-in-out infinite;
    animation-delay: -234s;
}

.blob:nth-child(30) {
    width: 450px;
    height: 450px;
    right: 35%;
    bottom: -88%;
    animation: wobble 75s ease-in-out alternate infinite, blob-thirty 487s ease-in-out infinite;
    animation-delay: -389s;
}

.blob:nth-child(31) {
    width: 165px;
    height: 165px;
    right: 18%;
    bottom: -28%;
    animation: wobble 33s ease-in-out alternate infinite, blob-thirty-one 277s ease-in-out infinite;
    animation-delay: -145s;
}

.blob:nth-child(32) {
    width: 425px;
    height: 425px;
    left: 8%;
    bottom: -92%;
    animation: wobble 67s ease-in-out alternate infinite, blob-thirty-two 521s ease-in-out infinite;
    animation-delay: -456s;
}

.blob:nth-child(33) {
    width: 95px;
    height: 95px;
    right: 45%;
    bottom: -8%;
    animation: wobble 29s ease-in-out alternate infinite, blob-thirty-three 193s ease-in-out infinite;
    animation-delay: -67s;
}

.blob:nth-child(34) {
    width: 315px;
    height: 315px;
    left: 65%;
    bottom: -78%;
    animation: wobble 85s ease-in-out alternate infinite, blob-thirty-four 431s ease-in-out infinite;
    animation-delay: -334s;
}

.blob:nth-child(35) {
    width: 125px;
    height: 125px;
    right: 8%;
    bottom: -35%;
    animation: wobble 44s ease-in-out alternate infinite, blob-thirty-five 313s ease-in-out infinite;
    animation-delay: -189s;
}

.blob:nth-child(36) {
    width: 85px;
    height: 85px;
    left: 48%;
    bottom: -12%;
    animation: wobble 37s ease-in-out alternate infinite, blob-thirty-six 227s ease-in-out infinite;
    animation-delay: -98s;
}

.blob:nth-child(37) {
    width: 195px;
    height: 195px;
    right: 62%;
    bottom: -45%;
    animation: wobble 51s ease-in-out alternate infinite, blob-thirty-seven 373s ease-in-out infinite;
    animation-delay: -278s;
}

.blob:nth-child(38) {
    width: 365px;
    height: 365px;
    left: 22%;
    bottom: -85%;
    animation: wobble 73s ease-in-out alternate infinite, blob-thirty-eight 491s ease-in-out infinite;
    animation-delay: -389s;
}

.blob:nth-child(39) {
    width: 75px;
    height: 75px;
    right: 25%;
    bottom: -18%;
    animation: wobble 31s ease-in-out alternate infinite, blob-thirty-nine 167s ease-in-out infinite;
    animation-delay: -78s;
}

.blob:nth-child(40) {
    width: 155px;
    height: 155px;
    left: 78%;
    bottom: -32%;
    animation: wobble 43s ease-in-out alternate infinite, blob-forty 293s ease-in-out infinite;
    animation-delay: -189s;
}

.blob:nth-child(41) {
    width: 245px;
    height: 245px;
    right: 12%;
    bottom: -58%;
    animation: wobble 59s ease-in-out alternate infinite, blob-forty-one 397s ease-in-out infinite;
    animation-delay: -298s;
}

.blob:nth-child(42) {
    width: 105px;
    height: 105px;
    left: 42%;
    bottom: -22%;
    animation: wobble 36s ease-in-out alternate infinite, blob-forty-two 239s ease-in-out infinite;
    animation-delay: -123s;
}

.blob:nth-child(43) {
    width: 385px;
    height: 385px;
    right: 38%;
    bottom: -88%;
    animation: wobble 78s ease-in-out alternate infinite, blob-forty-three 509s ease-in-out infinite;
    animation-delay: -445s;
}

.blob:nth-child(44) {
    width: 65px;
    height: 65px;
    left: 85%;
    bottom: -6%;
    animation: wobble 27s ease-in-out alternate infinite, blob-forty-four 157s ease-in-out infinite;
    animation-delay: -67s;
}

.blob:nth-child(45) {
    width: 275px;
    height: 275px;
    right: 48%;
    bottom: -68%;
    animation: wobble 63s ease-in-out alternate infinite, blob-forty-five 443s ease-in-out infinite;
    animation-delay: -334s;
}

.blob:nth-child(46) {
    width: 135px;
    height: 135px;
    left: 12%;
    bottom: -26%;
    animation: wobble 41s ease-in-out alternate infinite, blob-forty-six 269s ease-in-out infinite;
    animation-delay: -156s;
}

.blob:nth-child(47) {
    width: 325px;
    height: 325px;
    right: 22%;
    bottom: -75%;
    animation: wobble 69s ease-in-out alternate infinite, blob-forty-seven 467s ease-in-out infinite;
    animation-delay: -378s;
}

.blob:nth-child(48) {
    width: 115px;
    height: 115px;
    left: 58%;
    bottom: -16%;
    animation: wobble 39s ease-in-out alternate infinite, blob-forty-eight 251s ease-in-out infinite;
    animation-delay: -123s;
}

.blob:nth-child(49) {
    width: 205px;
    height: 205px;
    right: 58%;
    bottom: -42%;
    animation: wobble 47s ease-in-out alternate infinite, blob-forty-nine 331s ease-in-out infinite;
    animation-delay: -234s;
}

.blob:nth-child(50) {
    width: 145px;
    height: 145px;
    left: 28%;
    bottom: -38%;
    animation: wobble 42s ease-in-out alternate infinite, blob-fifty 277s ease-in-out infinite;
    animation-delay: -167s;
}

.blob:nth-child(51) {
    width: 355px;
    height: 355px;
    right: 32%;
    bottom: -82%;
    animation: wobble 74s ease-in-out alternate infinite, blob-fifty-one 499s ease-in-out infinite;
    animation-delay: -412s;
}

.blob:nth-child(52) {
    width: 85px;
    height: 85px;
    left: 72%;
    bottom: -14%;
    animation: wobble 35s ease-in-out alternate infinite, blob-fifty-two 187s ease-in-out infinite;
    animation-delay: -89s;
}

.blob:nth-child(53) {
    width: 225px;
    height: 225px;
    right: 15%;
    bottom: -52%;
    animation: wobble 54s ease-in-out alternate infinite, blob-fifty-three 359s ease-in-out infinite;
    animation-delay: -267s;
}

.blob:nth-child(54) {
    width: 175px;
    height: 175px;
    left: 38%;
    bottom: -29%;
    animation: wobble 46s ease-in-out alternate infinite, blob-fifty-four 307s ease-in-out infinite;
    animation-delay: -189s;
}

.blob:nth-child(55) {
    width: 295px;
    height: 295px;
    right: 42%;
    bottom: -72%;
    animation: wobble 66s ease-in-out alternate infinite, blob-fifty-five 439s ease-in-out infinite;
    animation-delay: -356s;
}

.blob:nth-child(56) {
    width: 55px;
    height: 55px;
    left: 82%;
    bottom: -4%;
    animation: wobble 25s ease-in-out alternate infinite, blob-fifty-six 149s ease-in-out infinite;
    animation-delay: -67s;
}

.blob:nth-child(57) {
    width: 185px;
    height: 185px;
    right: 68%;
    bottom: -48%;
    animation: wobble 49s ease-in-out alternate infinite, blob-fifty-seven 337s ease-in-out infinite;
    animation-delay: -234s;
}

.blob:nth-child(58) {
    width: 335px;
    height: 335px;
    left: 52%;
    bottom: -78%;
    animation: wobble 71s ease-in-out alternate infinite, blob-fifty-eight 479s ease-in-out infinite;
    animation-delay: -389s;
}

.blob:nth-child(59) {
    width: 125px;
    height: 125px;
    right: 52%;
    bottom: -24%;
    animation: wobble 38s ease-in-out alternate infinite, blob-fifty-nine 257s ease-in-out infinite;
    animation-delay: -134s;
}

.blob:nth-child(60) {
    width: 415px;
    height: 415px;
    left: 18%;
    bottom: -95%;
    animation: wobble 81s ease-in-out alternate infinite, blob-sixty 557s ease-in-out infinite;
    animation-delay: -467s;
}

/* Keyframes originali */
@keyframes blob-one {
    0%, 100% { bottom: -15%; }
    50% { bottom: 100%; }
}

@keyframes blob-two {
    0%, 100% { bottom: -65%; }
    50% { bottom: 100%; }
}

@keyframes blob-three {
    0%, 100% { bottom: -15%; }
    50% { bottom: 100%; }
}

@keyframes blob-four {
    0%, 100% { bottom: -19%; }
    50% { bottom: 100%; }
}

@keyframes blob-five {
    0%, 100% { bottom: -25%; }
    50% { bottom: 100%; }
}

@keyframes blob-six {
    0%, 100% { bottom: -25%; }
    50% { bottom: 100%; }
}

@keyframes blob-seven {
    0%, 100% { bottom: -85%; }
    50% { bottom: 100%; }
}

@keyframes blob-eight {
    0%, 100% { bottom: -20%; }
    50% { bottom: 100%; }
}

@keyframes blob-nine {
    0%, 100% { bottom: -30%; }
    50% { bottom: 100%; }
}

@keyframes blob-ten {
    0%, 100% { bottom: -50%; }
    50% { bottom: 100%; }
}

@keyframes blob-eleven {
    0%, 100% { bottom: -10%; }
    50% { bottom: 100%; }
}

@keyframes blob-twelve {
    0%, 100% { bottom: -40%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirteen {
    0%, 100% { bottom: -70%; }
    50% { bottom: 100%; }
}

@keyframes blob-fourteen {
    0%, 100% { bottom: -5%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifteen {
    0%, 100% { bottom: -90%; }
    50% { bottom: 100%; }
}

@keyframes blob-sixteen {
    0%, 100% { bottom: -35%; }
    50% { bottom: 100%; }
}

@keyframes blob-seventeen {
    0%, 100% { bottom: -50%; }
    50% { bottom: 100%; }
}

@keyframes blob-eighteen {
    0%, 100% { bottom: -25%; }
    50% { bottom: 100%; }
}

@keyframes blob-nineteen {
    0%, 100% { bottom: -75%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty {
    0%, 100% { bottom: -10%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-one {
    0%, 100% { bottom: -40%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-two {
    0%, 100% { bottom: -18%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-three {
    0%, 100% { bottom: -80%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-four {
    0%, 100% { bottom: -5%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-five {
    0%, 100% { bottom: -60%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-six {
    0%, 100% { bottom: -20%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-seven {
    0%, 100% { bottom: -95%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-eight {
    0%, 100% { bottom: -15%; }
    50% { bottom: 100%; }
}

@keyframes blob-twenty-nine {
    0%, 100% { bottom: -45%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty {
    0%, 100% { bottom: -88%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-one {
    0%, 100% { bottom: -28%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-two {
    0%, 100% { bottom: -92%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-three {
    0%, 100% { bottom: -8%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-four {
    0%, 100% { bottom: -78%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-five {
    0%, 100% { bottom: -35%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-six {
    0%, 100% { bottom: -12%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-seven {
    0%, 100% { bottom: -45%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-eight {
    0%, 100% { bottom: -85%; }
    50% { bottom: 100%; }
}

@keyframes blob-thirty-nine {
    0%, 100% { bottom: -18%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty {
    0%, 100% { bottom: -32%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-one {
    0%, 100% { bottom: -58%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-two {
    0%, 100% { bottom: -22%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-three {
    0%, 100% { bottom: -88%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-four {
    0%, 100% { bottom: -6%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-five {
    0%, 100% { bottom: -68%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-six {
    0%, 100% { bottom: -26%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-seven {
    0%, 100% { bottom: -75%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-eight {
    0%, 100% { bottom: -16%; }
    50% { bottom: 100%; }
}

@keyframes blob-forty-nine {
    0%, 100% { bottom: -42%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty {
    0%, 100% { bottom: -38%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-one {
    0%, 100% { bottom: -82%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-two {
    0%, 100% { bottom: -14%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-three {
    0%, 100% { bottom: -52%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-four {
    0%, 100% { bottom: -29%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-five {
    0%, 100% { bottom: -72%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-six {
    0%, 100% { bottom: -4%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-seven {
    0%, 100% { bottom: -48%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-eight {
    0%, 100% { bottom: -78%; }
    50% { bottom: 100%; }
}

@keyframes blob-fifty-nine {
    0%, 100% { bottom: -24%; }
    50% { bottom: 100%; }
}

@keyframes blob-sixty {
    0%, 100% { bottom: -95%; }
    50% { bottom: 100%; }
}

@keyframes wobble {
    50% {
        border-radius: 42% 58% 70% 30% / 45% 45% 55% 55%;
    }
    100% {
        border-radius: 38% 52% 75% 36% / 50% 40% 50% 60%;
    }
}