*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background: radial-gradient(circle at 50% 50%, #151515 0%, #050505 100%);
    color:white;
    min-height:100vh;
    display:flex;
    flex-direction: column;
    overflow-x:hidden;
    overflow-y:auto;
    position:relative;
    padding: 2rem 0;
}

body::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
    background-size: 30px 30px;
    z-index: 0;
    pointer-events: none;
}

.background-blur{
    position:absolute;
    inset:0;
    overflow:hidden;
    z-index: 0;
}

.circle{
    position:absolute;
    border-radius:50%;
    filter:blur(140px);
    opacity:0.45;
    animation: float 10s infinite alternate ease-in-out;
}

.circle1{
    width:400px;
    height:400px;
    background:#f2cf63;
    top:-100px;
    left:-100px;
}

.circle2{
    width:450px;
    height:450px;
    background:#d4af37;
    right:-150px;
    bottom:-150px;
    animation-delay: -5s;
}

@keyframes float {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(40px, 30px) scale(1.1); }
}

.register-card{
    position: relative;
    z-index: 10;
    width:450px;
    max-width:95%;
    margin: auto;
    background:rgba(18,18,18,.7);
    backdrop-filter:blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border:1px solid rgba(212,175,55,.2);
    border-top:1px solid rgba(212,175,55,.4);
    border-left:1px solid rgba(212,175,55,.4);
    border-radius:22px;
    padding:45px;
    box-shadow: 
        0 20px 50px rgba(0, 0, 0, 0.5),
        0 0 40px rgba(212,175,55,.1);
}

.logo{

    text-align:center;

    margin-bottom:35px;
}

.logo h2{

    color:#d4af37;

    font-weight:700;

    letter-spacing:2px;
}

.logo p{

    color:#aaa;

    margin-top:8px;
}

.form-label{

    color:#ddd;

    margin-bottom:8px;
}

.input-group-text{

    background:#1d1d1d;

    color:#d4af37;

    border:1px solid #333;
}

.form-control{

    background:#151515 !important;

    color:white !important;

    border:1px solid #333 !important;
}

.form-control::placeholder {
    color: #888 !important;
}

.form-control:focus{

    background:#151515 !important;

    color:white !important;

    border-color:#d4af37 !important;

    box-shadow:0 0 0 .15rem rgba(212,175,55,.25) !important;
}

.text-muted {
    color: #aaa !important;
}

.register-btn{

    background:linear-gradient(90deg,#d4af37,#f2cf63);

    border:none;

    color:#111;

    font-weight:600;

    padding:14px;

    border-radius:12px;

    transition:.3s;
}

.register-btn:hover{

    transform:translateY(-2px);

    box-shadow:0 10px 30px rgba(212,175,55,.35);
}

.bottom-text{

    text-align:center;

    margin-top:25px;

    color:#bbb;
}

.bottom-text a{

    color:#d4af37;

    text-decoration:none;

    font-weight:600;
}

.bottom-text a:hover{

    color:white;
}

@media(max-width:576px){

    .register-card{

        padding:30px 22px;
    }
}