/* LOGIN CARD */
        .login-card {
            background: rgba(255, 255, 255, 0.03);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.1);
            padding: 3rem;
            border-radius: 20px;
            width: 100%;
            max-width: 420px;
            box-shadow: 0 15px 35px rgba(0,0,0,0.3);
            text-align: center;
            position: relative;
            z-index: 10;
        }

        .login-header { margin-bottom: 2rem; }
        .logo { font-size: 3rem; margin-bottom: 1rem; display: block; }
        .login-header h1 { 
            font-size: 2rem; font-weight: 800; margin: 0;
            background: linear-gradient(135deg, #ffffff, #667eea);
            -webkit-background-clip: text; -webkit-text-fill-color: transparent;
        }
        .login-header p { color: rgba(255,255,255,0.6); font-size: 0.95rem; margin-top: 5px; }

        /* FORM */
        .form-group { margin-bottom: 1.5rem; position: relative; }
        
        .input-icon {
            position: absolute; top: 50%; left: 15px; transform: translateY(-50%);
            color: rgba(255,255,255,0.4); font-size: 1.1rem;
        }

        .form-control {
            width: 100%; padding: 14px 14px 14px 45px;
            background: rgba(0,0,0,0.3);
            border: 1px solid rgba(255,255,255,0.1);
            border-radius: 10px;
            color: #fff; font-size: 1rem;
            transition: all 0.3s;
        }
        .form-control:focus { outline: none; border-color: #667eea; background: rgba(0,0,0,0.5); }
        .form-control::placeholder { color: rgba(255,255,255,0.3); }

        /* BUTTON */
        .btn-login {
            width: 100%; padding: 14px;
            background: linear-gradient(135deg, #667eea, #764ba2);
            color: white; border: none; border-radius: 10px;
            font-weight: 700; font-size: 1rem;
            cursor: pointer; transition: 0.3s;
            box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
        }
        .btn-login:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(102, 126, 234, 0.5); }

        /* LINKS */
        .login-footer-links { margin-top: 1.5rem; font-size: 0.9rem; color: rgba(255,255,255,0.5); }
        .login-footer-links a { color: #667eea; text-decoration: none; font-weight: 600; margin: 0 5px; transition: 0.2s; }
        .login-footer-links a:hover { color: #fff; text-decoration: underline; }

        .back-link { margin-top: 1.5rem; display: inline-block; }
        .back-link a { color: rgba(255,255,255,0.4); text-decoration: none; font-size: 0.85rem; }
        .back-link a:hover { color: #fff; }

        /* ALERT */
        .error-message {
            background: rgba(239, 68, 68, 0.1);
            border: 1px solid rgba(239, 68, 68, 0.3);
            color: #f87171;
            padding: 12px;
            border-radius: 8px;
            margin-bottom: 1.5rem;
            font-size: 0.9rem;
            line-height: 1.5;
        }
        .verify-link { color: #fff !important; text-decoration: underline; font-weight: bold; }
