        body {
            background-color: #050505;
            min-height: 100vh;
            perspective: 1000px;
        }
        
        .glass-card {
            background: rgba(255, 255, 255, 0.03);
            backdrop-filter: blur(32px);
            -webkit-backdrop-filter: blur(32px);
            border: 1px solid rgba(255, 255, 255, 0.08);
            border-radius: 32px;
            box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255,255,255,0.1);
            position: relative;
            transform-style: preserve-3d;
        }
        
        .glass-card::before {
            content: '';
            position: absolute;
            top: 0; left: 0; width: 100%; height: 100%;
            border-radius: inherit;
            background: linear-gradient(135deg, rgba(255,255,255,0.05) 0%, transparent 100%);
            pointer-events: none;
            z-index: 0;
        }

        .glass-card > * {
            position: relative;
            z-index: 10;
            transform: translateZ(30px);
        }

        .input-field {
            background: rgba(0, 0, 0, 0.5);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 0.75rem;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .input-field:focus {
            background: rgba(0, 0, 0, 0.7);
            border-color: rgba(239, 68, 68, 0.5);
            box-shadow: 0 0 20px rgba(239, 68, 68, 0.15);
            outline: none;
        }

        /* Floating label styling */
        .floating-label-group {
            position: relative;
        }
        
        .floating-label {
            position: absolute;
            left: 3.5rem;
            top: 1.15rem;
            color: rgba(255, 255, 255, 0.4);
            font-size: 10px;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.2em;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            pointer-events: none;
            transform-origin: left top;
        }

        .input-field:focus ~ .floating-label,
        .input-field:not(:placeholder-shown) ~ .floating-label {
            transform: translateY(-0.95rem) scale(0.85);
            color: rgba(239, 68, 68, 0.9);
            left: 1.5rem;
        }
        
        .input-field::placeholder {
            color: transparent;
        }
        
        .particle {
            position: absolute;
            border-radius: 50%;
            background: white;
            pointer-events: none;
        }

        .icon-transition {
            transition: color 0.3s ease;
        }
        .input-field:focus ~ .icon-transition {
            color: rgba(239, 68, 68, 0.9);
        }

        /* Movie Poster Marquee */
        @keyframes scrollUp {
            0% { transform: translateY(0); }
            100% { transform: translateY(-50%); }
        }

        @keyframes scrollDown {
            0% { transform: translateY(-50%); }
            100% { transform: translateY(0); }
        }

        .mask-radial {
            mask-image: radial-gradient(circle at center, black 20%, transparent 100%);
            -webkit-mask-image: radial-gradient(circle at center, black 20%, transparent 100%);
        }
        
        .poster-col {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            height: max-content;
        }

        .poster-col.up {
            animation: scrollUp 60s linear infinite;
        }

        .poster-col.down {
            animation: scrollDown 60s linear infinite;
        }

        .poster {
            width: 160px;
            height: 240px;
            border-radius: 1rem;
            background: linear-gradient(135deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.03) 100%);
            box-shadow: inset 0 0 0 1px rgba(255,255,255,0.1), 0 10px 30px -10px rgba(0,0,0,0.8);
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
            backdrop-filter: blur(4px);
        }

        .poster-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 1rem;
        }

        .poster::after {
            content: '';
            position: absolute;
            top: 0; left: 0; right: 0; bottom: 0;
            background: linear-gradient(to bottom, transparent 50%, rgba(0,0,0,0.5) 100%);
            pointer-events: none;
        }
        
        /* Custom scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #0f1115;
        }
        ::-webkit-scrollbar-thumb {
            background: #2f3136;
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb:hover {
            background: #4f545c;
        }

        @keyframes shimmer {
            100% {
                transform: translateX(100%);
            }
        }
