.glass-effect {
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.gradient-bg {
    background: linear-gradient(to bottom, #0f2027 0%, #203a43 50%, #2c5364 100%);
}

.input-glow:focus {
    box-shadow: 0 0 15px rgba(99, 102, 241, 0.4);
}

.button-hover:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(239, 68, 68, 0.4);
}

.floating-shapes {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}

.shape {
    position: absolute;
    opacity: 0.1;
    animation: float 6s ease-in-out infinite;
    background-color: #ffffff;
}

.shape:nth-child(1) {
    top: 10%;
    left: 10%;
    animation-delay: 0s;
    background-color: #6366f1;
}

.shape:nth-child(2) {
    top: 20%;
    right: 10%;
    animation-delay: 2s;
    background-color: #10b981;
}

.shape:nth-child(3) {
    bottom: 10%;
    left: 15%;
    animation-delay: 4s;
    background-color: #ef4444;
}

.shape:nth-child(4) {
    bottom: 20%;
    right: 20%;
    animation-delay: 1s;
    background-color: #3b82f6;
}

.preloader-hidden {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
}