﻿.auth-blobs {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

html,
body {
    min-height: 100%;
}

body {
    position: relative;
    overflow-x: hidden;
}

.account-pages {
    position: relative;
}

.account-pages > .container {
    position: relative;
    z-index: 2;
}

.blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    opacity: 0.6;
    pointer-events: none;
}

.blob-1 {
    width: 600px;
    height: 600px;
    background: #1e293b;
    top: -200px;
    left: -200px;
    animation: drift-1 70s ease-in-out infinite;
}

.blob-2 {
    width: 500px;
    height: 500px;
    background: #334155;
    bottom: -200px;
    right: -200px;
    animation: drift-2 90s ease-in-out infinite;
}

.blob-3 {
    width: 400px;
    height: 400px;
    background: #475569;
    top: 50%;
    left: 50%;
    animation: drift-3 110s ease-in-out infinite;
}

[data-bs-theme="dark"] .blob {
    opacity: 0.4;
}

[data-bs-theme="dark"] .blob-1 {
    background: #f1b44c;
}

[data-bs-theme="dark"] .blob-2 {
    background: #e09835;
}

[data-bs-theme="dark"] .blob-3 {
    background: #fcd47a;
}

@media (max-width: 992px) {
    .blob {
        filter: blur(72px);
    }

    .blob-1 {
        width: 480px;
        height: 480px;
        top: -170px;
        left: -170px;
    }

    .blob-2 {
        width: 400px;
        height: 400px;
        bottom: -160px;
        right: -160px;
    }

    .blob-3 {
        width: 320px;
        height: 320px;
    }
}

@media (max-width: 768px) {
    .blob {
        filter: blur(58px);
    }

    .blob-1 {
        width: 390px;
        height: 390px;
        top: -150px;
        left: -150px;
    }

    .blob-2 {
        width: 325px;
        height: 325px;
        bottom: -135px;
        right: -135px;
    }

    .blob-3 {
        width: 260px;
        height: 260px;
    }
}

@media (max-width: 576px) {
    .blob {
        filter: blur(46px);
    }

    .blob-1 {
        width: 330px;
        height: 330px;
        top: -125px;
        left: -125px;
    }

    .blob-2 {
        width: 275px;
        height: 275px;
        bottom: -115px;
        right: -115px;
    }

    .blob-3 {
        width: 220px;
        height: 220px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .blob {
        animation: none !important;
    }
}

@keyframes drift-1 {
    0% { transform: translate(0, 0); }
    20% { transform: translate(12vw, 18vh); }
    40% { transform: translate(20vw, 8vh); }
    60% { transform: translate(8vw, 28vh); }
    80% { transform: translate(18vw, 15vh); }
    100% { transform: translate(0, 0); }
}

@keyframes drift-2 {
    0% { transform: translate(0, 0); }
    20% { transform: translate(-14vw, -20vh); }
    40% { transform: translate(-8vw, -35vh); }
    60% { transform: translate(-22vw, -18vh); }
    80% { transform: translate(-10vw, -28vh); }
    100% { transform: translate(0, 0); }
}

@keyframes drift-3 {
    0% { transform: translate(-50%, -50%); }
    20% { transform: translate(calc(-50% - 15vw), calc(-50% + 20vh)); }
    40% { transform: translate(calc(-50% + 10vw), calc(-50% + 10vh)); }
    60% { transform: translate(calc(-50% + 18vw), calc(-50% - 15vh)); }
    80% { transform: translate(calc(-50% - 8vw), calc(-50% - 25vh)); }
    100% { transform: translate(-50%, -50%); }
}

